[slf4j-dev] [Bug 71] New: JCL loggers are Serializable, jcl104-over-slf4j logger is not

bugzilla-daemon at pixie.qos.ch bugzilla-daemon at pixie.qos.ch
Thu Feb 7 12:25:10 CET 2008


http://bugzilla.slf4j.org/show_bug.cgi?id=71

           Summary: JCL loggers are Serializable, jcl104-over-slf4j logger
                    is not
           Product: SLF4J
           Version: 1.4.x
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: major
          Priority: P1
         Component: Implementations
        AssignedTo: dev at slf4j.org
        ReportedBy: manfred.geiler at gmail.com


SLF4JLocationAwareLog (in jcl104-over-slf4j) should implement Serializable.

Reason:
Some (third-party) implementations use non-static JCL loggers in serializable
classes. This works (at least with Log4J) because JCLs Log4JLogger implements
Serializable and has a transient(!) reference to the actual Log4J Logger, which
it creates lazily on demand.

Of course only adding the Serializable marker interface to
SLF4JLocationAwareLog is not enough. Also the non transient reference to the
LocationAwareLogger (the Log4jLoggerAdapter in that case) must be serializable
then. This leads to the problem that Log4jLoggerAdapter must not have a non
transient reference to the actual Log4J Logger, but also create it lazily.

Don't know how difficult it is to fix that.
But as I said before, this issue can severily break third-party libs
(NotSerializableException) when JCL is replaced by jcl104-over-slf4j.

Regards,
Manfred


-- 
Configure bugmail: http://bugzilla.slf4j.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the slf4j-dev mailing list