[Logo] Terracotta Discussion Forums (LEGACY READ-ONLY ARCHIVE)
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
terracotta 3.5.3: com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 0 LOG_CHECKSU  XML
Forum Index -> Terracotta Platform
Author Message
rlentz

neo

Joined: 06/09/2008 14:25:58
Messages: 8
Offline

Hi,

since 2 weeks our production enviroment gets down multiple times a day, that means both primary and backup terracotta server exit with:
2011-10-24 07:44:27,875 [CommonShutDownHook] INFO com.terracottatech.dso - L2 Exiting...
=====================
Looking at the logfile I noticed a "com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 0 LOG_CHECKSUM" exception entry and quickly after that the processes terminate.
2011-10-24 07:44:24,462 [WorkerThread(commit_changes_stage, 3, 0)] ERROR com.tc.server.TCServerMain - Thread:Thread[WorkerThread(commit_changes_stage, 3, 0),5,TC Thread Group] got an uncaught exception. calling CallbackOnExitDefaultHandlers.
com.tc.objectserver.persistence.db.DBException: com.sleepycat.je.EnvironmentFailureException: (JE 4.1.10) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 4.1.10) /home/terracotta/tc-data/configs/../data/objectdb com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 0 LOG_CHECKSUM: Checksum invalid on read, log is likely invalid. Environment is invalid and must be closed.
at com.tc.objectserver.storage.berkeleydb.BerkeleyDBPersistenceTransactionProvider.newTransaction(BerkeleyDBPersistenceTransactionProvider.java:25)
at com.tc.objectserver.tx.ServerTransactionManagerImpl.commit(ServerTransactionManagerImpl.java:386)
at com.tc.objectserver.handler.CommitTransactionChangeHandler.handleEvent(CommitTransactionChangeHandler.java:31)
at com.tc.async.impl.StageImpl$WorkerThread.run(StageImpl.java:135)
Caused by: com.sleepycat.je.EnvironmentFailureException: (JE 4.1.10) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 4.1.10) /home/terracotta/tc-data/configs/../data/objectdb com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 0 LOG_CHECKSUM: Checksum invalid on read, log is likely invalid. Environment is invalid and must be closed.
at com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
at com.sleepycat.je.dbi.EnvironmentImpl.checkIfInvalid(EnvironmentImpl.java:1455)
at com.sleepycat.je.Environment.checkEnv(Environment.java:2118)
at com.sleepycat.je.Environment.beginTransactionInternal(Environment.java:1280)
at com.sleepycat.je.Environment.beginTransaction(Environment.java:1262)
at com.tc.objectserver.storage.berkeleydb.BerkeleyDBPersistenceTransactionProvider.newNativeTransaction(BerkeleyDBPersistenceTransactionProvider.java:30)
at com.tc.objectserver.storage.berkeleydb.BerkeleyDBPersistenceTransactionProvider.newTransaction(BerkeleyDBPersistenceTransactionProvider.java:23)
... 3 more
=====================

And we get variation of this exception like:

=====================
com.sleepycat.je.EnvironmentFailureException: (JE 4.1.10) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 4.1.10) /home/terracotta/tc-data/configs/../data/objectdb com.sleepycat.je.log.ChecksumException: Read invalid log entry type: -117 LOG_CHECKSUM: Checksum invalid on read, log is likely invalid.

com.tc.objectserver.persistence.db.DBException: com.sleepycat.je.EnvironmentFailureException: (JE 4.1.10) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 4.1.10) /home/terracotta/tc-data/configs/../data/objectdb com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 122 LOG_CHECKSUM: Checksum invalid on read, log is likely invalid. Environment is invalid and must be closed.
at com.tc.objectserver.storage.berkeleydb.BerkeleyDBPersistenceTransactionProvider.newTransaction(BerkeleyDBPersistenceTransactionProvider.java:25)

com.sleepycat.je.EnvironmentFailureException: (JE 4.1.10) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 4.1.10) /home/terracotta/tc-data/configs/../data/objectdb com.sleepycat.je.log.ChecksumException: Read invalid log entry type: 0 LOG_CHECKSUM: Checksum invalid on read, log is likely invalid. Environment is invalid and must be closed. fetchTarget of 0x14/0x261bcb parent IN=8 IN class=com.sleepycat.je.tree.BIN lastFullVersion=0x14/0x1d2729 parent.getDirty()=true state=2
at com.sleepycat.je.EnvironmentFailureException.wrapSelf(EnvironmentFailureException.java:196)
=====================


Any clue why this happens now? Our enviroment is
- Red Hat Linux 10-163-192-11 2.6.18-238.12.1.el5 #1 SMP Sat May 7 20:18:50 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux
- Java -> Java(™) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)
- Terracotta 3.5.3 running in permanent-store, networked-active-passive each with a local harddrive on /dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)

Any hint would be very appreciated as the production system is bascially unusable atm. We updated from terracotta 3.2.1 to 3.5.3 last week, but no improvement concerning the BerkeleyDB exceptions.
I also didn't find an explanation in the Oracle forums.

Any suggestions how to localize the problem?

Aloha
Robert
 Filename terracotta-server.log.gz [Disk] Download
 Description
 Filesize 32 Kbytes
 Downloaded:  209 time(s)

ssubbiah

jedi

Joined: 05/24/2006 14:25:22
Messages: 117
Location: Saravanan Subbiah
Offline

If I have to guess, it could be a Berkeley DB bug or a corrupt disk. With the upgrade of Terracotta, did you throw away the data ? If you did and started fresh and still hit this exception, it could be caused by a corrupt disk.

The last time we closely looked at a problem similar to this, we found bad sectors in the hard disk caused the corruption.

Saravanan Subbiah
Terracotta Engineer
 
Forum Index -> Terracotta Platform
Go to:   
Powered by JForum 2.1.7 © JForum Team