Project:
lixa
Code Location:
https://lixa.svn.sourceforge.net/svnroot/lixa/tests//tests
/
tx_5_26.at
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
AT_BANNER([TX: 5.26 tx_open()]) # All test cases check: # # The function tx_open( ) must successfully return before a thread of control # participates in global transactions. AT_SETUP([TX/5.26/0.0]) AT_DATA([monkey1s.conf], [[# monkey R.M. config xa_open/-3 xa_close/0 xa_open/0 xa_close/0 ]]) AT_DATA([monkey1d.conf], [[# monkey R.M. config xa_open/0 xa_close/0 xa_open/0 xa_close/0 ]]) AT_CHECK([export LIXA_PROFILE=CASE_PROF_0003 ; lixa_test_exec.sh reset start case0018 -6 2>$TESTS_TMP_FILE1], [0], [ignore], [ignore]) # # If tx_open( ) returns [TX_ERROR], no resource managers are open. AT_CHECK([cat $TESTS_TMP_FILE1 | tee $TESTS_TMP_FILE2 && grep 'performing xa_close on all the resource managers because tx_open is not TX_OK' $TESTS_TMP_FILE2], [0], [ignore], [ignore]) AT_CLEANUP AT_SETUP([TX/5.26/0.1]) AT_DATA([monkey1s.conf], [[# monkey R.M. config xa_open/0 xa_close/0 ]]) AT_DATA([monkey1d.conf], [[# monkey R.M. config xa_open/0 xa_close/0 ]]) AT_CHECK([export LIXA_PROFILE=CASE_PROF_0003 ; lixa_test_exec.sh noreset none case0018 0 2>$TESTS_TMP_FILE1], [0], [ignore], [ignore]) # # If tx_open( ) returns [TX_OK], some or all of the resource managers have # been opened. AT_CHECK([cat $TESTS_TMP_FILE1 | tee $TESTS_TMP_FILE2 && grep 'xa_open_entry.* 0, 0x0) = 0' $TESTS_TMP_FILE2], [0], [ignore], [ignore]) AT_CHECK([cat $TESTS_TMP_FILE1 | tee $TESTS_TMP_FILE2 && grep 'xa_open_entry.* 1, 0x0) = 0' $TESTS_TMP_FILE2], [0], [ignore], [ignore]) AT_CLEANUP AT_SETUP([TX/5.26/0.2]) AT_DATA([monkey1s.conf], [[# monkey R.M. config xa_open/0 xa_close/0 ]]) AT_DATA([monkey1d.conf], [[# monkey R.M. config xa_open/0 xa_close/0 ]]) AT_CHECK([export LIXA_PROFILE=CASE_PROF_0003 ; lixa_test_exec.sh noreset none case0018 0 2>$TESTS_TMP_FILE1], [0], [ignore], [ignore]) # # Once tx_open( ) returns success, subsequent calls to tx_open( ) (before an # intervening call to tx_close( )) are allowed. However, such subsequent calls # return success, and the TM does not attempt to reopen any RMs. AT_CHECK([cat $TESTS_TMP_FILE1 | tee $TESTS_TMP_FILE2 && grep 'lixa_tx_open: already opened (txstate = 1)' $TESTS_TMP_FILE2], [0], [ignore], [ignore]) AT_CLEANUP AT_SETUP([TX/5.26/0.3]) AT_DATA([monkey1s.conf], [[# monkey R.M. config xa_open/0 xa_close/0 xa_open/0 xa_close/0 ]]) AT_DATA([monkey1d.conf], [[# monkey R.M. config xa_open/-5 xa_close/-5 xa_open/0 xa_close/0 ]]) # # [TX_FAIL] # Either the transaction manager or one or more of the resource managers # encountered a fatal error. The nature of the error is such that the # transaction manager and/or one or more of the resource managers can no # longer perform work on behalf of the application. The exact nature of the # error is determined in a product-specific manner. AT_CHECK([export LIXA_PROFILE=CASE_PROF_0003 ; lixa_test_exec.sh noreset stop case0018 -7], [0], [ignore], [ignore]) AT_CLEANUP
