You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@directory.apache.org by Ca...@ibs-ag.com on 2014/04/22 15:48:18 UTC

ERR_554 double get for block..

Hi,
This is an M16 build from the trunk around September 2013.

I've seen other posts on this topic but could not determine if the database was repairable..  Is there any way to recover from this double get for block issue?
Many substring searches do not return the expected results and when I try to export ldif, after about 40 entries, this exception occurs.

Error while exporting LDIF
- Request: 2 cancelled
  javax.naming.CommunicationException: Request: 2 cancelled
                at com.sun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:60)
                at com.sun.jndi.ldap.Connection.readReply(Connection.java:414)
                at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:611)
                at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:579)
                at com.sun.jndi.ldap.LdapCtx.getSearchReply(LdapCtx.java:1896)
                at com.sun.jndi.ldap.LdapNamingEnumeration.getNextBatch(LdapNamingEnumeration.java:111)
                at com.sun.jndi.ldap.LdapNamingEnumeration.hasMoreImpl(LdapNamingEnumeration.java:198)
                at com.sun.jndi.ldap.LdapNamingEnumeration.hasMore(LdapNamingEnumeration.java:171)
                at org.apache.directory.studio.connection.core.io.jndi.StudioNamingEnumeration.hasMore(StudioNamingEnumeration.java:139)
                at org.apache.directory.studio.ldapbrowser.core.jobs.ExportLdifJob$JndiLdifEnumeration.hasNext(ExportLdifJob.java:256)
                at org.apache.directory.studio.ldapbrowser.core.jobs.ExportLdifJob.export(ExportLdifJob.java:169)
                at org.apache.directory.studio.ldapbrowser.core.jobs.ExportLdifJob.executeAsyncJob(ExportLdifJob.java:138)
                at org.apache.directory.studio.ldapbrowser.core.jobs.AbstractEclipseJob.run(AbstractEclipseJob.java:101)
                at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

  Request: 2 cancelled

Is it possible to perform integrity checks / maintenance on the .db files? This is what I'm seeing in the logs.

Thanks.

INFO   | jvm 1    | 2014/04/22 13:40:22 | java.lang.Error: ERR_554 double get for block 0
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.recman.RecordFile.get(RecordFile.java:185)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.recman.PhysicalRowIdManager.fetch(PhysicalRowIdManager.java:159)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.recman.BaseRecordManager.fetch(BaseRecordManager.java:323)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.recman.CacheRecordManager.fetch(CacheRecordManager.java:264)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.btree.BPage.loadBPage(BPage.java:949)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.btree.BPage.find(BPage.java:280)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at jdbm.btree.BTree.find(BTree.java:413)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.get(JdbmTable.java:344)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.reverseLookup(JdbmIndex.java:364)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.reverseLookup(JdbmIndex.java:1)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.buildEntryDn(AbstractBTreePartition.java:2194)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.fetch(AbstractBTreePartition.java:1114)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.xdbm.search.evaluator.SubtreeScopeEvaluator.evaluate(SubtreeScopeEvaluator.java:169)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.EntryCursorAdaptor.get(EntryCursorAdaptor.java:167)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.partition.impl.btree.EntryCursorAdaptor.get(EntryCursorAdaptor.java:1)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.core.api.filtering.BaseEntryFilteringCursor.next(BaseEntryFilteringCursor.java:377)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.writeResults(SearchRequestHandler.java:394)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.doSimpleSearch(SearchRequestHandler.java:848)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleIgnoringReferrals(SearchRequestHandler.java:1156)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleWithReferrals(SearchRequestHandler.java:1245)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:220)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:1)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:207)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:1)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:221)
INFO   | jvm 1    | 2014/04/22 13:40:22 |                 at org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:217)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:690)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:74)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:474)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:428)
INFO   | jvm 1    | 2014/04/22 13:40:23 |                 at java.lang.Thread.run(Thread.java:662)



RE: ERR_554 double get for block..

Posted by Ca...@ibs-ag.com.
Ok, no problem and thx for quick reply.. We are working towards moving some of our environments to 2.0.0-M16. 

Does this release (13 Mar 2014) use Mavibot? 

Thanks, Carlo

-----Original Message-----
From: Emmanuel Lécharny [mailto:elecharny@gmail.com] 
Sent: Tuesday, April 22, 2014 10:01 AM
To: users@directory.apache.org
Subject: Re: ERR_554 double get for block..

Le 4/22/14 3:48 PM, Carlo.Accorsi@ibs-ag.com a écrit :
> Hi,
> This is an M16 build from the trunk around September 2013.
>
> I've seen other posts on this topic but could not determine if the database was repairable..  Is there any way to recover from this double get for block issue?

No, sorry for that.

The only possible way is to reinject the LDIF.

We are working on replacing JDBM which is broken. Even with the addition of transaction and journal (which slows down JDBM like hell), we have this exact same issue.

Mavibot will fix it, when it's ready.


--
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com 


Re: ERR_554 double get for block..

Posted by Emmanuel Lécharny <el...@gmail.com>.
Le 4/22/14 3:48 PM, Carlo.Accorsi@ibs-ag.com a écrit :
> Hi,
> This is an M16 build from the trunk around September 2013.
>
> I've seen other posts on this topic but could not determine if the database was repairable..  Is there any way to recover from this double get for block issue?

No, sorry for that.

The only possible way is to reinject the LDIF.

We are working on replacing JDBM which is broken. Even with the addition
of transaction and journal (which slows down JDBM like hell), we have
this exact same issue.

Mavibot will fix it, when it's ready.


-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com