Hi,
I've a memory trouble using the last version of Cayenne ( v3.0b). I created
a table to store data coming with a frequency of 10-20 record per second.
After few hours my application run out of memory.
Heap report says that there are about 15000 records (and 15000 ObjectId)
referenced by my application.
This app hasn't any hashmap or list of records (it just creates persistent
objects) so I think that these records are stored in ObjectStore.
On commit I print these info:
log.info("Registered Count:
"+context.getObjectStore().registeredObjectsCount());
log.info("New Count: "+ context.newObjects().size());
log.info("Delete Count: "+ context.deletedObjects().size());
log.info("Modify Count: "+ context.modifiedObjects().size());
log.info("Cache Size: "+context.getQueryCache().size());
the first one raise on each commit other logs are 0.
So I think that context keeps committed objects, but I understood that v3.0
shouldn't do this...
How can I avoid this? or How can I clear the context registered Objects?
my add function is:
public void AddPacket(Integer serviceType, Date startTime, Date
arrivalTime){
Packet p = (Packet) context.newObject(Packet.class);
p.setServiceType(serviceType);
p.setStartTime(startTime);
p.setArrivalTime(arrivalTime);
try{
context.commitChanges();
}
catch(ValidationException e){
log.warn("Validation failed. Packet discarded\n");
try{
context.rollbackChanges();
}
catch(Exception e1){
e1.printStackTrace();
}
}
catch(Exception e){
e.printStackTrace();
try{
context.rollbackChanges();
}
catch(Exception e1){
e1.printStackTrace();
}
}
log.info("Registered Count:
"+context.getObjectStore().registeredObjectsCount());
log.info("New Count: "+ context.newObjects().size());
log.info("Delete Count: "+ context.deletedObjects().size());
log.info("Modify Count: "+ context.modifiedObjects().size());
log.info("Cache Size: "+context.getQueryCache().size());
context.getObjectStore().getDataRowCache().clear();
context.getQueryCache().clear();
}
Thanks in advance
Matteo
-- View this message in context: http://n3.nabble.com/ObjectStore-OutOfMemory-Exception-tp36832p36832.html Sent from the Cayenne - User mailing list archive at Nabble.com.
This archive was generated by hypermail 2.0.0 : Thu Nov 19 2009 - 09:40:52 EST