Project: lixa
Code Location: https://lixa.svn.sourceforge.net/svnroot/lixa/tests//tests
Browse
/
Download File
ct_0_5.at
AT_BANNER([Client side xa_rollback crash --> server test])

AT_SETUP([CT/0.5/0.0 xa_rollback/send (step=8)])
AT_CHECK([if test "$LIXA_CRASH" = "no"; then exit 77; fi])
AT_DATA([monkey1s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey1d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_rollback/0
xa_close/0
]])
# the client crashes after message START/8
AT_CHECK([export LIXA_PROFILE=CASE_PROF_0002 ; export LIXA_CRASH_POINT=17 ; lixa_test_exec.sh reset start case0035 rollback 0 0], [134], [ignore], [ignore])
AT_CLEANUP

AT_SETUP([CT/0.5/1.0 xa_rollback/send (step=8)])
AT_CHECK([if test "$LIXA_CRASH" = "no"; then exit 77; fi])
AT_DATA([monkey1s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_prepare/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_prepare/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey1d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_prepare/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_prepare/-3
xa_rollback/0
xa_close/0
]])
# the client crashes after message START/8
AT_CHECK([export LIXA_PROFILE=CASE_PROF_0002 ; export LIXA_CRASH_POINT=17 ; lixa_test_exec.sh noreset none case0035 commit 0 0], [134], [ignore], [ignore])
AT_CLEANUP

AT_SETUP([CT/0.5/2.0 xa_rollback/exit])
AT_CHECK([if test "$LIXA_CRASH" = "no"; then exit 77; fi])
AT_DATA([monkey1s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2s.conf],
[[# monkey R.M. config
xa_open/0
xa_start/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey1d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_rollback/0
xa_close/0
]])
AT_DATA([monkey2d.conf],
[[# monkey R.M. config
xa_open/0
xa_end/0
xa_rollback/0
xa_close/0
]])
# the first client exits after tx_rollback()
AT_CHECK([export LIXA_PROFILE=CASE_PROF_0002 ; lixa_test_exec.sh noreset none case0035 rollback 5 0], [5], [ignore], [ignore])
# the second client checks the server is up and running
AT_CHECK([export LIXA_PROFILE=CASE_PROF_0002 ; lixa_test_exec.sh noreset stop case0035 rollback 0 0], [0], [ignore], [ignore])
AT_CLEANUP