- 3,724,451 Users
- 2,244,761 Discussions
- 7,851,017 Comments
Forum Stats
Discussions
Categories
- 15 Data
- 362.2K Big Data Appliance
- 6 Data Science
- 2.1K Databases
- 625 General Database Discussions
- 3.7K Java and JavaScript in the Database
- 32 Multilingual Engine
- 497 MySQL Community Space
- 7 NoSQL Database
- 7.7K Oracle Database Express Edition (XE)
- 2.8K ORDS, SODA & JSON in the Database
- 422 SQLcl
- 63 SQL Developer Data Modeler
- 185.1K SQL & PL/SQL
- 21.1K SQL Developer
- 2.5K Development
- 3 Developer Projects
- 32 Programming Languages
- 135.7K Development Tools
- 14 DevOps
- 3K QA/Testing
- 339 Java
- 10 Java Learning Subscription
- 12 Database Connectivity
- 72 Java Community Process
- 2 Java 25
- 12 Java APIs
- 141.2K Java Development Tools
- 9 Java EE (Java Enterprise Edition)
- 153K Java Essentials
- 135 Java 8 Questions
- 86.2K Java Programming
- 270 Java Lambda MOOC
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 16 Java SE
- 13.8K Java Security
- 4 Java User Groups
- 22 JavaScript - Nashorn
- 18 Programs
- 148 LiveLabs
- 34 Workshops
- 10 Software
- 4 Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 4 Deutsche Oracle Community
- 16 Español
- 1.9K Japanese
- 3 Portuguese
NullPointerException

3962
Member Posts: 30
I got this exception while writing to a database today.
java.lang.NullPointerException
at com.sleepycat.je.tree.LN.log(LN.java:534)
at com.sleepycat.je.tree.LN.log(LN.java:373)
at com.sleepycat.je.tree.BIN.logDirtyLN(BIN.java:1016)
at com.sleepycat.je.tree.BIN.evictInternal(BIN.java:985)
at com.sleepycat.je.tree.BIN.evictLNs(BIN.java:940)
at com.sleepycat.je.evictor.Evictor.evictIN(Evictor.java:761)
at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:344)
at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:244)
at com.sleepycat.je.evictor.Evictor.doCriticalEviction(Evictor.java:269)
at com.sleepycat.je.dbi.CursorImpl.close(CursorImpl.java:711)
at com.sleepycat.je.Cursor.close(Cursor.java:326)
at com.sleepycat.je.Database.putInternal(Database.java:999)
at com.sleepycat.je.Database.put(Database.java:885)
at com.sleepycat.persist.PrimaryIndex.putNoReturn(PrimaryIndex.java:428)
at com.sleepycat.persist.PrimaryIndex.putNoReturn(PrimaryIndex.java:402)
.....
Here is our configuration:
StoreConfig storeConfig = new StoreConfig();
storeConfig.setAllowCreate(true);
storeConfig.setTemporary(true);
storeConfig.setTransactional(false);
Have you seen this before?
Trevor
java.lang.NullPointerException
at com.sleepycat.je.tree.LN.log(LN.java:534)
at com.sleepycat.je.tree.LN.log(LN.java:373)
at com.sleepycat.je.tree.BIN.logDirtyLN(BIN.java:1016)
at com.sleepycat.je.tree.BIN.evictInternal(BIN.java:985)
at com.sleepycat.je.tree.BIN.evictLNs(BIN.java:940)
at com.sleepycat.je.evictor.Evictor.evictIN(Evictor.java:761)
at com.sleepycat.je.evictor.Evictor.evictBatch(Evictor.java:344)
at com.sleepycat.je.evictor.Evictor.doEvict(Evictor.java:244)
at com.sleepycat.je.evictor.Evictor.doCriticalEviction(Evictor.java:269)
at com.sleepycat.je.dbi.CursorImpl.close(CursorImpl.java:711)
at com.sleepycat.je.Cursor.close(Cursor.java:326)
at com.sleepycat.je.Database.putInternal(Database.java:999)
at com.sleepycat.je.Database.put(Database.java:885)
at com.sleepycat.persist.PrimaryIndex.putNoReturn(PrimaryIndex.java:428)
at com.sleepycat.persist.PrimaryIndex.putNoReturn(PrimaryIndex.java:402)
.....
Here is our configuration:
StoreConfig storeConfig = new StoreConfig();
storeConfig.setAllowCreate(true);
storeConfig.setTemporary(true);
storeConfig.setTransactional(false);
Have you seen this before?
Trevor
Answers
-
Hi Trevor,
No, we haven't seen this before.
I see what's causing the NPE from your stack trace, and it looks like the underlying cause exception is being discarded.
Is this reproducible? If so, I can give you a one line change that will reveal the underlying exception.
--mark -
Trevor,
The NullPointerException problem has been fixed and this will be in the next 3.3 patch release. The ticket is #17551.
If you are able to reproduce the problem, it would sure be nice to know what the underlying exception was. Without further information from you, I have to assume it was an IOException (disk full perhaps) or something similar. If you can reproduce it, please apply this tiny change and try it again:diff -c -r1.152.2.3 LN.java *** src/com/sleepycat/je/tree/LN.java 5 May 2009 19:59:21 -0000 1.152.2.3 --- src/com/sleepycat/je/tree/LN.java 28 Jul 2009 03:45:34 -0000 *************** *** 531,537 **** * If any exception happens during logging, then force this txn * to onlyAbortable. [#15768] */ ! locker.setOnlyAbortable(); throw DE; } clearDirty(); --- 531,539 ---- * If any exception happens during logging, then force this txn * to onlyAbortable. [#15768] */ ! if (locker != null) { ! locker.setOnlyAbortable(); ! } throw DE; } clearDirty();
Thanks,
--mark
This discussion has been closed.