Emmanuel Lecharny created DIRSERVER-1760:
--------------------------------------------
Summary: When one of the server disconnect brutally, replication
stops working
Key: DIRSERVER-1760
URL: https://issues.apache.org/jira/browse/DIRSERVER-1760
Project: Directory ApacheDS
Issue Type: Bug
Affects Versions: 2.0.0-M9
Reporter: Emmanuel Lecharny
Fix For: 2.0.0-M9
If we unplug the network cable, the replication does not work anymore, even if
we replug the cable. The disconnection is detected if we update the local
server, but we never retry to connect again :
[17:21:09] ERROR
[org.apache.directory.server.ldap.replication.provider.SyncReplSearchListener]
-
org.apache.mina.core.write.WriteToClosedSessionException
at
org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:462)
at
org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:439)
at
org.apache.directory.server.ldap.replication.provider.SyncReplSearchListener.sendResult(SyncReplSearchListener.java:198)
at
org.apache.directory.server.ldap.replication.provider.SyncReplSearchListener.entryModified(SyncReplSearchListener.java:326)
at
org.apache.directory.server.core.event.EventInterceptor.fire(EventInterceptor.java:148)
at
org.apache.directory.server.core.event.EventInterceptor.modify(EventInterceptor.java:281)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.subtree.SubentryInterceptor.modify(SubentryInterceptor.java:1208)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.collective.CollectiveAttributeInterceptor.modify(CollectiveAttributeInterceptor.java:176)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.operational.OperationalAttributeInterceptor.modify(OperationalAttributeInterceptor.java:432)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.schema.SchemaInterceptor.modify(SchemaInterceptor.java:1393)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.hash.PasswordHashingInterceptor.modify(PasswordHashingInterceptor.java:113)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.exception.ExceptionInterceptor.modify(ExceptionInterceptor.java:298)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.authz.DefaultAuthorizationInterceptor.modify(DefaultAuthorizationInterceptor.java:281)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.authz.AciAuthorizationInterceptor.modify(AciAuthorizationInterceptor.java:844)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.referral.ReferralInterceptor.modify(ReferralInterceptor.java:309)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.authn.AuthenticationInterceptor.modify(AuthenticationInterceptor.java:1110)
at
org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:599)
at
org.apache.directory.server.core.normalization.NormalizationInterceptor.modify(NormalizationInterceptor.java:239)
at
org.apache.directory.server.core.DefaultOperationManager.modify(DefaultOperationManager.java:830)
at
org.apache.directory.server.core.shared.DefaultCoreSession.modify(DefaultCoreSession.java:951)
at
org.apache.directory.server.core.shared.DefaultCoreSession.modify(DefaultCoreSession.java:934)
at
org.apache.directory.server.ldap.handlers.ModifyHandler.handle(ModifyHandler.java:55)
at
org.apache.directory.server.ldap.handlers.ModifyHandler.handle(ModifyHandler.java:38)
at
org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:209)
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:209)
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)
I'm also afraid that we won't be able to detect such a disconnection if it
occurs, as the network layer won't be informed about it.
at java.lang.Thread.run(Thread.java:722)
--
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