Sometimes the ObjectDB throws an internal expeption if a persist() was executed

Type: BugVersion: 1.4.0Priority: LowStatus: ClosedReplies: 7
#1

[ObjectDB 2.6.6_08] Unexpected exception (Error 990)
Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_51 (on Windows 7 6.1).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.NullPointerException: null
java.lang.NullPointerException
at com.objectdb.o.OBM.bE(OBM.java:395)
at com.objectdb.o.OBM.bE(OBM.java:269)
at com.objectdb.jpa.EMImpl.persist(EMImpl.java:442)

#2

Is it new in build 2.6.6_08?

What can you tell about the persisted object? The exception indicates that the type is not an ordinary entity class. Is it a known entity class with existing instances in the database?

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
#3

Build 2.6.7_04 reverts a change in 2.6.6_08 that may be related to your exception.

Could you please check if you still get the exception with the new build?

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
#4

It is an error which is sporadically (not reproducible) occurred in our test suite. Therefore, we could not describe the problem in detail. We will now use the new version. Should the error occur again we will report back.

 

Edit: The new version is not yet available on the download page.

#5

Sorry, 2.6.7_04 is available now.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
#6

Maybe the fist reported Problem is solved, but now we get sometimes in another Test the following exception:

 

[ObjectDB 2.6.7_04] Unexpected exception (Error 990)
Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_51 (on Windows 7 6.1).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.NullPointerException: null
java.lang.NullPointerException
at com.objectdb.o.ENT.J(ENT.java:607)
at com.objectdb.o.OBM.bF(OBM.java:394)
at com.objectdb.o.OBM.bF(OBM.java:269)
at com.objectdb.jpa.EMImpl.persist(EMImpl.java:442)
at com.btc.ep.base.dal.internal.services.PersistenceUtilityServiceImpl.dbPersist(PersistenceUtilityServiceImpl.java:46)

Edit: Correction it is the same test, means the fist reported problem is not solved.

#7

We have found the cause.
The test was mistakenly executed on a test machine without ObjectDB lizense.

At the beginning of the test (and our application), we add for all entities an instance in the database and rollback the transaction.
(As we do that in a separate thread, we have not seen the license error)

And the reported errors are reproducable on the test machine without ObjectDB lizense.


Can you still improve the license error messages for this case?

#8

Hello,

the BUG status is active since one year. But its not an ObjectDB issue.

The problem is just that we started our application without OEM enhancement on a machine without an ObjectDB license (no matching activation-code).
 

The problem is now that we don't see the exception, because at the beginning of our application we add for all entity classes an instance in the database and rollback the transaction. This step is just to increase the performance, because the first 'persist' of an entity class can take a moment. If something failed, we ignore it, because its a not really important task.

 

We found out that we got the licensing exception just a few times, and then we got the reported exception.

For us, it would be helpful if we get always the license exception.

If its not possible to implement this, you can close this issue.

Update: I changed the status to 'Closed'


Post Reply

To post a reply and/or subscribe to update notifications - please login