[
https://issues.apache.org/jira/browse/OAK-1634?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Klimetschek updated OAK-1634:
---------------------------------------
Description:
Reopening of OAK-1409, as it still occurs with 0.19.0. Below is the latest
stacktrace I get after my instance crashed hard due to an OS crash.
{code}
27.03.2014 14:46:24.045 *ERROR* [qtp981488976-157]
org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet service:
Uncaught RuntimeException
java.nio.BufferOverflowException: null
at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:352)
at
org.apache.jackrabbit.oak.plugins.segment.file.MappedAccess.write(MappedAccess.java:64)
at
org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntryHeader(TarFile.java:201)
at
org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntry(TarFile.java:134)
at
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.writeSegment(FileStore.java:387)
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.internalWriteStream(SegmentWriter.java:744)
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeStream(SegmentWriter.java:711)
at
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.createBlob(SegmentNodeStore.java:174)
at
org.apache.jackrabbit.oak.spi.state.ProxyNodeStore.createBlob(ProxyNodeStore.java:57)
at
org.apache.jackrabbit.oak.core.MutableRoot.createBlob(MutableRoot.java:314)
at
org.apache.jackrabbit.oak.plugins.value.ValueFactoryImpl.createBinaryValue(ValueFactoryImpl.java:286)
at
org.apache.jackrabbit.oak.plugins.value.ValueFactoryImpl.createValue(ValueFactoryImpl.java:143)
at
org.apache.jackrabbit.oak.jcr.session.NodeImpl.setProperty(NodeImpl.java:455)
at
org.apache.jackrabbit.server.io.DefaultHandler.importData(DefaultHandler.java:237)
at
org.apache.jackrabbit.server.io.DefaultHandler.importContent(DefaultHandler.java:188)
at
org.apache.jackrabbit.server.io.DefaultHandler.importContent(DefaultHandler.java:215)
at
org.apache.sling.jcr.webdav.impl.handler.DefaultHandlerService.importContent(DefaultHandlerService.java:116)
at
org.apache.jackrabbit.server.io.IOManagerImpl.importContent(IOManagerImpl.java:129)
at
org.apache.jackrabbit.webdav.simple.DavResourceImpl.addMember(DavResourceImpl.java:528)
at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.doPut(AbstractWebdavServlet.java:629)
at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.execute(AbstractWebdavServlet.java:357)
at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:291)
at
org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet.doService(SlingSimpleWebDavServlet.java:88)
at
org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet.service(SlingSimpleWebDavServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
{code}
was:
For some unknown reasons my laptop crashed and with it our Oak-based
application. After starting it again, the persistence is broken, and nothing
works. My OS and file system looks fine (Operating system: OSX Mavericks,
rebooted by itself while it was closed, only noticeable through a "your system
was restarted" dialog).
There are java.nio DirectByteBuffer, ByteBuffer and Buffer exceptions (null
argument, index out of bounds, and bufferoverflow) see below.
{code}
07.02.2014 07:04:43.843 *ERROR* [pool-7-thread-1]
org.apache.sling.commons.scheduler.impl.QuartzScheduler Exception during job
execution of org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate@691a70f1
: null
java.lang.IllegalArgumentException: null
at java.nio.Buffer.position(Buffer.java:216) ~[na:1.6.0_29]
at
org.apache.jackrabbit.oak.plugins.segment.file.MappedAccess.write(MappedAccess.java:65)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntry(TarFile.java:166)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.writeSegment(FileStore.java:318)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.flush(SegmentWriter.java:201)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.prepare(SegmentWriter.java:238)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMapLeaf(SegmentWriter.java:310)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMapBucket(SegmentWriter.java:376)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMapBucket(SegmentWriter.java:403)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMapBucket(SegmentWriter.java:412)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMapBucket(SegmentWriter.java:412)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeMap(SegmentWriter.java:590)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:894)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeBuilder.getNodeState(SegmentNodeBuilder.java:62)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.checkpoint(SegmentNodeStore.java:210)
~[na:na]
at
org.apache.jackrabbit.oak.spi.state.ProxyNodeStore.checkpoint(ProxyNodeStore.java:60)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:115)
~[na:na]
at
org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:105)
~[org.apache.sling.commons.scheduler-2.4.2.jar:na]
at org.quartz.core.JobRunShell.run(JobRunShell.java:207)
[org.apache.sling.commons.scheduler-2.4.2.jar:na]
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[na:1.6.0_29]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[na:1.6.0_29]
at java.lang.Thread.run(Thread.java:680) [na:1.6.0_29]
07.02.2014 07:10:23.841 *ERROR* [pool-7-thread-1]
org.apache.sling.commons.scheduler.impl.QuartzScheduler Exception during job
execution of org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate@691a70f1
: null
java.lang.IndexOutOfBoundsException: null
at java.nio.ByteBuffer.wrap(ByteBuffer.java:352) ~[na:1.6.0_29]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.flush(SegmentWriter.java:197)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.prepare(SegmentWriter.java:238)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.prepare(SegmentWriter.java:214)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeValueRecord(SegmentWriter.java:476)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeString(SegmentWriter.java:614)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeProperty(SegmentWriter.java:726)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:918)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter$2.childNodeAdded(SegmentWriter.java:871)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:384)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:868)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeBuilder.getNodeState(SegmentNodeBuilder.java:62)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.checkpoint(SegmentNodeStore.java:210)
~[na:na]
at
org.apache.jackrabbit.oak.spi.state.ProxyNodeStore.checkpoint(ProxyNodeStore.java:60)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:115)
~[na:na]
at
org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:105)
~[org.apache.sling.commons.scheduler-2.4.2.jar:na]
at org.quartz.core.JobRunShell.run(JobRunShell.java:207)
[org.apache.sling.commons.scheduler-2.4.2.jar:na]
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[na:1.6.0_29]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[na:1.6.0_29]
at java.lang.Thread.run(Thread.java:680) [na:1.6.0_29]
07.02.2014 07:02:34.408 *ERROR* [TarMK flush thread:
/Users/alex/Work/code/cq/master/quickstart/target/crx-quickstart/repository]
org.apache.sling.extensions.threaddump.internal.Activator Uncaught exception in
Thread Thread[TarMK flush thread:
/Users/alex/Work/code/cq/master/quickstart/target/crx-quickstart/repository,1,main]
java.nio.BufferOverflowException: null
at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:352)
~[na:1.6.0_29]
at
org.apache.jackrabbit.oak.plugins.segment.file.MappedAccess.write(MappedAccess.java:66)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntry(TarFile.java:169)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.writeSegment(FileStore.java:318)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.flush(SegmentWriter.java:201)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.flush(FileStore.java:189)
~[na:na]
at
org.apache.jackrabbit.oak.plugins.segment.file.FileStore$1.run(FileStore.java:164)
~[na:na]
at java.lang.Thread.run(Thread.java:680) ~[na:1.6.0_29]
{code}
> After crash, segment persistence is broken with failures in java.nio classes
> (with v0.19)
> -----------------------------------------------------------------------------------------
>
> Key: OAK-1634
> URL: https://issues.apache.org/jira/browse/OAK-1634
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: segmentmk
> Affects Versions: 0.19
> Reporter: Alexander Klimetschek
> Assignee: Jukka Zitting
>
> Reopening of OAK-1409, as it still occurs with 0.19.0. Below is the latest
> stacktrace I get after my instance crashed hard due to an OS crash.
> {code}
> 27.03.2014 14:46:24.045 *ERROR* [qtp981488976-157]
> org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet service:
> Uncaught RuntimeException
> java.nio.BufferOverflowException: null
> at java.nio.DirectByteBuffer.put(DirectByteBuffer.java:352)
> at
> org.apache.jackrabbit.oak.plugins.segment.file.MappedAccess.write(MappedAccess.java:64)
> at
> org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntryHeader(TarFile.java:201)
> at
> org.apache.jackrabbit.oak.plugins.segment.file.TarFile.writeEntry(TarFile.java:134)
> at
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.writeSegment(FileStore.java:387)
> at
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.internalWriteStream(SegmentWriter.java:744)
> at
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeStream(SegmentWriter.java:711)
> at
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.createBlob(SegmentNodeStore.java:174)
> at
> org.apache.jackrabbit.oak.spi.state.ProxyNodeStore.createBlob(ProxyNodeStore.java:57)
> at
> org.apache.jackrabbit.oak.core.MutableRoot.createBlob(MutableRoot.java:314)
> at
> org.apache.jackrabbit.oak.plugins.value.ValueFactoryImpl.createBinaryValue(ValueFactoryImpl.java:286)
> at
> org.apache.jackrabbit.oak.plugins.value.ValueFactoryImpl.createValue(ValueFactoryImpl.java:143)
> at
> org.apache.jackrabbit.oak.jcr.session.NodeImpl.setProperty(NodeImpl.java:455)
> at
> org.apache.jackrabbit.server.io.DefaultHandler.importData(DefaultHandler.java:237)
> at
> org.apache.jackrabbit.server.io.DefaultHandler.importContent(DefaultHandler.java:188)
> at
> org.apache.jackrabbit.server.io.DefaultHandler.importContent(DefaultHandler.java:215)
> at
> org.apache.sling.jcr.webdav.impl.handler.DefaultHandlerService.importContent(DefaultHandlerService.java:116)
> at
> org.apache.jackrabbit.server.io.IOManagerImpl.importContent(IOManagerImpl.java:129)
> at
> org.apache.jackrabbit.webdav.simple.DavResourceImpl.addMember(DavResourceImpl.java:528)
> at
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.doPut(AbstractWebdavServlet.java:629)
> at
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.execute(AbstractWebdavServlet.java:357)
> at
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:291)
> at
> org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet.doService(SlingSimpleWebDavServlet.java:88)
> at
> org.apache.sling.jcr.webdav.impl.servlets.SlingSimpleWebDavServlet.service(SlingSimpleWebDavServlet.java:67)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)