[ https://issues.apache.org/jira/browse/AMQ-5549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14296863#comment-14296863 ]
Torsten Mielke edited comment on AMQ-5549 at 1/29/15 2:42 PM: -------------------------------------------------------------- Hi, the config {code:xml} <kahaDB directory="${activemq.data}/kahadb" lockKeepAlivePeriod="15000"> <locker> <shared-file-locker lockAcquireSleepInterval="5000"/> </locker> </kahaDB> {code} has an error. lockKeepAlivePeriod should be much lower than lockAcquireSleepInterval (at max half of lockAcquireSleepInterval, perhaps even below that). {code:xml} <levelDB directory="/nfs-import/leveldb" lockKeepAlivePeriod="5000"> <locker> <shared-file-locker lockAcquireSleepInterval="10000"/> </locker> </levelDB> {code} You also want to explicitly configure for restartAllowed="false" on the broker config. Finally, what are your mount options? We have learned the mount options used play a significant role. was (Author: tmielke): Hi, the config {code:xml} <kahaDB directory="${activemq.data}/kahadb" lockKeepAlivePeriod="15000"> <locker> <shared-file-locker lockAcquireSleepInterval="5000"/> </locker> </kahaDB> {code} has an error. lockKeepAlivePeriod should be much lower than lockAcquireSleepInterval (at max half of lockAcquireSleepInterval, perhaps even below that). {code:xml} <levelDB directory="/nfs-import/leveldb" lockKeepAlivePeriod="5000"> <locker> <shared-file-locker lockAcquireSleepInterval="10000"/> </locker> </levelDB> {code} You also want to explicitly configure for restartAllowed="false" on the broker config. Finally, what are your mount options? We have learned the mount options used play a significant role. > Shared Filesystem Master/Slave using NFSv4 allows both brokers become active > at the same time > --------------------------------------------------------------------------------------------- > > Key: AMQ-5549 > URL: https://issues.apache.org/jira/browse/AMQ-5549 > Project: ActiveMQ > Issue Type: Bug > Components: Broker, Message Store > Affects Versions: 5.10.1 > Environment: - CentOS Linux 6 > - OpenJDK 1.7 > - ActiveMQ 5.10.1 > Reporter: Heikki Manninen > Priority: Critical > > Identical ActiveMQ master and slave brokers are installed on CentOS Linux 6 > virtual machines. There is a third virtual machine (also CentOS 6) providing > an NFSv4 share for the brokers KahaDB. > Both brokers are started and the master broker acquires file lock on the lock > file and the slave broker sits in a loop and waits for a lock as expected. > Also changing brokers work as expected. > Once the network connection of the NFS server is disconnected both master and > slave NFS mounts block and slave broker stops logging file lock re-tries. > After a short while after bringing the network connection back the mounts > come back and the slave broker is able to acquire the lock simultaneously. > Both brokers accept client connections. > In this situation it is also possible to stop and start both individual > brokers many times and they are always able to acquire the lock even if the > other one is already running. Only after stopping both brokers and starting > them again is the situation back to normal. > * NFS server: > ** CentOS Linux 6 > ** NFS v4 export options: rw,sync > ** NFS v4 grace time 45 seconds > ** NFS v4 lease time 10 seconds > * NFS client: > ** CentOS Linux 6 > ** NFS mount options: nfsvers=4,proto=tcp,hard,wsize=65536,rsize=65536 > * ActiveMQ configuration (otherwise default): > {code:xml} > <persistenceAdapter> > <kahaDB directory="${activemq.data}/kahadb"> > <locker> > <shared-file-locker lockAcquireSleepInterval="1000"/> > </locker> > </kahaDB> > </persistenceAdapter> > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)