Hi,
we have a production application on system Windows Server that using :
WebSphere 6.0
OJB version 1.0.3
the application generate a lot of dump file in the system witch cause a
system crash .. in the log i find this :
1,095,332,808 [24] 2
org/apache/ojb/broker/metadata/fieldaccess/AnonymousPersistentField
0x11841c40
1,095,332,784 [72] 2 org/apache/ojb/broker/util/ReferenceMap 0x1664db30
 1,095,332,664 [262,160] 23,114 array of
org/apache/ojb/broker/util/ReferenceMap$Entry 0x71b48528
  38,548,064 [32] 4 org/apache/ojb/broker/util/ReferenceMap$Entry
0x60e5c2f0
   38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x229d1fd0
    38,543,048 [32] 2 org/apache/ojb/broker/util/ReferenceMap$WeakRef
0x229d1ff0
     38,543,016 [40] 4
com/convergence/utile/habilitations/MotdePasse 0x229d20b8
      38,542,032 [120] 14
com/convergence/utile/habilitations/Utilisateur 0x2056fde0
       38,146,872 [64] 6
com/convergence/utile/habilitations/Profil 0x1e806358
       390,528 [24] 1
org/apache/ojb/broker/util/collections/ManageableArrayList 0x29d00308
       3,032 [24] 1
org/apache/ojb/broker/util/collections/ManageableArrayList 0x254d0d38
       880 [128] 9 java/util/GregorianCalendar 0x205702b0
       128 [40] 4 com/convergence/utile/organisation/Entite
0x21cca310
       88 [32] 1 java/lang/String 0x2056ffa0
       80 [24] 1
org/apache/ojb/broker/util/collections/ManageableArrayList 0x2b1e6ee8
       80 [24] 1 java/util/ArrayList 0x2056fdc8
       64 [32] 1 java/lang/String 0x2056fed8
       56 [32] 1 java/lang/String 0x2056ff10
       56 [32] 1 java/lang/String 0x2056ff48
       48 [32] 1 java/lang/String 0x2056fe98
       16 [16] 0 java/lang/Boolean 0x101eccb0
       16 [16] 0 java/lang/Boolean 0x101eccc0
      880 [128] 9 java/util/GregorianCalendar 0x229d2430
      64 [32] 1 java/lang/String 0x229d2120
      16 [16] 0 java/lang/Boolean 0x101eccc0
     48 [32] 1 java/lang/ref/ReferenceQueue 0x1664db10
    24 [24] 0 java/lang/Long 0x229d20e8
    1,095,332,784 [72] 2 org/apache/ojb/broker/util/ReferenceMap
0x1664db30
   4,904 [32] 2 org/apache/ojb/broker/util/ReferenceMap$WeakRef
0x60e5c310
   24 [24] 0 java/lang/Long 0x60e5c360
   1,095,332,784 [72] 2 org/apache/ojb/broker/util/ReferenceMap
0x1664db30
  38,547,920 [32] 4 org/apache/ojb/broker/util/ReferenceMap$Entry
0x659aea38
  38,543,280 [32] 4 org/apache/ojb/broker/util/ReferenceMap$Entry
0x19f95b00
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x65d52218
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x675fd680
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x4a016de8
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x1b3b09c0
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x4384a5e8
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x270b7740
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x1c9d4ed0
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x505d07a0
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x3b8f8f10
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x6916b088
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x3d6fdbd0
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x14a30960
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x5d3cd108
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x13937968
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x1aa7b5f8
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x118db108
  38,543,104 [32] 3 org/apache/ojb/broker/util/ReferenceMap$Entry
0x58115890
There are 23,094 more children


so, some object like  'org/apache/ojb/broker/util/ReferenceMap$Entry',
'org/apache/ojb/broker/util/ReferenceMap' ,
org/apache/ojb/broker/metadata/fieldaccess/AnonymousPersistentField objects
are consuming
more than 1 GB (1,095,332,664 bytes) on heap.


I need an explanation of this , please. and solution or test to do .

thx in advance.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE descriptor-repository PUBLIC "-//Apache Software Foundation//DTD OJB Repository//EN"
       "repository.dtd">
<descriptor-repository version="1.0" isolation-level="read-uncommitted" proxy-prefetching-limit="50">
<jdbc-connection-descriptor jcd-alias="default" default-connection="true" platform="Db2" jdbc-level="2.0" driver="com.p6spy.engine.spy.P6SpyDriver" protocol="jdbc" subprotocol="db2" dbalias="//localhost/DEV" username="db2admin" password="db2admin">
		<sequence-manager className="org.apache.ojb.broker.util.sequence.SequenceManagerHighLowImpl">
			<attribute attribute-name="grabSize" attribute-value="5"/>
			<attribute attribute-name="globalSequenceId" attribute-value="true"/>
			<attribute attribute-name="globalSequenceStart" attribute-value="10000"/>
		</sequence-manager>
	</jdbc-connection-descriptor>
	

	<!-- OJB INTERNAL MAPPINGS START HERE, DO NOT EDIT -->
	<!-- ************************************************************* -->
	<!-- The OJB HIGH/LOW SequenceManagerTable -->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.broker.util.sequence.HighLowSequence" table="OJB_HL_SEQ">
		<object-cache class="org.apache.ojb.broker.cache.ObjectCacheEmptyImpl"/>
		<field-descriptor name="tableName" column="TABLENAME" jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor name="fieldName" column="FIELDNAME" jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor name="maxKey" column="MAX_KEY" jdbc-type="BIGINT"/>
		<field-descriptor name="grabSize" column="GRAB_SIZE" jdbc-type="INTEGER"/>
		<field-descriptor name="version" column="VERSION" jdbc-type="INTEGER" locking="true"/>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB NAMED ROOTS TABLE, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.NamedRootsMap$NamedEntry" table="OJB_NRM">
		<field-descriptor name="name" column="NAME" jdbc-type="VARCHAR" primarykey="true"/>
		<field-descriptor name="oid" column="OID_" jdbc-type="LONGVARBINARY"/>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DLIST IMPLEMENTATION, DO NOT EDIT-->
	<!-- alternative implementation of DList -->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DListImpl" table="OJB_DLIST">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<collection-descriptor name="elements" element-class-ref="org.apache.ojb.odmg.collections.DListEntry" auto-retrieve="true" auto-update="none" auto-delete="none">
			<inverse-foreignkey field-ref="dlistId"/>
		</collection-descriptor>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DLIST ENTRY IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DListEntry" table="OJB_DLIST_ENTRIES">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<field-descriptor name="dlistId" column="DLIST_ID" jdbc-type="INTEGER"/>
		<field-descriptor name="position" column="POSITION_" jdbc-type="INTEGER"/>
		<field-descriptor name="oid" column="OID_" jdbc-type="LONGVARBINARY" conversion="org.apache.ojb.broker.accesslayer.conversions.Object2ByteArrFieldConversion"/>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DBAG IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DBagImpl" table="OJB_DLIST">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<collection-descriptor name="elements" element-class-ref="org.apache.ojb.odmg.collections.DListEntry" auto-retrieve="true" auto-update="none" auto-delete="none">
			<inverse-foreignkey field-ref="dlistId"/>
		</collection-descriptor>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DSET IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DSetImpl" table="OJB_DSET">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<collection-descriptor name="elements" element-class-ref="org.apache.ojb.odmg.collections.DSetEntry" auto-retrieve="true" auto-update="none" auto-delete="none">
			<inverse-foreignkey field-ref="dlistId"/>
		</collection-descriptor>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DSET ENTRY IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DSetEntry" table="OJB_DSET_ENTRIES">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<field-descriptor name="dlistId" column="DLIST_ID" jdbc-type="INTEGER"/>
		<field-descriptor name="position" column="POSITION_" jdbc-type="INTEGER"/>
		<field-descriptor name="oid" column="OID_" jdbc-type="LONGVARBINARY" conversion="org.apache.ojb.broker.accesslayer.conversions.Object2ByteArrFieldConversion"/>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DMAP IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DMapImpl" table="OJB_DMAP">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<collection-descriptor name="entries" element-class-ref="org.apache.ojb.odmg.collections.DMapEntry" collection-class="org.apache.ojb.broker.util.collections.ManageableHashSet" auto-retrieve="true" auto-update="none" auto-delete="none">
			<inverse-foreignkey field-ref="dmapId"/>
		</collection-descriptor>
	</class-descriptor>
	<!-- ************************************************************* -->
	<!-- THIS IS THE OJB DMAP ENTRY IMPLEMENTATION, DO NOT EDIT-->
	<!-- ************************************************************* -->
	<class-descriptor class="org.apache.ojb.odmg.collections.DMapEntry" table="OJB_DMAP_ENTRIES">
		<field-descriptor name="id" column="ID" jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
		<field-descriptor name="dmapId" column="DMAP_ID" jdbc-type="INTEGER"/>
		<field-descriptor name="keyOid" column="KEY_OID" jdbc-type="LONGVARBINARY" conversion="org.apache.ojb.broker.accesslayer.conversions.Object2ByteArrFieldConversion"/>
		<field-descriptor name="valueOid" column="VALUE_OID" jdbc-type="LONGVARBINARY" conversion="org.apache.ojb.broker.accesslayer.conversions.Object2ByteArrFieldConversion"/>
	</class-descriptor>
	<!-- END OF OJB INTERNAL MAPPINGS-->
</descriptor-repository>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to