Set cassandra port for nodetool and sstableloader cmds
Fix connectivity issue to cassandra server(s) in case of
using of non-default native and transport ports.
Change-Id: I1cfac59b3232818e1252b6f41ddd662805fb2efe
Related-PROD: PROD-31354
diff --git a/cassandra/files/backup/cassandra-backup-client-restore.sh b/cassandra/files/backup/cassandra-backup-client-restore.sh
index ac260d1..2820a59 100644
--- a/cassandra/files/backup/cassandra-backup-client-restore.sh
+++ b/cassandra/files/backup/cassandra-backup-client-restore.sh
@@ -153,6 +153,8 @@
else
CASIP=$listen_address
fi
+
+ CASPORT="${native_transport_port:-9042}"
break
fi
done
@@ -265,7 +267,7 @@
# Use CQL version in environment, if available
[ -z $CQLVER ] && CQLSHVER="" || CQLSHVER="--cqlversion=$CQLVER"
- OUTPUT=$( cqlsh -f $CLITMPFILE $CQLSHVER $CASIP 2>&1 )
+ OUTPUT=$( cqlsh -f $CLITMPFILE $CQLSHVER $CASIP $CASPORT 2>&1 )
RC=$?
if [ $RC -eq 0 ] && grep -qi 'CREATE KEYSPACE '$NEWKSNAME' ' <<< $OUTPUT; then
@@ -282,7 +284,7 @@
printf "Reported versions are ${SUPPORTED[@]}. Attempting with ${CQLVER}.\n"
continue
elif grep -qi 'connection error\|not connect' <<< $OUTPUT; then
- printf "ERROR: Unable to connect to Cassandra at ${CASIP}.\n"
+ printf "ERROR: Unable to connect to Cassandra at ${CASIP} via ${CASPORT} port.\n"
[ "$TEMPDIR" != "/" ] && rm -rf "$TEMPDIR"
exit 1
elif [ $RC -eq 1 ]; then
@@ -301,11 +303,11 @@
sleep 5
# Create schema for the new keyspace
- cqlsh -f "$SCHEMAFILE" $CQLSHVER $CASIP
+ cqlsh -f "$SCHEMAFILE" $CQLSHVER $CASIP $CASPORT
printf " Loading snapshot into keyspace $NEWKSNAME\n"
for columnfamily in `ls "${TEMPDIR}/${NEWKSNAME}"`; do
- sstableloader -d $CASIP "${TEMPDIR}/${NEWKSNAME}/${columnfamily}"
+ sstableloader -d "${CASIP}" -p "${CASPORT}" -f "${YAMLFILE}" "${TEMPDIR}/${NEWKSNAME}/${columnfamily}"
done
printf "\n\nImport operation complete - check output for errors\n"