is this some kind of leak ?



I observed the following while trying to understand where/why does
beagle-query increases memory usage. I used desc-heap profiler to
print the live objects before and after a query and noticed a
substantial increase:

before:
Checkpoint at 12859 for gc
   System.MonoType : 80364
   System.String : 157044
   System.Object[] : 20044
   System.Char[] : 19044
   System.Collections.Hashtable : 4416
   System.Collections.Hashtable+Slot[] : 20028
   System.Reflection.MonoMethod : 9920
   System.Byte[] : 29045
   System.Xml.Serialization.TypeData : 4488

after:
Checkpoint at 47445 for gc
   System.MonoType : 80400
   System.String : 172218
   System.Object[] : 20424
   System.Char[] : 19674
   System.Collections.Hashtable : 4560
   System.Collections.Hashtable+Slot[] : 20784
   System.Reflection.MonoMethod : 10280
   System.Byte[] : 30213
   System.Xml.Serialization.TypeData : 4488

A few other observations:
The connectionhandler object and its corresponding QueryExecutor
(which includes Query and QueryResult) seems to persist even after the
query is over. They get cleaned up when the connection comes in. In
fact, doing a beagle-ping after beagle-query reduces the number of
live-objects _consistently_. Looks like this needs some investigation.

- dBera



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]