[jboss-jira] [JBoss JIRA] (WFLY-11374) Master Artemis in Wildfly 10.1.0.Final is not announcing backup when restarted
Srinivas ev (Jira)
issues at jboss.org
Wed Nov 28 09:31:01 EST 2018
[ https://issues.jboss.org/browse/WFLY-11374?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13667515#comment-13667515 ]
Srinivas ev commented on WFLY-11374:
------------------------------------
copied whole content of .sh file to avoid reopening ticket --
#!/bin/sh
#
# WildFly control script
#
# chkconfig: - 80 20
# description: WildFly startup script
# processname: wildfly
# pidfile: /var/run/wildfly/wildfly.pid
# config: /etc/default/wildfly.conf
#
chown -R myprojectfsw:gmyprojectfsw /opt/myproject/LIVEQ
export JBOSS_HOME="/opt/myproject/LIVEQ/wildfly"
export JBOSS_USER=myprojectfsw
export JBOSS_MODE=standalone
export JBOSS_CONFIG=standalone-full-ha.xml
export STARTUP_WAIT=60
export SHUTDOWN_WAIT=60
export JBOSS_CONSOLE_LOG=$JBOSS_HOME/bin/console.log
export LAUNCH_JBOSS_IN_BACKGROUND=1
export JBOSS_MODULEPATH=$JBOSS_BASE_DIR/modules:$JBOSS_HOME/modules
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0
export LOG_FILE=$JBOSS_HOME/log/jboss-console.log
export JBOSS_PIDFILE=$JBOSS_HOME/jboss-as-standalone-LIVEQ.pid
export MALLOC_ARENA_MAX=4
export myproject_CONF=" -b {my system ip} -bmanagement {my system ip} -Djboss.bind.address.private={my system ip} -Djboss.server.default.config=$JBOSS_CONFIG -Djboss.server.log.dir=/var/log/myproject/serverlogs -Dmyproject_CONFIG_DIR=/opt/myproject/LIVEQ/conf -Dmyproject_DEPLOYMENT_DIR=/opt/myproject/LIVEQ/wildfly/standalone/deployments -Dmyproject_JDK_HOME=/usr/lib/jvm/java-1.8.0-openjdk -Dmyproject_HOME=/opt/myproject/LIVEQ/ -u 231.71.73.75 -Djboss.messaging.group.address=231.71.73.75 -Djboss.messaging.group.port=9855 -Djboss.socket.binding.port-offset=4000 -Djboss.node.name=myproject4dev2fm1-LIVEQ -Djboss.hostname=myproject4dev2fm1 -Dmyproject_BIN=/opt/myproject/LIVEQ/bin -Dmyproject_RELEASE_VERSION=17.12-SNAPSHOT -Djboss.trace.log.dir=/var/log/myproject/traces -Djboss.logs.log.dir=/var/log/myproject/logs -Dhornetq.enforce.maxreplica=false"
#export myproject_CONF=" -b 135.250.138.191 -bmanagement 135.250.138.191"
# Source function library.
. /etc/init.d/functions
# Load Java configuration.
[ -r /etc/java/java.conf ] && . /etc/java/java.conf
export JAVA_HOME
#WILDFLY_NAME=$(basename ${0})
WILDFLY_NAME=myproject_LIVEQ_service
JBOSS_LOCKFILE=/opt/myproject/LIVEQ/${WILDFLY_NAME}
# Load JBoss AS init.d configuration.
if [ -z "$JBOSS_CONF" ]; then
JBOSS_CONF="/etc/default/${WILDFLY_NAME}.conf"
fi
[ -r "$JBOSS_CONF" ] && . "${JBOSS_CONF}"
# Set defaults.
if [ -z "$JBOSS_HOME" ]; then
JBOSS_HOME=/opt/${WILDFLY_NAME}
fi
export JBOSS_HOME
if [ -z "$JBOSS_PIDFILE" ]; then
JBOSS_PIDFILE=/var/run/${WILDFLY_NAME}/wildfly.pid
fi
export JBOSS_PIDFILE
if [ -z "$JBOSS_CONSOLE_LOG" ]; then
JBOSS_CONSOLE_LOG=/var/log/${WILDFLY_NAME}/console.log
fi
if [ -z "$STARTUP_WAIT" ]; then
STARTUP_WAIT=30
fi
if [ -z "$SHUTDOWN_WAIT" ]; then
SHUTDOWN_WAIT=30
fi
if [ -z "$JBOSS_LOCKFILE" ]; then
JBOSS_LOCKFILE=/var/lock/subsys/${WILDFLY_NAME}
fi
# Startup mode of wildfly
if [ -z "$JBOSS_MODE" ]; then
JBOSS_MODE=standalone
fi
# Startup mode script
if [ "$JBOSS_MODE" = "standalone" ]; then
JBOSS_SCRIPT=$JBOSS_HOME/bin/standalone.sh
if [ -z "$JBOSS_CONFIG" ]; then
JBOSS_CONFIG=standalone.xml
fi
JBOSS_MARKERFILE=$JBOSS_HOME/standalone/tmp/startup-marker
else
JBOSS_SCRIPT=$JBOSS_HOME/bin/domain.sh
if [ -z "$JBOSS_DOMAIN_CONFIG" ]; then
JBOSS_DOMAIN_CONFIG=domain.xml
fi
if [ -z "$JBOSS_HOST_CONFIG" ]; then
JBOSS_HOST_CONFIG=host.xml
fi
JBOSS_MARKERFILE=$JBOSS_HOME/domain/tmp/startup-marker
fi
prog=${WILDFLY_NAME}
currenttime=$(date +%s%N | cut -b1-13)
start() {
echo -n "Starting $prog: "
if [ -f $JBOSS_PIDFILE ]; then
read ppid < $JBOSS_PIDFILE
if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
echo -n "$prog is already running"
failure
echo
return 1
else
rm -f $JBOSS_PIDFILE
fi
fi
mkdir -p $(dirname $JBOSS_CONSOLE_LOG)
cat /dev/null > $JBOSS_CONSOLE_LOG
rm -rf $JBOSS_HOME/standalone/tmp
rm -rf $JBOSS_HOME/standalone/data
mkdir -p $(dirname $JBOSS_PIDFILE)
chown $JBOSS_USER $(dirname $JBOSS_PIDFILE) || true
if [ ! -z "$JBOSS_USER" ]; then
if [ "$JBOSS_MODE" = "standalone" ]; then
if [ -r /etc/rc.d/init.d/functions ]; then
cd $JBOSS_HOME
nohup $JBOSS_SCRIPT $myproject_CONF > $LOG_FILE 2>&1 &
cd -
else
su - $JBOSS_USER -c "LAUNCH_JBOSS_IN_BACKGROUND=1 JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT -c $JBOSS_CONFIG" 2>&1 > $JBOSS_CONSOLE_LOG &
fi
fi
fi
count=0
launched=false
until [ $count -gt $STARTUP_WAIT ]
do
sleep 1
let count=$count+1;
if [ -f $JBOSS_MARKERFILE ]; then
markerfiletimestamp=$(grep -o '[0-9]*' $JBOSS_MARKERFILE) > /dev/null
if [ "$markerfiletimestamp" -gt "$currenttime" ] ; then
grep -i 'success:' $JBOSS_MARKERFILE > /dev/null
if [ $? -eq 0 ] ; then
launched=true
break
fi
fi
fi
done
if [ "$launched" = "false" ] ; then
echo "$prog started with errors, please see server log for details"
fi
touch $JBOSS_LOCKFILE
success
echo
return 0
}
stop() {
echo -n $"Stopping $prog: "
count=0;
if [ -f $JBOSS_PIDFILE ]; then
read kpid < $JBOSS_PIDFILE
let kwait=$SHUTDOWN_WAIT
# Try issuing SIGTERM
kill -15 $kpid
until [ `ps --pid $kpid 2> /dev/null | grep -c $kpid 2> /dev/null` -eq '0' ] || [ $count -gt $kwait ]
do
sleep 1
let count=$count+1;
done
if [ $count -gt $kwait ]; then
kill -9 $kpid
fi
fi
rm -f $JBOSS_PIDFILE
rm -f $JBOSS_LOCKFILE
sed -i '/<deployments>/,/<\/deployments>/d' $JBOSS_HOME/standalone/configuration/standalone-full-ha.xml
sed -i '/<deployment-overlays>/,/<\/deployment-overlays>/d' $JBOSS_HOME/standalone/configuration/standalone-full-ha.xml
success
echo
}
status() {
if [ -f $JBOSS_PIDFILE ]; then
read ppid < $JBOSS_PIDFILE
if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
echo "$prog is running (pid $ppid)"
return 0
else
echo "$prog dead but pid file exists"
return 1
fi
fi
echo "$prog is not running"
return 3
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
$0 stop
$0 start
;;
status)
status
;;
*)
## If no parameters are given, print which are avaiable.
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
> Master Artemis in Wildfly 10.1.0.Final is not announcing backup when restarted
> ------------------------------------------------------------------------------
>
> Key: WFLY-11374
> URL: https://issues.jboss.org/browse/WFLY-11374
> Project: WildFly
> Issue Type: Bug
> Components: JMS
> Affects Versions: 10.1.0.Final
> Reporter: Srinivas ev
> Assignee: Jeff Mesnil
> Priority: Blocker
> Attachments: active standalone full ha.xml, master and slave log samples on startup.txt, master restart.txt, master shutdown.txt, master-server-linux.log, master-server-windows.log, master.xml, rotateserver_active.log, rotateserver_active.log, rotateserver_backup.log, rotateserver_slave.log, slave standalone full ha.xml, slave-server-linux.log, slave-server-windows.log, slave.xml
>
>
> I have 2 wildfly servers acting as artemis master and slave. I am expecting failback and replication and the related configurations are done for this to work.
> This is working as expected when I have the setup in Windows. Failing in linux RHEL 7.3 machine.
> master in standalone-full-ha.xml - refer master.xml
> slave in standalone-full-ha.xml - refer slave.xml
> In the startup script, I am passing all the values for placeholders of my server host ip's accordingly.
> Test scenario -
> 1. Bring master up.
> 2. Bring slave up.
> 3. slave will announce the backup. (AMQ221031: backup announced).
> 4. Make master down.
> 5. Replication is success.
> 6. Slave is acting as master/live.
> 7. Make master up.
> Issue - master is unable to announce the backup and starts normally as a standalone wildfly.
> This backup announcement works fine in windows and failover also works as expected.
> Please let me know if anything specific required along with this details.
> Artemis jar version - artemis-*****-1.1.0.wildfly-017.jar
> in path - /opt/aor/${my project}/wildfly/modules/system/layers/base/org/apache/activemq/artemis/main
> Few logs I found which may be impacting and I am not clear -
> 1.2018-11-21 14:28:07,238 TRACE [org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionBridge] (Thread-18 (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$2 at 38e819b6-2112524495)) Setting up bridge between TransportConfiguration(name=http-connector, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?httpUpgradeEnabled=true&httpPpgradeEndpoint=http-acceptor&port=12080&host=135-250-139-30 and ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=http-connector, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?httpUpgradeEnabled=true&httpPpgradeEndpoint=http-acceptor&port=12080&host=135-250-139-41], discoveryGroupConfiguration=null]: java.lang.Exception: trace
> at org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionBridge.<init>(ClusterConnectionBridge.java:129)
> at org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl.createNewRecord(ClusterConnectionImpl.java:778)
> at org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl.nodeUP(ClusterConnectionImpl.java:698)
> at org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:264)
> at org.apache.activemq.artemis.utils.OrderedExecutorFactory$OrderedExecutor$ExecutorTask.run(OrderedExecutorFactory.java:103)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> 2.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
More information about the jboss-jira
mailing list