About memory

issue

Database File Compression

ObjectDB database files are usually smaller than database files of other Database Management Systems (object and Relational) but still, an additional internal compression is possible. Usually smaller files are also faster because less I/O operations are required and memory cache can be used more efficiently. But compression and decompression consumes CPU time. Therefore, the effect of compression on Object databases is currently unknown.... also faster because less I/O operations are required and memory cache can be used more efficiently. On the other hand, compression and ...

 
forum_thread

Using of Second Level Cache

In our use case we want to find some entity types always again very quickly by primary key or query in many short transactions. The entity MyEntity1 and its relationships to MyEntity2/MyEntity3 was load and the entity MyEntity1 is taken in the second level cache, the other entity types not. Are the relationships to MyEntity2/MyEntity3 still always referenced although the entity manager is closed, so that the memory for MyEntity2 and MyEntity3 can never be released by garbage collector? ... although the entity manager is closed, so that the memory for MyEntity2 and MyEntity3 can never be released by garbage collector? ...

 
forum_thread

Working with a cleared cache

I'm working on trying to improve the performance of our database processing class and I'm attempting to keep the L1 cache within the PersistenceManager cleared in an effort to reduce its memory footprint. The code snippet below is part of a Callable task that is run repeatedly with a given list of commands. When I run the code as written I start getting the stack traces that are listed.  However, if I comment out the calls to makeTransactionalAll() and evictAll() everything works.... the PersistenceManager cleared in an effort to reduce its memory footprint. The code snippet below is part of a Callable task that is run ...

 
forum_thread

Is there any faster select method?

SELECT: TypedQuery<Point> query = em.createQuery("SELECT p FROM Point p WHERE p.id = " + element.getId(), Point.class); List<Point> points = query.getResultList();   WRITE: em.persist(p);   ** the Point class is of the tutorial.   I found the above select method is ten times slower than the write method, in my very simple benchmark. I guess the reason there is no SQL in the write method.   ... an invocation of persist is very fast because it is a memory operation, so actually you should compare commit operations and not ...

 
issue

Monitoring and Performance counters

After checking last patch from build 2.1.1_01, I started to think about some kind o monitoring tools in ODB. Those tools could look similar to MySQL 'show innodb status', where you can get some informations about how DB is doing. It would be nice to monitor: - inserts/s, updates/s, deletes/s, reads/s - total inserts, update, deletes, reads - I/O operations/s - caches current usage - uptime from last start - caches hit rate - total sessions from clients ... hit rate - total sessions from clients - memory usage (for heap space tuning?) The easiest way to obtain this ...

 
forum_thread

how to create in memery database in objectdb

plz can u give or help me how to create in memory database in objectdb   with example ... plz can u give or help me how to create in memory database in objectdb   with example ...

 
forum_thread

Merge of entity classes with "mapped by" very slow

Hi, I have found a strange behavior when merging entities with "mapped by" set on @OneToMany relation. Even if object is fetched with find on the same transaction, merge is very slow. It's because on merge every single relation marked as LAZY is fetch from database. Attached two examples - one with mapped by, second with adding entities list without "mapped by". The difference is huge event for such small objects - 2ms (without mapped by) vs ~50ms (with mapped by) ... have almost 10k objects, so merging parent is also memory inefficient. UTCMerge.java ...

 
forum_thread

Significant I/O costs during batch update or insert data.

Our application has some complex entities. We do batch update(merge detached entity) every 2 minutes. We find the period significant IO costs these days, and disappeared when turn off the batch updating. 1.ObjectDB is in embedded mode. 2.ObjectDB version is 2.3.7 3.Database file size is nearly 600mb and increasing. ... that are not enhanced by ObjectDB, which may increase memory usage and cause paging. If you still experience a problem with ...

 
forum_thread

@Lob @Basic(fetch = FetchType.LAZY) is loaded when it's not needed

Hello. I have a class Thing that contains OneToMany list of classes Photo. Photo contains  @Lob @Basic(fetch = FetchType.LAZY) private byte[] content; And after some queries with Thing (but without loading content of the photos) I get java.lang.OutOfMemoryError: Java heap space (the server is started with -Xmx4096M). Heap dump shows that there are very much space is used by contents of the photos despite of using fetch = FetchType.LAZY. How can I fix this memory issue? ... of using fetch = FetchType.LAZY. How can I fix this memory issue? edit ...

 
forum_thread

RT Java application recording into 100DB run OOM after a few hours.

Hi, I am running a java application that records data from 100 feeds into 100 different database - this is done is one thread. It works fine several hours - and suddenly i got an out of memory issue (I checked there is no leak in java - I cleared the entity manager every 10 new entity). 1/ I use the default objectDb.conf (i mean i dont use any - so it must be using the default somewhere). 2/ Using Netbeans, I profiled the application and I noticed that there is one thread (ODB FileWriter) running for each open DB. ... It works fine several hours - and suddenly i got an out of memory issue (I checked there is no leak in java - I cleared the entity manager ...