diff --git a/dist/redhat/build_rpm.sh b/dist/redhat/build_rpm.sh index 1184a4b..63b7df1 100755 --- a/dist/redhat/build_rpm.sh +++ b/dist/redhat/build_rpm.sh @@ -18,4 +18,4 @@ cp dist/redhat/scylla-jmx.spec.in $RPMBUILD/SPECS/scylla-jmx.spec sed -i -e "s/@@VERSION@@/$SCYLLA_VERSION/g" $RPMBUILD/SPECS/scylla-jmx.spec sed -i -e "s/@@RELEASE@@/$SCYLLA_RELEASE/g" $RPMBUILD/SPECS/scylla-jmx.spec rpmbuild -bs --define "_topdir $RPMBUILD" -ba $RPMBUILD/SPECS/scylla-jmx.spec -mock rebuild --resultdir=`pwd`/build/rpms $RPMBUILD/SRPMS/scylla-jmx-$VERSION*.src.rpm +/usr/bin/mock rebuild --resultdir=`pwd`/build/rpms $RPMBUILD/SRPMS/scylla-jmx-$VERSION*.src.rpm diff --git a/dist/redhat/scylla-jmx.spec.in b/dist/redhat/scylla-jmx.spec.in index 5c3a068..ec3dd3e 100644 --- a/dist/redhat/scylla-jmx.spec.in +++ b/dist/redhat/scylla-jmx.spec.in @@ -38,6 +38,15 @@ install -m755 dist/redhat/scripts/* $RPM_BUILD_ROOT%{_prefix}/lib/scylla/jmx %pre /usr/sbin/groupadd scylla 2> /dev/null || : /usr/sbin/useradd -g scylla -s /sbin/nologin -r -d ${_sharedstatedir}/scylla scylla 2> /dev/null || : +ping -c1 `hostname` > /dev/null 2>&1 +if [ $? -ne 0 ]; then +echo +echo "**************************************************************" +echo "* WARNING: You need to add hostname on /etc/hosts, otherwise *" +echo "* scylla-jmx will not able to start up. *" +echo "**************************************************************" +echo +fi %post %systemd_post scylla-jmx.service diff --git a/src/main/java/org/apache/cassandra/locator/EndpointSnitchInfo.java b/src/main/java/org/apache/cassandra/locator/EndpointSnitchInfo.java index 1639bbc..b34250e 100644 --- a/src/main/java/org/apache/cassandra/locator/EndpointSnitchInfo.java +++ b/src/main/java/org/apache/cassandra/locator/EndpointSnitchInfo.java @@ -18,6 +18,7 @@ package org.apache.cassandra.locator; import java.lang.management.ManagementFactory; +import java.net.InetAddress; import java.net.UnknownHostException; import javax.management.MBeanServer; @@ -63,6 +64,9 @@ public class EndpointSnitchInfo implements EndpointSnitchInfoMBean { public String getRack(String host) throws UnknownHostException { log("getRack(String host) throws UnknownHostException"); MultivaluedMap queryParams = new MultivaluedMapImpl(); + if (host == null) { + host = InetAddress.getLoopbackAddress().getHostAddress(); + } queryParams.add("host", host); return c.getStringValue("/snitch/rack", queryParams); } @@ -77,6 +81,9 @@ public class EndpointSnitchInfo implements EndpointSnitchInfoMBean { public String getDatacenter(String host) throws UnknownHostException { log(" getDatacenter(String host) throws UnknownHostException"); MultivaluedMap queryParams = new MultivaluedMapImpl(); + if (host == null) { + host = InetAddress.getLoopbackAddress().getHostAddress(); + } queryParams.add("host", host); return c.getStringValue("/snitch/datacenter", queryParams); }