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

Oren Cohen commented on DIRSERVER-2192:
---------------------------------------

Hi Emmanuel,

I'm running M21 on Windows, and got corruption with error: ERR_562 Offset too 
large for record header
I cannot install M23 using the installer, so I took the service JAR of M23, and 
replaced it in the ApacheDS lib folder.
I ran the apacheds.bat with repair option and got this log:

Service started.
Repairing the database.
Repairing partition dir <My server 
folder>\ApacheDS\Server\bin\..\instances\default\partitions
Re-building indices...

I then got ~2000 messages like this:
Read entry cn=case_111352296_read with ID 002c5d0c-e590-4775-909f-b0e5aad7ea1e 
and parent ID 82dfe019-c369-4ad1-8df4-e33f3c904836

Then got:
Updating the RDN index counters...
Total entries present in the partition 2096
Repair complete
Database repaired.

(I didn't get a prompt back)
When I open Apache Studio I see that all the tree under RootDSE has 
disappeared. I have no entries there.

1) What happend ?
2) How can I fix it ? I tried to rerun the same command but got the same 
results and log.
3) Can you tell what's is the scenario of the corruption bug ? If the repair 
can damage my Ldap, I prefer avoiding the corruption as much as possible.
4) What should I do in order to avoid the corruption ? Does it happen when 
ApacheDS has to many users or groups ? Is there a limitation (I have ~2000 I 
guess).

Thanks a lot !
Oren

> apcheds M23 - ERR_554 AND ERR_562
> ---------------------------------
>
>                 Key: DIRSERVER-2192
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-2192
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: sasha
>            Priority: Critical
>
> once a week im getting this errors , the only solution is to restart apacheds 
> ,
> how can i fix it? 
> Unexpected exception forcing session to close: sending disconnect notice to 
> client.
> java.lang.Error: ERR_554 double get for block 11,085
>         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.updateCacheEntries(CacheRecordManager.java:417)
>         at jdbm.recman.CacheRecordManager.commit(CacheRecordManager.java:349)
>         at 
> org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.sync(JdbmTable.java:976)
>         at 
> org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.sync(JdbmPartition.java:577)
>         at 
> org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.add(AbstractBTreePartition.java:871)
>         at 
> org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:361)
>         at 
> org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.add(BaseInterceptor.java:107)
>               
>               
>               
>               
>               
>               
>               
>               
>               
>               
>               [03:28:29] WARN 
> [org.apache.directory.server.ldap.LdapProtocolHandler] - Unexpected exception 
> forcing session to close: sending disconnect notice to client.
> java.lang.Error: ERR_562 Offset too large for record header (11,085:30,012)
>         at jdbm.recman.RecordHeader.<init>(RecordHeader.java:83)
>         at 
> jdbm.recman.PhysicalRowIdManager.allocNew(PhysicalRowIdManager.java:224)
>         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.updateCacheEntries(CacheRecordManager.java:417)
>         at jdbm.recman.CacheRecordManager.commit(CacheRecordManager.java:349)
>         at 
> org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.sync(JdbmTable.java:976)
>         at 
> org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.sync(JdbmPartition.java:577)
>         at 
> org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.add(AbstractBTreePartition.java:871)
>         at 
> org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:361)
>         at 
> org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.add(BaseInterceptor.java:107)
>         at 
> org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:341)
>         at 
> org.apache.directory.server.core.journal.JournalInterceptor.add(JournalInterceptor.java:139)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to