directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DIRSERVER-2172) ApacheDS 2.0.0M12 in production, getting ERR_554 double get for block block 3,474
Date Sun, 27 Nov 2016 09:11:58 GMT

    [ https://issues.apache.org/jira/browse/DIRSERVER-2172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15699350#comment-15699350
] 

Emmanuel Lecharny commented on DIRSERVER-2172:
----------------------------------------------

Actually, in 2.0.0-M23, we have added a 'repair' mode which will try to reindex the database
when it gets corrupted. That shoudl solve most of the problem you have. It's just a matter
of restarting the server adding the 'repair' command line parameter to active this mode. Once
the index have been re-computed, the server will be up and running, in a good shape (hopefully).

And yes, until we are done with Mavibot, there is no much we can do with JDBM. It has nothing
to do with JDBM itself, which is quite a decent Java B-tree implementation, it's just that
we need a transaction layer on top of it, which is missing...

> ApacheDS 2.0.0M12 in production, getting ERR_554 double get for block  block 3,474
> ----------------------------------------------------------------------------------
>
>                 Key: DIRSERVER-2172
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-2172
>             Project: Directory ApacheDS
>          Issue Type: Bug
>          Components: ldap
>         Environment: GNU/Linux x86_64
>            Reporter: sourabh sihare
>            Priority: Critical
>
> We have upgraded apacheds from 2.0.0-M23 assuming that will fix the issue with data getting
corrupt but we are still facing the same issue.The apacheds server keeps running but data
does not load fully from front end like 400 users instead of actual 3000+ users.
> -> As a workaround we take backup of partition daily and when the issue occurs we
replace the partition from backed-up partition and restart the server.
> -> From apacheds.log we get below error trace-
> [16:13:21] DEBUG [org.apache.directory.server.OPERATION_LOG] - << CompareOperation
successful
> [16:13:21] DEBUG [org.apache.directory.server.OPERATION_TIME] - Compare operation took
183000 ns
> [16:13:21] DEBUG [org.apache.directory.server.OPERATION_LOG] - >> CompareOperation
: CompareContext for Dn 'uid=GA1346,ou=users,o=sccm', oid : <objectClass>, value :'groupOfNames'
> [16:13:21] DEBUG [org.apache.directory.server.OPERATION_LOG] - >> LookupOperation
: FilteringOperationContext for Dn 'uid=GA1346,ou=users,o=sccm', +, *
> [16:13:21] 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 3,474
>         at jdbm.recman.RecordFile.get(RecordFile.java:185)
>         at jdbm.recman.PhysicalRowIdManager.allocNew(PhysicalRowIdManager.java:202)
>         at jdbm.recman.PhysicalRowIdManager.alloc(PhysicalRowIdManager.java:177)
>         at jdbm.recman.PhysicalRowIdManager.update(PhysicalRowIdManager.java:101)
>         at jdbm.recman.BaseRecordManager.update(BaseRecordManager.java:281)
>         at jdbm.recman.CacheRecordManager$CacheListener.cacheObjectEvicted(CacheRecordManager.java:459)
>         at jdbm.recman.CacheRecordManager$CacheListener.cacheObjectEvicted(CacheRecordManager.java:444)
>         at jdbm.helper.MRU.purgeEntry(MRU.java:310)
>         at jdbm.helper.MRU.put(MRU.java:128)
>         at jdbm.recman.CacheRecordManager.fetch(CacheRecordManager.java:268)
>         at jdbm.btree.BPage.loadBPage(BPage.java:949)
>         at jdbm.btree.BPage.find(BPage.java:280)
>         at jdbm.btree.BTree.find(BTree.java:413)
>         at org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.get(JdbmTable.java:343)
>         at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.fetch(AbstractBTreePartition.java:1274)
>         at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.lookup(AbstractBTreePartition.java:1202)
>         at org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.lookup(DefaultPartitionNexus.java:464)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.lookup(BaseInterceptor.java:161)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.collective.CollectiveAttributeInterceptor.lookup(CollectiveAttributeInterceptor.java:143)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.operational.OperationalAttributeInterceptor.lookup(OperationalAttributeInterceptor.java:329)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.schema.SchemaInterceptor.lookup(SchemaInterceptor.java:1142)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.authz.DefaultAuthorizationInterceptor.lookup(DefaultAuthorizationInterceptor.java:231)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.authz.AciAuthorizationInterceptor.lookup(AciAuthorizationInterceptor.java:779)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.authn.AuthenticationInterceptor.lookup(AuthenticationInterceptor.java:852)
>         at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:483)
>         at org.apache.directory.server.core.normalization.NormalizationInterceptor.lookup(NormalizationInterceptor.java:196)
>         at org.apache.directory.server.core.DefaultOperationManager.lookup(DefaultOperationManager.java:775)
> at org.apache.directory.server.core.shared.DefaultCoreSession.lookup(DefaultCoreSession.java:560)
>         at org.apache.directory.server.core.DefaultOperationManager.getOriginalEntry(DefaultOperationManager.java:194)
>         at org.apache.directory.server.core.DefaultOperationManager.compare(DefaultOperationManager.java:531)
>         at org.apache.directory.server.core.shared.DefaultCoreSession.compare(DefaultCoreSession.java:885)
>         at org.apache.directory.server.ldap.handlers.request.CompareRequestHandler.handle(CompareRequestHandler.java:52)
>         at org.apache.directory.server.ldap.handlers.request.CompareRequestHandler.handle(CompareRequestHandler.java:38)
>         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:243)
>         at org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:216)
>         at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:854)
>         at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542)
>         at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)
>         at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943)
>         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:476)
>         at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:430)
>         at java.lang.Thread.run(Thread.java:745)
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message