[
https://issues.apache.org/jira/browse/TRAFODION-2649?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16059795#comment-16059795
]
ASF GitHub Bot commented on TRAFODION-2649:
-------------------------------------------
Github user svarnau commented on a diff in the pull request:
https://github.com/apache/incubator-trafodion/pull/1138#discussion_r123584263
--- Diff: core/sqf/sql/scripts/rmscheck ---
@@ -21,7 +21,28 @@
#
# @@@ END COPYRIGHT @@@
#
-# Most of this was stolen from WMScheck... which may have started as
NDCScheck
+
+if [ -z $TRAF_HOME ]; then
+ echo
+ echo "The TRAF_HOME environment variable does not exist."
+ echo "Please ensure sqenv.sh has been sourced."
+ echo
+ exit 1;
+fi
+
+# Check whether the Trafodion environment up.
+sqcheck -i 1 -d 1 > /dev/null 2>&1
+sq_stat=$?
+if [[ $sq_stat == 255 ]]; then
+ echo "The Trafodion environment is down. Exiting..."
+ exit 1
+fi
+
+# Generate the 'rmscheck.sql' file
+temp_rmscheck_sql=`mktemp -t`
+sqgenrmscheck $temp_rmscheck_sql
+echo temp_rmscheck_sql=$temp_rmscheck_sql
echo "Timestamp Id Status "
-sqlci -i $TRAF_HOME/sql/scripts/rmscheck.sql | grep 'Node\|ERROR' | grep
-v varchar
+sqlci -i $temp_rmscheck_sql | grep 'Node\|ERROR' | grep -v varchar
+rm -f $temp_rmscheck_sql
--- End diff --
Would it be easier to generate commands to stdin of sqlci instead of using
a temp file?
> Method used in 'rmscheck' script for obtaining status is incompatible with
> elasticity
> -------------------------------------------------------------------------------------
>
> Key: TRAFODION-2649
> URL: https://issues.apache.org/jira/browse/TRAFODION-2649
> Project: Apache Trafodion
> Issue Type: Bug
> Components: foundation
> Affects Versions: 2.2-incubating
> Reporter: Gonzalo E Correa
> Assignee: Gonzalo E Correa
> Fix For: 2.2-incubating
>
>
> The 'sqgen' scripts generate the 'rmscheck.sql' input file invoke by sqlci
> through the rmscheck script. The cluster membership is derived at 'sqgen'
> time which uses the existing node membership at a point in time. Since the
> node membership of the cluster can change at any time after the 'sqgen'
> invocation, the 'rmscheck.sql' input is by definition obsolete when the node
> membership changes, i.e., nodes are added or deleted.
> A different method for obtaining rms status must be implemented.
> The current method generates the following contents of the 'rmschecl.sql'
> input file:
> cat rmscheck.sql
> -- SQ config/utility file generated @ Thu Jun 01 14:00:58 2017
> prepare rms_check from select current_timestamp,
> cast('Node' as varchar(5)),
> cast(tokenstr('nodeId:', variable_info) as varchar(3)) node,
> cast(tokenstr('Status:', variable_info) as varchar(10)) status
> from table(statistics(null, ?));
> execute rms_check using 'RMS_CHECK=0' ;
> execute rms_check using 'RMS_CHECK=1' ;
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)