You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by bu...@apache.org on 2009/08/18 17:44:47 UTC

DO NOT REPLY [Bug 47703] New: Object rendering ought to be done outside synchronization

https://issues.apache.org/bugzilla/show_bug.cgi?id=47703

           Summary: Object rendering ought to be done outside
                    synchronization
           Product: Log4j
           Version: unspecified
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Appender
        AssignedTo: log4j-dev@logging.apache.org
        ReportedBy: tboemker@elynx.com


--- Comment #0 from Tim Boemker <tb...@elynx.com> 2009-08-18 08:44:44 PDT ---
I think that log4j assumes that ObjectRenderer.doRender completes quickly and
cannot block.  If so, then the assumption should be stated.  (Even if so,
perhaps the implementation could be changed to eliminate the assumption.)

Here is a partial stack trace showing how that assumption--if, indeed, it is an
assumption--might inadvertently be violated:


        at org.hibernate.loader.Loader.loadCollection(Loader.java:1994)
        at
org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:36)
        at
org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:565)
        at
org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:60)
        at
org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1716)
        at
org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344)
        at
org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86)
        at
org.hibernate.collection.PersistentSet.toString(PersistentSet.java:309)
        at java.util.Formatter$FormatSpecifier.printString(Formatter.java:2790)
        at java.util.Formatter$FormatSpecifier.print(Formatter.java:2673)
        at java.util.Formatter.format(Formatter.java:2430)
        at java.util.Formatter.format(Formatter.java:2364)
        at java.lang.String.format(String.java:2558)
        at com.eLynx.Context.SessionContext.render(SessionContext.java:1062)
        at com.eLynx.logging.Renderer.doRender(Renderer.java:32)
        at org.apache.log4j.or.RendererMap.findAndRender(RendererMap.java:79)
        at
org.apache.log4j.spi.LoggingEvent.getRenderedMessage(LoggingEvent.java:297)
        at
org.apache.log4j.helpers.PatternParser$BasicPatternConverter.convert(PatternParser.java:403)
        at
org.apache.log4j.helpers.PatternConverter.format(PatternConverter.java:64)
        at org.apache.log4j.PatternLayout.format(PatternLayout.java:503)
        at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:301)
        at
org.apache.log4j.DailyRollingFileAppender.subAppend(DailyRollingFileAppender.java:358)
        at org.apache.log4j.WriterAppender.append(WriterAppender.java:159)
        at
org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
        at
org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)
        at org.apache.log4j.Category.callAppenders(Category.java:203)

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org