You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Jukka Zitting (JIRA)" <ji...@apache.org> on 2014/03/31 18:25:17 UTC

[jira] [Resolved] (OAK-1634) After crash, segment persistence is broken with failures in java.nio classes (with v0.19)

     [ https://issues.apache.org/jira/browse/OAK-1634?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting resolved OAK-1634.
--------------------------------

    Resolution: Fixed

Fixed in 1583352 by adding extra validation checks against partially written entries in the tar files.

> 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
>             Fix For: 0.20
>
>
> 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)