Bug #608

Updated by Madars over 3 years ago

- Scenario, cli parse fails:

<pre>
$ xadmin
Enduro/X 7.5.6, build Nov 22 2020 17:54:51, using emq for LINUX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1> dping
* Shared resources opened...
* ndrxd PID (from PID file): 5816
loop 0: ndrxd_ping_seq=1 time=0 ms
loop 1: ndrxd_ping_seq=2 time=0 ms
loop 2: ndrxd_ping_seq=3 time=0 ms
loop 3: ndrxd_ping_seq=4 time=0 ms
NDRX 1> dping -c 1000
* ndrxd PID (from PID file): 5816
loop 0: ndrxd_ping_seq=5 time=0 ms
loop 1: ndrxd_ping_seq=6 time=0 ms
cx^C
20:26:36 mvitolin@jimbopc /home/mvitolin/projects/endurox
$ ^C
20:26:36 mvitolin@jimbopc /home/mvitolin/projects/endurox
$ xadmin
Enduro/X 7.5.6, build Nov 22 2020 17:54:51, using emq for LINUX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1> dping -c111
* Shared resources opened...
* ndrxd PID (from PID file): 5816
loop 0: ndrxd_ping_seq=1 time=0 ms
loop 1: ndrxd_ping_seq=2 time=0 ms
^C
20:26:40 mvitolin@jimbopc /home/mvitolin/projects/endurox
$ xadmin
Enduro/X 7.5.6, build Nov 22 2020 17:54:51, using emq for LINUX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1> dping
* Shared resources opened...
* ndrxd PID (from PID file): 5816
loop 0: ndrxd_ping_seq=1 time=0 ms
loop 1: ndrxd_ping_seq=2 time=0 ms
loop 2: ndrxd_ping_seq=3 time=0 ms
loop 3: ndrxd_ping_seq=4 time=0 ms
NDRX 1> quit
20:27:10 mvitolin@jimbopc /home/mvitolin/projects/endurox
$ xadmin
Enduro/X 7.5.6, build Nov 22 2020 17:54:51, using emq for LINUX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1> star t-y
Command `star' not found!
NDRX 1> start -y
* Shared resources opened...
* ndrxd PID (from PID file): 5816
exec tpevsrv -k 0myWI5nu -i 300 -e /tmp/TPEVSRV -r -N -s@TPEVPOST -- :
process id=6845 ... Died.
exec atmi.sv20_1 -k 0myWI5nu -i 1600 -e /tmp/ATMISV20_1 -r -- :
process id=6848 ... No such file or directory.
exec atmi.sv20_1 -k 0myWI5nu -i 1601 -e /tmp/ATMISV20_1 -r -- :
process id=6850 ... No such file or directory.
exec tmsrv -k 0myWI5nu -i 1650 -e /tmp/tmsrv-dom1.log -r -- -t1 -l/tmp -- :
process id=6852 ... Died.
exec tmqueue -k 0myWI5nu -i 1660 -e /tmp/tmqueue-dom1.log -r -- -m MYSPACE -s1 -- :
process id=6855 ... Died.
exec cconfsrv -k 0myWI5nu -i 1700 -e /tmp/CCONF -- :
process id=6858 ... Died.
Startup finished. 0 processes started.
NDRX 1> psc
* ndrxd PID (from PID file): 5816
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 TIMEOUTSV TIMEOUTSV atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 TESTSV TESTSVFN atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 NULLSV NULLSV atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 ECHO ECHO atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 RETSOMEDATA RETSOMEDATA atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 UNIXINFO UNIXINFO atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 UNIX2 UNIX2 atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 SLEEP20 SLEEP20 atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 SOFTTOUT SOFTTOUT atmi.sv1 1400 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1> help
COMMAND DESCR
------- ------------------------------------------------------------------------
quit Quit from command line utility

q Alias for `quit'

exit Alias for `quit'

echo Echo text back to terminal

idle Enter daemon process in idle state (if not started)

help Print help (this output)
args: help [command]

h Alias for `help'

info Alias for `help'

stat Prints general status information

ldcf Load configuration

start Start application domain
Also loads configuration automatically.
args: start [-y] [-s <server>] [-i <srvid>]

psc Print services
args: psc [-s]
-s : print full service name

stop Stop application domain
args: stop [-y] [-c]|[-s <server>] [-i <srvid>] [-k] [-f]

down Force App Server shutdown & resources cleanup
Usage: down [OPTION]...
Optional arguments:
-y Do not ask for confirmation
-u Remove user resources by username

udown Remove resources by username
Usage: udown [OPTION]...
Optional arguments:
-y Do not ask for confirmation

cat Attached to ndrxd user session in progress

reload Load new configuration

testcfg Test new configuration

unadv Un-advertise service.
args: unadv -i server_id -s service_name

readv Re-advertise service.
args: readv -i server_id -s service_name
might be usable if service Q was unlinked

restart Restart app or service (invokes start & stop with same args!)

r Alias for `restart'

-v Print version info

ver Print version info, same as -v

ppm Print process model
Usage ppm [OPTION]...
-2 Print Page 2

psvc Shared mem, print services
args: psvc [-r]
-r : for System V or Poll mode print resource identifers (msgid or pid)

psrv Shared mem, print servers

cabort Abort app shutdown or startup.
args: abort [-y]

sreload Restarts server instance by instance
Args: sreload [-y] [-s <server>] [-i <srvid>]

sr Alias for `sreload'

pq Print service queues

pqa Print all queues
args: pqa [-a]
-a - print all queues (incl. other local systems)

pt Print transactions

printtrans Alias for `pt'

abort Abort transaction
args: abort -t <RM Ref> -x <XID> [-g <Group No>] [-y]

aborttrans Alias for `abort'

commit Commit transaction
args: commit -t <RM Ref> -x <XID> [-y]

committrans Alias for `commit'

recoverlocal Print local local in-doubt transactions
args: recoverlocal [-s <TM SERVICE>] [-p]
-s - TMSRV which to query for transactions
-p - Parse XID and print details

commitlocal Commit local in-doubt transaction
args: commitlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-s - TMSRV which serves transaction
-x - particular XID
-y - confirm
-p - Parse XID and print details

abortlocal Abort local in-doubt transaction
args: abortlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

forgetlocal Abort local in-doubt transaction
args: forgetlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

pe Print env (from ndrxd)

printenv Alias for `pe'

set Set env variable.
Format: VAR=SOME VALUE (will be contact with spaces)

unset Set env variable. Forma: VAR

pc Print clients

sc Stop client
args: sc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

bc Boot(start) client
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

rc Reload/Restart clients one-by-one
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

mqlc List persistent queue configuration

mqlq List persistent queues (active/dynamic)

mqrc Reload TMQ config

mqlm List messages in q
args: mqlm -s <QSpace> -q <QName>

mqdm Dump/peek message to stdout
args: mqdm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqch Change queue config (runtime only)
args: mqch -n <Cluster node id> -i <Server ID> -q <Q def (conf format)>

mqrm Remove message from Q space
args: mqrm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqmv Move message to different qspace/qname
args: mqmv -n <Source cluster node id> -i <Source server ID>
-m <Source Message ID> -s <Dest qspace> -q <Dest qname>

killall Kill all processes (in ps -ef) matching the name
args: killall <name1> <name2> ... <nameN>

qrm Remove specific queue
args: qrm <qname1> <qname2> ... <qnameN>

qrmall Remove queue matching the substring
args: qrmall <substr1> <substr2> ... <substrN>

provision Prepare initial Enduro/X instance environment
args: provision [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]

gen Generate sources
args: gen <target> <type> [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]
tagets/types available:
go server
go client
c server
c client
java server
java client
ubf tab
test local

cs Cache show
args: cs <cache_db_name>|-d <cache_db_name>

cacheshow Alias for `cs'

cd Dump message in cache
args: cd -d <dbname> -k <key> [-i interpret_result]

cachedump Alias for `cd'

ci Invalidate cache
args: ci -d <dbname> [-k <key>][-r use_regexp]

cacheinval Alias for `ci'

svqids Print System V user queue ids
Usage: svqids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

svsemids Print System V user semaphore ids
Usage: svsemids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

pubfdb Print UBF custom fields (from DB)

poller Print active poller sub-system

shms Print shared memory segments

pmode Print Enduro/X build environment (ndrx_config.h)

ps List processes
Usage: ps [OPTION]...
Optional arguments:
-a FILTER1 First filter (grep style)
-b FILTER2 Second filter
-c FILTER3 Third filter
-d FILTER4 Forth filter
-r FILTER_REX Posix regexp filter
-p Print PIDs only
-m Print memory stats (pid), -p mode only (pid:rss:vsz in kb)
-x PID Exclude specific pid

appconfig Change/get ndrxd application cfg dynamically
Usage: appconfig SETTING [NEWVALUE]
Possible SETTING values:
sanity Sanity check period (seconds), number
checkpm Process model check sanity cycles, number
brrefresh Number of sanity units to send full bridge refreshes
restart_min Number of sanity units after which respawn died server
restart_step Number of sanity units increment for died server respawn
restart_max Max number of sanity units for died server respawn
restart_to_check Number of seconds for ndrxd to learn about
system after recovery start of ndrxd
gather_pq_stats Gather queue stats, Y/N
rqaddrttl Number of seconds for System V Request Address
to live with out servers

dping Ping `ndrxd' process
Usage: dping [OPTION]...
Optional arguments:
-c Number of pings (default 4)

dpid Print ndrxd PID from pid file

dsleep Put ndrxd in sleep (disable activity for time period), for debug
Usage: dsleep SLEEP_SECONDS

mibget Dump message in cache
args: mibget -c <T_CLASS> [-m]
-m Machine output
-c T_CLIENT|T_DOMAIN|T_MACHINE|T_QUEUE|T_SERVER|T_SERVICE|T_SVCGRP

NDRX 1> dpng
Command `dpng' not found!
NDRX 1> dping
* ndrxd PID (from PID file): 5816
loop 0: ndrxd_ping_seq=1 time=0 ms
loop 1: ndrxd_ping_seq=2 time=0 ms
loop 2: ndrxd_ping_seq=3 time=2 ms
loop 3: ndrxd_ping_seq=4 time=0 ms
NDRX 1> dping -c1000
* ndrxd PID (from PID file): 5816
dping: invalid option -- '1'
Invalid options, see `help'.
NDRX 1>

</pre>

Problems with shared memory:

<pre>

-5.0$ xadmin
Enduro/X 7.5.6, build Nov 3 2020 12:28:40, using svapoll for AIX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1>
NDRX 1>
NDRX 1> stop -y
* Shared resources opened...
* Enduro/X back-end (ndrxd) is not running
WARNING ! `ndrxd' daemon is in `not started', use -f to force shutdown!
NDRX 1> q
bash-5.0$ xadmin
Enduro/X 7.5.6, build Nov 3 2020 12:28:40, using svapoll for AIX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1> psc
* Shared resources opened...
* Enduro/X back-end (ndrxd) is not running
* ndrxd PID (from PID file): 29753670
* ndrxd idle instance started.
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
NDRX 1> star t-y
Command `star' not found!
NDRX 1> start -y
* ndrxd PID (from PID file): 29753670
exec tprecover -k 0myWI5nu -i 1 -e /tmp/RECOVER -r -- -c10 :
process id=12845436 ... Started.
exec tpevsrv -k 0myWI5nu -i 300 -e /tmp/TPEVSRV -r -N -s@TPEVPOST -- :
process id=37945802 ... Died.
exec tpadmsv -k 0myWI5nu -i 310 -e /tmp/AD -r -- :
process id=37945804 ... Started.
exec atmi.sv1 -k 0myWI5nu -i 1400 -e /tmp/ATMISV1 -r -- :
process id=38076784 ... No such file or directory.
exec atmi.sv20_1 -k 0myWI5nu -i 1600 -e /tmp/ATMISV20_1 -r -- :
process id=38076786 ... No such file or directory.
exec atmi.sv20_1 -k 0myWI5nu -i 1601 -e /tmp/ATMISV20_1 -r -- :
process id=38994384 ... No such file or directory.
exec tmsrv -k 0myWI5nu -i 1650 -e /tmp/tmsrv-dom1.log -r -- -t1 -l/tmp -- :
process id=14811520 ... Died.
exec tmqueue -k 0myWI5nu -i 1660 -e /tmp/tmqueue-dom1.log -r -- -m MYSPACE -s1 -- :
process id=34668916 ... Died.
exec cconfsrv -k 0myWI5nu -i 1700 -e /tmp/CCONF -- :
process id=39387584 ... Died.
exec cpmsrv -k 0myWI5nu -i 9999 -e /tmp/CPMSRV -r -- -i10 -k5 -- :
process id=25297214 ... Started.
Startup finished. 3 processes started.
NDRX 1> psc
* ndrxd PID (from PID file): 29753670
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1>
NDRX 1>
NDRX 1>
NDRX 1> quit
bash-5.0$
bash-5.0$ xadmin
Enduro/X 7.5.6, build Nov 3 2020 12:28:40, using svapoll for AIX (64 bits)

Enduro/X Middleware Platform for Distributed Transaction Processing
Copyright (C) 2009-2016 ATR Baltic Ltd.
Copyright (C) 2017-2020 Mavimax Ltd. All Rights Reserved.

This software is released under one of the following licenses:
AGPLv3 (with Java and Go exceptions) or Mavimax license for commercial use.

NDRX 1>
NDRX 1>
NDRX 1> qpsc
Command `qpsc' not found!
NDRX 1> psc
* Shared resources opened...
* ndrxd PID (from PID file): 29753670
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1> help
COMMAND DESCR
------- ------------------------------------------------------------------------
quit Quit from command line utility

q Alias for `quit'

exit Alias for `quit'

echo Echo text back to terminal

idle Enter daemon process in idle state (if not started)

help Print help (this output)
args: help [command]

h Alias for `help'

info Alias for `help'

stat Prints general status information

ldcf Load configuration

start Start application domain
Also loads configuration automatically.
args: start [-y] [-s <server>] [-i <srvid>]

psc Print services
args: psc [-s]
-s : print full service name

stop Stop application domain
args: stop [-y] [-c]|[-s <server>] [-i <srvid>] [-k] [-f]

down Force App Server shutdown & resources cleanup
Usage: down [OPTION]...
Optional arguments:
-y Do not ask for confirmation
-u Remove user resources by username

udown Remove resources by username
Usage: udown [OPTION]...
Optional arguments:
-y Do not ask for confirmation

cat Attached to ndrxd user session in progress

reload Load new configuration

testcfg Test new configuration

unadv Un-advertise service.
args: unadv -i server_id -s service_name

readv Re-advertise service.
args: readv -i server_id -s service_name
might be usable if service Q was unlinked

restart Restart app or service (invokes start & stop with same args!)

r Alias for `restart'

-v Print version info

ver Print version info, same as -v

ppm Print process model
Usage ppm [OPTION]...
-2 Print Page 2

psvc Shared mem, print services
args: psvc [-r]
-r : for System V or Poll mode print resource identifers (msgid or pid)

psrv Shared mem, print servers

cabort Abort app shutdown or startup.
args: abort [-y]

sreload Restarts server instance by instance
Args: sreload [-y] [-s <server>] [-i <srvid>]

sr Alias for `sreload'

pq Print service queues

pqa Print all queues
args: pqa [-a]
-a - print all queues (incl. other local systems)

pt Print transactions

printtrans Alias for `pt'

abort Abort transaction
args: abort -t <RM Ref> -x <XID> [-g <Group No>] [-y]

aborttrans Alias for `abort'

commit Commit transaction
args: commit -t <RM Ref> -x <XID> [-y]

committrans Alias for `commit'

recoverlocal Print local local in-doubt transactions
args: recoverlocal [-s <TM SERVICE>] [-p]
-s - TMSRV which to query for transactions
-p - Parse XID and print details

commitlocal Commit local in-doubt transaction
args: commitlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-s - TMSRV which serves transaction
-x - particular XID
-y - confirm
-p - Parse XID and print details

abortlocal Abort local in-doubt transaction
args: abortlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

forgetlocal Abort local in-doubt transaction
args: forgetlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

pe Print env (from ndrxd)

printenv Alias for `pe'

set Set env variable.
Format: VAR=SOME VALUE (will be contact with spaces)

unset Set env variable. Forma: VAR

pc Print clients

sc Stop client
args: sc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

bc Boot(start) client
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

rc Reload/Restart clients one-by-one
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

mqlc List persistent queue configuration

mqlq List persistent queues (active/dynamic)

mqrc Reload TMQ config

mqlm List messages in q
args: mqlm -s <QSpace> -q <QName>

mqdm Dump/peek message to stdout
args: mqdm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqch Change queue config (runtime only)
args: mqch -n <Cluster node id> -i <Server ID> -q <Q def (conf format)>

mqrm Remove message from Q space
args: mqrm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqmv Move message to different qspace/qname
args: mqmv -n <Source cluster node id> -i <Source server ID>
-m <Source Message ID> -s <Dest qspace> -q <Dest qname>

killall Kill all processes (in ps -ef) matching the name
args: killall <name1> <name2> ... <nameN>

qrm Remove specific queue
args: qrm <qname1> <qname2> ... <qnameN>

qrmall Remove queue matching the substring
args: qrmall <substr1> <substr2> ... <substrN>

provision Prepare initial Enduro/X instance environment
args: provision [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]

gen Generate sources
args: gen <target> <type> [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]
tagets/types available:
go server
go client
c server
c client
java server
java client
ubf tab
test local

cs Cache show
args: cs <cache_db_name>|-d <cache_db_name>

cacheshow Alias for `cs'

cd Dump message in cache
args: cd -d <dbname> -k <key> [-i interpret_result]

cachedump Alias for `cd'

ci Invalidate cache
args: ci -d <dbname> [-k <key>][-r use_regexp]

cacheinval Alias for `ci'

svmaps Print System V Queue mapping tables
Usage: svmaps [OPTION]...
Optional arguments:
-p Print Posix to System V table (default)
-s Print System V to Posix table
-a Print all entries (lots of records...)
-i Print in use entries (default)
-w Print entries which were used but now free

svqids Print System V user queue ids
Usage: svqids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

svsemids Print System V user semaphore ids
Usage: svsemids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

pubfdb Print UBF custom fields (from DB)

poller Print active poller sub-system

shms Print shared memory segments

pmode Print Enduro/X build environment (ndrx_config.h)

ps List processes
Usage: ps [OPTION]...
Optional arguments:
-a FILTER1 First filter (grep style)
-b FILTER2 Second filter
-c FILTER3 Third filter
-d FILTER4 Forth filter
-r FILTER_REX Posix regexp filter
-p Print PIDs only
-m Print memory stats (pid), -p mode only (pid:rss:vsz in kb)
-x PID Exclude specific pid

appconfig Change/get ndrxd application cfg dynamically
Usage: appconfig SETTING [NEWVALUE]
Possible SETTING values:
sanity Sanity check period (seconds), number
checkpm Process model check sanity cycles, number
brrefresh Number of sanity units to send full bridge refreshes
restart_min Number of sanity units after which respawn died server
restart_step Number of sanity units increment for died server respawn
restart_max Max number of sanity units for died server respawn
restart_to_check Number of seconds for ndrxd to learn about
system after recovery start of ndrxd
gather_pq_stats Gather queue stats, Y/N
rqaddrttl Number of seconds for System V Request Address
to live with out servers

dping Ping `ndrxd' process
Usage: dping [OPTION]...
Optional arguments:
-c Number of pings (default 4)

dpid Print ndrxd PID from pid file

dsleep Put ndrxd in sleep (disable activity for time period), for debug
Usage: dsleep SLEEP_SECONDS

mibget Dump message in cache
args: mibget -c <T_CLASS> [-m]
-m Machine output
-c T_CLIENT|T_DOMAIN|T_MACHINE|T_QUEUE|T_SERVER|T_SERVICE|T_SVCGRP

NDRX 1> mibget -c T_CLIENT
* ndrxd PID (from PID file): 29753670
lmid clientid name state pid curconv contextid curtime
---- --------------------------------- ------ ----- -------- ------- --------- -------
1 /n00b,clt,reply,xadmin,14614834,1 xadmin ACT 14614834 0 1 0
NDRX 1> mibget -c T_SVCGRP
* ndrxd PID (from PID file): 29753670
lmid servicename srvgrp state srvid svcrname ncompleted totsuccnum totsfailnum lastexectimeusec maxexectimeusec minexectimeusec
---- ----------- ------ ----- ----- --------- ---------- ---------- ----------- ---------------- --------------- ---------------
1 @TPRECOVER 1/1 ACT 1 TPRECOVER 0 0 0 0 0 0
1 .TMIB 1/310 ACT 310 MIB 1 1 0 79000 79000 79000
1 .TMIB-1-310 1/310 ACT 310 MIB 0 0 0 0 0 0
1 @CPMSVC 1/9999 ACT 9999 CPMSVC 0 0 0 0 0 0
NDRX 1> fpsc
Command `fpsc' not found!
NDRX 1>
NDRX 1>
NDRX 1> psc
* ndrxd PID (from PID file): 29753670
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 2 0 102ms 102ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1>
NDRX 1> psc
* ndrxd PID (from PID file): 29753670
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 2 0 102ms 102ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1>
NDRX 1>
NDRX 1> psc
* ndrxd PID (from PID file): 29753670
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 2 0 102ms 102ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1> stop -y
* ndrxd PID (from PID file): 29753670
Server executable = cpmsrv Id = 9999 : Shutdown succeeded.
Server executable = tpadmsv Id = 310 : Shutdown succeeded.
Server executable = tprecover Id = 1 : Shutdown succeeded.
Shutdown finished. 3 processes stopped.
NDRX 1> start -y
* Shared resources opened...
* Enduro/X back-end (ndrxd) is not running
* ndrxd PID (from PID file): 29753672
* ndrxd idle instance started.
exec tprecover -k 0myWI5nu -i 1 -e /tmp/RECOVER -r -- -c10 :
process id=12845438 ... Started.
exec tpevsrv -k 0myWI5nu -i 300 -e /tmp/TPEVSRV -r -N -s@TPEVPOST -- :
process id=37945808 ... Died.
exec tpadmsv -k 0myWI5nu -i 310 -e /tmp/AD -r -- :
process id=25297216 ... Started.
exec atmi.sv1 -k 0myWI5nu -i 1400 -e /tmp/ATMISV1 -r -- :
process id=39387600 ... No such file or directory.
exec atmi.sv20_1 -k 0myWI5nu -i 1600 -e /tmp/ATMISV20_1 -r -- :
process id=16187770 ... No such file or directory.
exec atmi.sv20_1 -k 0myWI5nu -i 1601 -e /tmp/ATMISV20_1 -r -- :
process id=43319594 ... No such file or directory.
exec tmsrv -k 0myWI5nu -i 1650 -e /tmp/tmsrv-dom1.log -r -- -t1 -l/tmp -- :
process id=43319596 ... Died.
exec tmqueue -k 0myWI5nu -i 1660 -e /tmp/tmqueue-dom1.log -r -- -m MYSPACE -s1 -- :
process id=43319598 ... Died.
exec cconfsrv -k 0myWI5nu -i 1700 -e /tmp/CCONF -- :
process id=43319600 ... Died.
exec cpmsrv -k 0myWI5nu -i 9999 -e /tmp/CPMSRV -r -- -i10 -k5 -- :
process id=43319602 ... Started.
Startup finished. 3 processes started.
NDRX 1> psc
* ndrxd PID (from PID file): 29753672
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1> help
COMMAND DESCR
------- ------------------------------------------------------------------------
quit Quit from command line utility

q Alias for `quit'

exit Alias for `quit'

echo Echo text back to terminal

idle Enter daemon process in idle state (if not started)

help Print help (this output)
args: help [command]

h Alias for `help'

info Alias for `help'

stat Prints general status information

ldcf Load configuration

start Start application domain
Also loads configuration automatically.
args: start [-y] [-s <server>] [-i <srvid>]

psc Print services
args: psc [-s]
-s : print full service name

stop Stop application domain
args: stop [-y] [-c]|[-s <server>] [-i <srvid>] [-k] [-f]

down Force App Server shutdown & resources cleanup
Usage: down [OPTION]...
Optional arguments:
-y Do not ask for confirmation
-u Remove user resources by username

udown Remove resources by username
Usage: udown [OPTION]...
Optional arguments:
-y Do not ask for confirmation

cat Attached to ndrxd user session in progress

reload Load new configuration

testcfg Test new configuration

unadv Un-advertise service.
args: unadv -i server_id -s service_name

readv Re-advertise service.
args: readv -i server_id -s service_name
might be usable if service Q was unlinked

restart Restart app or service (invokes start & stop with same args!)

r Alias for `restart'

-v Print version info

ver Print version info, same as -v

ppm Print process model
Usage ppm [OPTION]...
-2 Print Page 2

psvc Shared mem, print services
args: psvc [-r]
-r : for System V or Poll mode print resource identifers (msgid or pid)

psrv Shared mem, print servers

cabort Abort app shutdown or startup.
args: abort [-y]

sreload Restarts server instance by instance
Args: sreload [-y] [-s <server>] [-i <srvid>]

sr Alias for `sreload'

pq Print service queues

pqa Print all queues
args: pqa [-a]
-a - print all queues (incl. other local systems)

pt Print transactions

printtrans Alias for `pt'

abort Abort transaction
args: abort -t <RM Ref> -x <XID> [-g <Group No>] [-y]

aborttrans Alias for `abort'

commit Commit transaction
args: commit -t <RM Ref> -x <XID> [-y]

committrans Alias for `commit'

recoverlocal Print local local in-doubt transactions
args: recoverlocal [-s <TM SERVICE>] [-p]
-s - TMSRV which to query for transactions
-p - Parse XID and print details

commitlocal Commit local in-doubt transaction
args: commitlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-s - TMSRV which serves transaction
-x - particular XID
-y - confirm
-p - Parse XID and print details

abortlocal Abort local in-doubt transaction
args: abortlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

forgetlocal Abort local in-doubt transaction
args: forgetlocal [-s <TM SERVICE> [-x <XID>]] [-y] [-p]
-x - particular XID
-y - confirm
-p - Parse XID and print details

pe Print env (from ndrxd)

printenv Alias for `pe'

set Set env variable.
Format: VAR=SOME VALUE (will be contact with spaces)

unset Set env variable. Forma: VAR

pc Print clients

sc Stop client
args: sc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

bc Boot(start) client
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

rc Reload/Restart clients one-by-one
args: bc -t <Tag> [-s <Subsection (default -)] [-w <wait in millis>]

mqlc List persistent queue configuration

mqlq List persistent queues (active/dynamic)

mqrc Reload TMQ config

mqlm List messages in q
args: mqlm -s <QSpace> -q <QName>

mqdm Dump/peek message to stdout
args: mqdm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqch Change queue config (runtime only)
args: mqch -n <Cluster node id> -i <Server ID> -q <Q def (conf format)>

mqrm Remove message from Q space
args: mqrm -n <Cluster node id> -i <Server ID> -m <Message ID>

mqmv Move message to different qspace/qname
args: mqmv -n <Source cluster node id> -i <Source server ID>
-m <Source Message ID> -s <Dest qspace> -q <Dest qname>

killall Kill all processes (in ps -ef) matching the name
args: killall <name1> <name2> ... <nameN>

qrm Remove specific queue
args: qrm <qname1> <qname2> ... <qnameN>

qrmall Remove queue matching the substring
args: qrmall <substr1> <substr2> ... <substrN>

provision Prepare initial Enduro/X instance environment
args: provision [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]

gen Generate sources
args: gen <target> <type> [-d] [-v<param1>=<value1>] ... [-v<paramN>=<valueN>]
tagets/types available:
go server
go client
c server
c client
java server
java client
ubf tab
test local

cs Cache show
args: cs <cache_db_name>|-d <cache_db_name>

cacheshow Alias for `cs'

cd Dump message in cache
args: cd -d <dbname> -k <key> [-i interpret_result]

cachedump Alias for `cd'

ci Invalidate cache
args: ci -d <dbname> [-k <key>][-r use_regexp]

cacheinval Alias for `ci'

svmaps Print System V Queue mapping tables
Usage: svmaps [OPTION]...
Optional arguments:
-p Print Posix to System V table (default)
-s Print System V to Posix table
-a Print all entries (lots of records...)
-i Print in use entries (default)
-w Print entries which were used but now free

svqids Print System V user queue ids
Usage: svqids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

svsemids Print System V user semaphore ids
Usage: svsemids [-i] [-k]
Optional arguments:
-i Print System V Resource IDs only
-k Print System V Resource Keys only

pubfdb Print UBF custom fields (from DB)

poller Print active poller sub-system

shms Print shared memory segments

pmode Print Enduro/X build environment (ndrx_config.h)

ps List processes
Usage: ps [OPTION]...
Optional arguments:
-a FILTER1 First filter (grep style)
-b FILTER2 Second filter
-c FILTER3 Third filter
-d FILTER4 Forth filter
-r FILTER_REX Posix regexp filter
-p Print PIDs only
-m Print memory stats (pid), -p mode only (pid:rss:vsz in kb)
-x PID Exclude specific pid

appconfig Change/get ndrxd application cfg dynamically
Usage: appconfig SETTING [NEWVALUE]
Possible SETTING values:
sanity Sanity check period (seconds), number
checkpm Process model check sanity cycles, number
brrefresh Number of sanity units to send full bridge refreshes
restart_min Number of sanity units after which respawn died server
restart_step Number of sanity units increment for died server respawn
restart_max Max number of sanity units for died server respawn
restart_to_check Number of seconds for ndrxd to learn about
system after recovery start of ndrxd
gather_pq_stats Gather queue stats, Y/N
rqaddrttl Number of seconds for System V Request Address
to live with out servers

dping Ping `ndrxd' process
Usage: dping [OPTION]...
Optional arguments:
-c Number of pings (default 4)

dpid Print ndrxd PID from pid file

dsleep Put ndrxd in sleep (disable activity for time period), for debug
Usage: dsleep SLEEP_SECONDS

mibget Dump message in cache
args: mibget -c <T_CLASS> [-m]
-m Machine output
-c T_CLIENT|T_DOMAIN|T_MACHINE|T_QUEUE|T_SERVER|T_SERVICE|T_SVCGRP

NDRX 1> mibget -c T_SERVICE
* ndrxd PID (from PID file): 29753672
Failed to call [.TMIB]: 6:TPENOENT (last error 6: ndrx_tpacall: Service is not available .TMIB by shm)
NDRX 1> mibget -c T_SERVICE
* ndrxd PID (from PID file): 29753672
Failed to call [.TMIB]: 6:TPENOENT (last error 6: ndrx_tpacall: Service is not available .TMIB by shm)
NDRX 1> psc
* ndrxd PID (from PID file): 29753672
Nd Service Name Routine Name Prog Name SRVID #SUCC #FAIL MAX LAST STAT
-- ------------ ------------ --------- ----- ----- ----- -------- -------- -----
1 @TPRECOVER TPRECOVER tprecover 1 0 0 0ms 0ms AVAIL
1 .TMIB MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 .TMIB-1-310 MIB tpadmsv 310 0 0 0ms 0ms AVAIL
1 @CPMSVC CPMSVC cpmsrv 9999 0 0 0ms 0ms AVAIL
NDRX 1> mibget -c T_SERVICE
* ndrxd PID (from PID file): 29753672
Failed to call [.TMIB]: 6:TPENOENT (last error 6: ndrx_tpacall: Service is not available .TMIB by shm)
NDRX 1> mibget -c T_SERVICE
* ndrxd PID (from PID file): 29753672
Failed to call [.TMIB]: 6:TPENOENT (last error 6: ndrx_tpacall: Service is not available .TMIB by shm)
NDRX 1> mibget -c T_SERVICE
</pre>

Back