Hi Armin, I am using "org.apache.ojb.broker.util.logging.PoorMansLoggerImpl" for development.
I have overridden toString() in the object to use BeanUtils.describe() in the apache commons BeanUtils package. Perhaps BeanUtils attempts to synchronize the object when it's already locked by the safeDebug() method. Regards, Julian -----Original Message----- From: Armin Waibel [mailto:[EMAIL PROTECTED] Sent: 01 August 2003 02:04 To: OJB Users List Subject: Re: OJB hanging Hi Julian, > "logger.safeDebug("executeInsert",obj);" is called (line 193). > I can only assume that the safe debug is causing a thread deadlock hmm, really strange! On the given persistent object obj.toString() was called, could this be the problem? Which logging implementation in OJB.properties do you use? regards, Armin ----- Original Message ----- From: "Julian Exenberger" <[EMAIL PROTECTED]> To: "OJB Users List" <[EMAIL PROTECTED]>; "Armin Waibel" <[EMAIL PROTECTED]> Sent: Thursday, July 31, 2003 1:37 PM Subject: RE: OJB hanging Hi Armin, I have actually been analyzing it deeper it occurs in org.apache.ojb.broker.accesslayer.JdbcAccessImpl class in the executeInsert() method when the line "logger.safeDebug("executeInsert",obj);" is called (line 193). I can only assume that the safe debug is causing a thread deadlock (it event makes the eclipse debugger go moggy). I turned my logging back to info and not it works fine. For background info I am using OJB from within Tomcat and the sample code is try { if ((db == null) || (!(db.isInTransaction()))|| (delegate = null) ) startOJB(); if (delegate == null) db.store(object); else delegate.add(object); } catch (Exception e) { logger.error(e.getMessage()); throw createExceptionWithMessageHolder(e); } finally { if ((db != null)&&(!db.isInTransaction())) releaseOJB(); } Let me know if you need more info Regards, Julian -----Original Message----- From: Armin Waibel [mailto:[EMAIL PROTECTED] Sent: 31 July 2003 01:29 To: OJB Users List Subject: Re: OJB hanging Hi Julian, can you post more info? do you use OJB standalone?- used environment? do you tried run your test code in standalone OJB? code snip of your test code. regards, Armin ----- Original Message ----- From: "Julian Exenberger" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, July 30, 2003 6:23 PM Subject: OJB hanging Hi, I am doing a 1:m insert of an object. When I step through the code using the debugger it works fine, however if I just let it run normally OJB hangs This is how my repository.xml looks <class-descriptor class="com.clic.data.RankingTable" table="ranking_table"> <field-descriptor column="ranking_id" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="rankingId" primarykey="true"/> <field-descriptor column="esd_id" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="esdId" nullable="false"/> <field-descriptor column="ranking_method_code" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="rankingMethodCode"/> <field-descriptor column="number_of_events" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="numberOfEvents" nullable="false"/> <field-descriptor column="buffer_allocation_method" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="bufferAllocationMethod" nullable="false"/> <field-descriptor column="buffer_heap_start_number" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="bufferHeapStartNumber"/> <field-descriptor column="next_buffer_heap_number" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="nextBufferHeapNumber"/> <field-descriptor column="ranked_update_number" jdbc-type="INTEGER" name="rankedUpdateNumber"/> <field-descriptor column="created_by_userid" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="createdByUserid" nullable="false"/> <field-descriptor column="date_time_created" conversion="com.mweb.persistence.spi.DateImpl2TimestampConversion" jdbc-type="TIMESTAMP" name="dateTimeCreated" nullable="false"/> <field-descriptor column="date_time_last_changed" conversion="com.mweb.persistence.spi.DateImpl2TimestampConversion" jdbc-type="TIMESTAMP" name="dateTimeLastChanged"/> <field-descriptor column="last_changed_by_userid" conversion="org.apache.ojb.broker.accesslayer.conversions.BlankString2Nu llFieldConversion" jdbc-type="VARCHAR" length="20" name="lastChangedByUserid"/> <!-- reference to linked event structure definition --> <reference-descriptor class-ref="com.clic.data.EventStructureDefinition" name="linkedEsd" auto-update="false" auto-retrieve="false" proxy="true" > <foreignkey field-ref="esdId"/> </reference-descriptor> <collection-descriptor auto-delete="true" auto-retrieve="true" auto-update="true" element-class-ref="com.clic.data.RankingCategory" name="rankingCategories" orderby="rankOrderUsed" proxy="true"> <inverse-foreignkey field-ref="rankCategoryCode"/> </collection-descriptor> </class-descriptor> For reference I am using RC4 Could anybody tell me what is wrong thanks Julian Exenberger ------------------------------------------------------------- J2EE Developer Tel : +27 11 340 7210 Fax : +27 11 340 7342 Cell: +27 82 493 3352 E-Mail : [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ------------------------------------------------------------- M-WEB BUSINESS SOLUTIONS Go shopping @ http://shopping.mweb.co.za <http://shopping.mweb.co.za/> Get your business online @ http://business.mweb.com <http://business.mweb.com/> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]