Slavomir Kocka created DIRSERVER-1863:
-----------------------------------------

             Summary: ApacheDS 2.0.0M12 in production, getting ERR_554 double 
get for block 0
                 Key: DIRSERVER-1863
                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1863
             Project: Directory ApacheDS
          Issue Type: Bug
    Affects Versions: 2.0.0-M12
         Environment: RedHat 5.8
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
            Reporter: Slavomir Kocka
            Priority: Blocker


Clean installation of ApacheDS we use together with Websphere Application 
Server 8.0.0.4...
After one day of intensive testing, we got error, which broke partition. Server 
was unable to respond, and after restart, it was unable start again... We have 
also mirror LDAP... Comparing broken vs correct LDAP, master.lg on broken has 
294 bytes, and on correct 123377231 bytes.
Stacktrace from log, when error occured:

[09:36:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:36:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - 
Unexpected exception forcing session to close: sending disconnect notice to 
client.
java.lang.Error: ERR_554 double get for block 0
        at jdbm.recman.RecordFile.get(RecordFile.java:185)
        at jdbm.recman.PhysicalRowIdManager.fetch(PhysicalRowIdManager.java:159)
        at jdbm.recman.BaseRecordManager.fetch(BaseRecordManager.java:323)
        at jdbm.recman.BaseRecordManager.fetch(BaseRecordManager.java:299)
        at 
jdbm.recman.BaseRecordManager.getNameDirectory(BaseRecordManager.java:451)
        at 
jdbm.recman.BaseRecordManager.getNamedObject(BaseRecordManager.java:379)
        at 
jdbm.recman.CacheRecordManager.getNamedObject(CacheRecordManager.java:377)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.sync(JdbmTable.java:959)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.commit(JdbmTable.java:1169)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.remove(JdbmTable.java:810)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.drop(JdbmIndex.java:435)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.drop(JdbmIndex.java:59)
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.updateRdnIdx(AbstractBTreePartition.java:890)
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.add(AbstractBTreePartition.java:765)
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:385)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.add(BaseInterceptor.java:158)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.trigger.TriggerInterceptor.add(TriggerInterceptor.java:300)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.event.EventInterceptor.add(EventInterceptor.java:220)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.subtree.SubentryInterceptor.add(SubentryInterceptor.java:1011)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.collective.CollectiveAttributeInterceptor.add(CollectiveAttributeInterceptor.java:134)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.operational.OperationalAttributeInterceptor.add(OperationalAttributeInterceptor.java:252)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.schema.SchemaInterceptor.add(SchemaInterceptor.java:1095)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.hash.PasswordHashingInterceptor.add(PasswordHashingInterceptor.java:84)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.exception.ExceptionInterceptor.add(ExceptionInterceptor.java:188)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.admin.AdministrativePointInterceptor.add(AdministrativePointInterceptor.java:1201)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.authz.AciAuthorizationInterceptor.add(AciAuthorizationInterceptor.java:516)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.referral.ReferralInterceptor.add(ReferralInterceptor.java:249)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.authn.AuthenticationInterceptor.add(AuthenticationInterceptor.java:392)
        at 
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:412)
        at 
org.apache.directory.server.core.normalization.NormalizationInterceptor.add(NormalizationInterceptor.java:127)
        at 
org.apache.directory.server.core.DefaultOperationManager.add(DefaultOperationManager.java:373)
        at 
org.apache.directory.server.core.shared.DefaultCoreSession.add(DefaultCoreSession.java:218)
        at 
org.apache.directory.server.core.shared.DefaultCoreSession.add(DefaultCoreSession.java:202)
        at 
org.apache.directory.server.ldap.handlers.request.AddRequestHandler.handle(AddRequestHandler.java:57)
        at 
org.apache.directory.server.ldap.handlers.request.AddRequestHandler.handle(AddRequestHandler.java:39)
        at 
org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:207)
        at 
org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:56)
        at 
org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:221)
        at 
org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:217)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:690)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
        at 
org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:74)
        at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
        at 
org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:474)
        at 
org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:428)
        at java.lang.Thread.run(Thread.java:662)
[09:36:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:36:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:37:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:38:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:38:43] ERROR [org.apache.directory.server.core.authn.AbstractAuthenticator] 
- ERR_6 Authentication error : null
[09:39:26] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[09:39:32] ERROR [org.apache.directory.server.core.authn.AbstractAuthenticator] 
- ERR_6 Authentication error : null
[09:40:05] ERROR [org.apache.directory.server.core.authn.AbstractAuthenticator] 
- ERR_6 Authentication error : null
[09:40:27] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.


After stopping and starting server log contains following:

[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - 
Unexpected exception forcing session to close: sending disconnect notice to 
client.
java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcher.read0(Native Method)
        at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
        at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:198)
        at sun.nio.ch.IOUtil.read(IOUtil.java:171)
        at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:245)
        at 
org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:273)
        at 
org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:44)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:690)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:664)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:653)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:67)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1124)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:662)
[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - 
Unexpected exception forcing session to close: sending disconnect notice to 
client.
java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcher.read0(Native Method)
        at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
        at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:198)
        at sun.nio.ch.IOUtil.read(IOUtil.java:171)
        at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:245)
        at 
org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:273)
        at 
org.apache.mina.transport.socket.nio.NioProcessor.read(NioProcessor.java:44)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:690)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:664)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:653)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:67)
        at 
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1124)
        at 
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
        at java.lang.Thread.run(Thread.java:662)
[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[10:03:50] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null 
LdapSession given to cleanUpSession.
[10:03:51] ERROR 
[org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition] 
- ERR_124 Failed to close an index.
java.lang.Error: ERR_554 double get for block 0
        at jdbm.recman.RecordFile.get(RecordFile.java:185)
        at jdbm.recman.PhysicalRowIdManager.fetch(PhysicalRowIdManager.java:159)
        at jdbm.recman.BaseRecordManager.fetch(BaseRecordManager.java:323)
        at jdbm.recman.BaseRecordManager.fetch(BaseRecordManager.java:299)
        at 
jdbm.recman.BaseRecordManager.getNameDirectory(BaseRecordManager.java:451)
        at 
jdbm.recman.BaseRecordManager.getNamedObject(BaseRecordManager.java:379)
        at 
jdbm.recman.CacheRecordManager.getNamedObject(CacheRecordManager.java:377)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.sync(JdbmTable.java:959)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.close(JdbmTable.java:948)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.close(JdbmIndex.java:664)
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.doDestroy(AbstractBTreePartition.java:474)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.doDestroy(JdbmPartition.java:473)
        at 
org.apache.directory.server.core.api.partition.AbstractPartition.destroy(AbstractPartition.java:125)
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.removeContextPartition(DefaultPartitionNexus.java:909)
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.doDestroy(DefaultPartitionNexus.java:278)
        at 
org.apache.directory.server.core.api.partition.AbstractPartition.destroy(AbstractPartition.java:125)
        at 
org.apache.directory.server.core.DefaultDirectoryService.shutdown(DefaultDirectoryService.java:1313)
        at 
org.apache.directory.server.ApacheDsService.stop(ApacheDsService.java:593)
        at 
org.apache.directory.server.wrapper.ApacheDsTanukiWrapper.stop(ApacheDsTanukiWrapper.java:97)
        at 
org.tanukisoftware.wrapper.WrapperManager$13.run(WrapperManager.java:3134)
[10:03:51] WARN 
[org.apache.directory.server.core.shared.partition.DefaultPartitionNexus] - 
Failed to destroy a partition: 2.5.4.11=ivisiam
org.apache.directory.api.ldap.model.exception.LdapOperationErrorException: 
ERR_577 Errors encountered on destroy()
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.removeContextPartition(DefaultPartitionNexus.java:913)
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.doDestroy(DefaultPartitionNexus.java:278)
        at 
org.apache.directory.server.core.api.partition.AbstractPartition.destroy(AbstractPartition.java:125)
        at 
org.apache.directory.server.core.DefaultDirectoryService.shutdown(DefaultDirectoryService.java:1313)
        at 
org.apache.directory.server.ApacheDsService.stop(ApacheDsService.java:593)
        at 
org.apache.directory.server.wrapper.ApacheDsTanukiWrapper.stop(ApacheDsTanukiWrapper.java:97)
        at 
org.tanukisoftware.wrapper.WrapperManager$13.run(WrapperManager.java:3134)
Caused by: org.apache.directory.api.util.exception.MultiException: ERR_577 
Errors encountered on destroy()
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.doDestroy(JdbmPartition.java:464)
        at 
org.apache.directory.server.core.api.partition.AbstractPartition.destroy(AbstractPartition.java:125)
        at 
org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.removeContextPartition(DefaultPartitionNexus.java:909)
        ... 6 more


And server was unable to start again...

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to