Hi Martin,
first of all thx for helping with this port thing. It was way fault to
configure both apacheds and replication to the same port. I changed
that in the server.xml file. apacheds port is 389 now and replication
port is 10390 now. Now I am able to connect to ldap and in
apacheds-rolling.log it says: "Starting a partial replication log
transfer."
But when I tried to replicate data, the following happened... I
modified data on apachds3 server and hoped that it will replicate that
to my apacheds4 server. but with no success... in the apacheds3
logfile i do see the following:
[18:00:31] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds4.douglas-informatik.de/172.28.192.12:10390] Starting a whole DIT
transfer.
[18:00:36] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds4.douglas-informatik.de/172.28.192.12:10390] Starting a partial replication log
transfer.
[18:00:36] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds4.douglas-informatik.de/172.28.192.12:10390] Remote peer failed to execute a log
entry.
[18:00:36] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds4.douglas-informatik.de/172.28.192.12:10390] Remote peer failed to execute a log
entry.
on apacheds4 i do see the following messages in log:
[18:00:36] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds3.douglas-informatik.de/172.28.192.11:10390] Starting a partial replication log
transfer.
[18:00:37] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationServerProtocolHandler] - [/172.28.192.11:3674] Unexpected
exception.
org.apache.directory.shared.ldap.exception.LdapNameNotFoundException:
Id for parent
'0.9.2342.19200300.100.1.25=applications,0.9.2342.19200300.100.1.25=douglasholding' not
found!
at
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmStore.add(JdbmStore.java:1036)
at
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.add(JdbmPartition.java:311)
at
org.apache.directory.server.core.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:699)
at
org.apache.directory.mitosis.operation.support.EntryUtil.createGlueEntry(EntryUtil.java:123)
at
org.apache.directory.mitosis.operation.support.EntryUtil.createGlueEntries(EntryUtil.java:87)
at
org.apache.directory.mitosis.operation.AttributeOperation.execute0(AttributeOperation.java:88)
at
org.apache.directory.mitosis.operation.Operation.execute(Operation.java:108)
at
org.apache.directory.mitosis.operation.CompositeOperation.execute0(CompositeOperation.java:172)
at
org.apache.directory.mitosis.operation.Operation.execute(Operation.java:108)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationServerContextHandler.onLogEntry(ReplicationServerContextHandler.java:193)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationServerContextHandler.messageReceived(ReplicationServerContextHandler.java:85)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationProtocolHandler.messageReceived(ReplicationProtocolHandler.java:85)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:97)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:190)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
[18:00:37] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationServerProtocolHandler] - [/172.28.192.11:3674] Unexpected
exception.
org.apache.directory.shared.ldap.exception.LdapNameNotFoundException:
Id for parent
'0.9.2342.19200300.100.1.25=applications,0.9.2342.19200300.100.1.25=douglasholding' not
found!
at
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmStore.add(JdbmStore.java:1036)
at
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition.add(JdbmPartition.java:311)
at
org.apache.directory.server.core.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:699)
at
org.apache.directory.mitosis.operation.support.EntryUtil.createGlueEntry(EntryUtil.java:123)
at
org.apache.directory.mitosis.operation.support.EntryUtil.createGlueEntries(EntryUtil.java:87)
at
org.apache.directory.mitosis.operation.AttributeOperation.execute0(AttributeOperation.java:88)
at
org.apache.directory.mitosis.operation.Operation.execute(Operation.java:108)
at
org.apache.directory.mitosis.operation.CompositeOperation.execute0(CompositeOperation.java:172)
at
org.apache.directory.mitosis.operation.Operation.execute(Operation.java:108)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationServerContextHandler.onLogEntry(ReplicationServerContextHandler.java:193)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationServerContextHandler.messageReceived(ReplicationServerContextHandler.java:85)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationProtocolHandler.messageReceived(ReplicationProtocolHandler.java:85)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.LoggingFilter.messageReceived(LoggingFilter.java:97)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:190)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
Please find enclosed my server.xml replication configuration part for
the both apacheds servers. maybe you do see a configuration error:
apacheds3:
==========
<bean
class="org.apache.directory.server.core.configuration.MutableInterceptorConfiguration">
<property name="name" value="replicationService" />
<property name="interceptor">
<bean
class="org.apache.directory.mitosis.service.ReplicationService">
<property name="configuration">
<bean
class="org.apache.directory.mitosis.configuration.ReplicationConfiguration">
<property name="replicaId">
<bean
class="org.apache.directory.mitosis.common.ReplicaId">
<constructor-arg>
<value>instance_a</value>
</constructor-arg>
</bean>
</property>
<property name="serverPort" value="10390" />
<property name="peerReplicas">
<set>
<value>[EMAIL PROTECTED]:10390</value>
</set>
</property>
</bean>
</property>
</bean>
</property>
</bean>
apacheds4:
==========
<bean
class="org.apache.directory.server.core.configuration.MutableInterceptorConfiguration">
<property name="name" value="replicationService" />
<property name="interceptor">
<bean
class="org.apache.directory.mitosis.service.ReplicationService">
<property name="configuration">
<bean
class="org.apache.directory.mitosis.configuration.ReplicationConfiguration">
<property name="replicaId">
<bean
class="org.apache.directory.mitosis.common.ReplicaId">
<constructor-arg>
<value>instance_b</value>
</constructor-arg>
</bean>
</property>
<property name="serverPort" value="10390" />
<property name="peerReplicas">
<set>
<value>[EMAIL PROTECTED]:10390</value>
</set>
</property>
</bean>
</property>
</bean>
</property>
</bean>
Thanks in advance again... hopefully you can help me out of this :-)
Markus
Zitat von Martin Alderson <[EMAIL PROTECTED]>:
Hi Markus,
The warning messages are just to tell you that the current server is
sending any replication logs to the specified server to bring it up
to date. This will happen every replicationInterval seconds, where
replicationInterval defaults to 5 seconds. It should probably just
be a INFO level message. You can change the replicationInterval
with:
<bean class="org.apache.directory.mitosis.service.ReplicationService">
<property name="configuration">
<bean
class="org.apache.directory.mitosis.configuration.ReplicationConfiguration">
<property name="replicationInterval" value="60" />
...
It looks like you are using port 389 as the replication port. The
replication port needs to be different to your normal LDAP server
port. I'm a bit surprised that it lets you do this - it's either
doing some magic to share the port with the LDAP service or the
replication service has closed the LDAP service port.
Martin
Markus Pohle <[EMAIL PROTECTED]> 04/06/2007 12:42 >>>
Hi All,
hi Martin.
Thanks for the tip. Tried that sample configuration within the
server.xml file. Only edited servername/ip and port for the two
instances. But this, configured right in my opinion, always throw an
error on starting apacheds and apacheds server terminated and will not
run!
Then, Martin, I used your sample configuration. Now I was able to
start both ApacheDS Servers. But, I do get warnings and error messages.
The warnings I do get within apacheds-rolling.log on server1 is:
[13:20:28] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds4.douglas-informatik.de/172.28.192.12:389] Starting a partial replication
log
transfer.
The warning is the same in apacheds-rolling.log on server2:
[13:34:37] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationClientProtocolHandler] - [apacheds3.douglas-informatik.de/172.28.192.11:389] Starting a partial replication
log
transfer.
The error message I do get is the following and occurs when I try to
connect thru LDAP Studio (or any other ldap client) to either the one
or the other of the replicant ldap servers:
[13:39:35] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationServerProtocolHandler] - [/172.16.160.63:3726]
Unexpected
exception.
org.apache.mina.filter.codec.ProtocolDecoderException: No appropriate
message decoder: 30 25 02 01 01 60 20 02 01 03 04 13 75 69 64 3D 61 64
6D 69 6E 2C 6F 75 3D 73 79 73 74 65 6D 80 06 73 65 63 72 65 74
(Hexdump: empty)
at
org.apache.mina.filter.codec.demux.DemuxingProtocolCodecFactory$ProtocolDecoderImpl.doDecode(DemuxingProtocolCodecFactory.java:314)
at
org.apache.mina.filter.codec.CumulativeProtocolDecoder.decode(CumulativeProtocolDecoder.java:137)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:163)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
[13:39:35] WARN
[org.apache.directory.mitosis.service.protocol.handler.ReplicationServerProtocolHandler] - [/172.16.160.63:3726]
Unexpected
exception.
java.lang.NullPointerException
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationServerContextHandler.contextEnd(ReplicationServerContextHandler.java:72)
at
org.apache.directory.mitosis.service.protocol.handler.ReplicationProtocolHandler.sessionClosed(ReplicationProtocolHandler.java:98)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.sessionClosed(AbstractIoFilterChain.java:677)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
at
org.apache.mina.filter.LoggingFilter.sessionClosed(LoggingFilter.java:70)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.sessionClosed(ProtocolCodecFilter.java:286)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:265)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
So, why I am no longer able to bind to ldap server when replication is
configured? Can anybody help me with that? Help is really appreciated.
TIA,
Markus Pohle
--
WEBUNITY - Internet, Consulting, Neue Medien
Markus Pohle (SCJP)
GPG Public Key Block available at:
http://www.webunity.de/[EMAIL PROTECTED]