2 @message |
firebird.qa.plugin.ExecutionError: ISQL execution failed
LOG DETAILS:
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 act = <firebird.qa.plugin.Action object at [hex]>
2024-05-09 21:54:22.822 addi_script = WindowsPath('R:/temp/qa/fbqa/test_1986/addi_script.sql')
2024-05-09 21:54:22.822 main_script = WindowsPath('R:/temp/qa/fbqa/test_1986/main_script.sql')
2024-05-09 21:54:22.822 tmp_db = WindowsPath('R:/temp/qa/fbqa/test_1986/tmp_addi_4933.fdb')
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 @pytest.mark.version('>=3.0.6')
2024-05-09 21:54:22.822 def test_1(act: Action, addi_script: Path, main_script: Path, tmp_db: Path):
2024-05-09 21:54:22.822 addi_script.write_text(f"""
2024-05-09 21:54:22.822 create database 'localhost:{tmp_db}' user {act.db.user} password '{act.db.password}';
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 recreate view v_check as
2024-05-09 21:54:22.822 select
2024-05-09 21:54:22.822 decode(t.mon$isolation_mode, 0,'consistency', 1,'snapshot', 2,'rc rec_vers', 3,'rc no_recv', 4,'rc read_cons', 'UNKNOWN') as tx_til_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'ISOLATION_LEVEL') as tx_til_rdb_get_context,
2024-05-09 21:54:22.822 decode(t.mon$lock_timeout, -1, 'wait', 0, 'no_wait', 'timeout ' || t.mon$lock_timeout) as tx_lock_timeout_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'LOCK_TIMEOUT') as tx_lock_timeout_rdb_get_context,
2024-05-09 21:54:22.822 iif(t.mon$read_only=1,'read_only','read_write') as tx_read_only_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'READ_ONLY') as tx_read_only_rdb_get_context,
2024-05-09 21:54:22.822 t.mon$auto_undo as tx_autoundo_mon_trans
2024-05-09 21:54:22.822 -- only in FB 4.x+: ,t.mon$auto_commit as tx_autocommit_mon_trans
2024-05-09 21:54:22.822 from mon$transactions t
2024-05-09 21:54:22.822 where t.mon$transaction_id = current_transaction;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'addi_script: create_new_db' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 rollback;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 connect 'localhost:{tmp_db}' user {act.db.user} password '{act.db.password}';
2024-05-09 21:54:22.822 select 'addi_script: reconnect' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 rollback;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 drop database;
2024-05-09 21:54:22.822 """)
2024-05-09 21:54:22.822 main_script.write_text(f"""
2024-05-09 21:54:22.822 set list on;
2024-05-09 21:54:22.822 connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}';
2024-05-09 21:54:22.822 recreate view v_check as
2024-05-09 21:54:22.822 select
2024-05-09 21:54:22.822 decode(t.mon$isolation_mode, 0,'consistency', 1,'snapshot', 2,'rc rec_vers', 3,'rc no_recv', 4,'rc read_cons', 'UNKNOWN') as tx_til_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'ISOLATION_LEVEL') as tx_til_rdb_get_context,
2024-05-09 21:54:22.822 decode(t.mon$lock_timeout, -1, 'wait', 0, 'no_wait', 'timeout ' || t.mon$lock_timeout) as tx_lock_timeout_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'LOCK_TIMEOUT') as tx_lock_timeout_rdb_get_context,
2024-05-09 21:54:22.822 iif(t.mon$read_only=1,'read_only','read_write') as tx_read_only_mon_trans,
2024-05-09 21:54:22.822 rdb$get_context('SYSTEM', 'READ_ONLY') as tx_read_only_rdb_get_context,
2024-05-09 21:54:22.822 t.mon$auto_undo as tx_autoundo_mon_trans
2024-05-09 21:54:22.822 -- only 4.x: ,t.mon$auto_commit as tx_autocommit_mon_trans
2024-05-09 21:54:22.822 from mon$transactions t
2024-05-09 21:54:22.822 where t.mon$transaction_id = current_transaction;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: initial' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 set keep_tran on;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 set transaction read only read committed record_version lock timeout 5 no auto undo; -- only in 4.x: auto commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: started Tx' as msg, v.* from v_check v;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 commit; -------------------------------------------------------------------------------------- [ 1 ]
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: after_commit' as msg, v.* from v_check v;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 rollback; ------------------------------------------------------------------------------------ [ 2 ]
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: after_rollback' as msg, v.* from v_check v;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 rollback;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}'; --------------------------- [ 3 ]
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: after_reconnect' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 rollback;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 --###################
2024-05-09 21:54:22.822 in {addi_script};
2024-05-09 21:54:22.822 --###################
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}'; --------------------------- [ 5 ]
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'main_script: resume' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 rollback;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 set keep_tran off;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 select 'keep_tran: turned_off' as msg, v.* from v_check v;
2024-05-09 21:54:22.822 commit;
2024-05-09 21:54:22.822 """)
2024-05-09 21:54:22.822 # Check
2024-05-09 21:54:22.822 act.expected_stdout = expected_stdout
2024-05-09 21:54:22.822 > act.isql(switches=['-q'], input_file=main_script)
2024-05-09 21:54:22.822 E firebird.qa.plugin.ExecutionError: ISQL execution failed
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 tests\bugs\core_4933_test.py:217: ExecutionError
2024-05-09 21:54:22.822 ---------------------------- Captured stdout setup ----------------------------
2024-05-09 21:54:22.822 Cached db: db-13.0-None-None-NONE.fdb [page_size=None, sql_dialect=None, charset='NONE'
2024-05-09 21:54:22.822 -------------------------- Captured ISQL stdout call --------------------------
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: initial
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS snapshot
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT SNAPSHOT
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS wait
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT -1
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_write
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT FALSE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 1
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: started Tx
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: after_commit
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: after_rollback
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: after_reconnect
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG addi_script: create_new_db
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG addi_script: reconnect
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG main_script: resume
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS rc rec_vers
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT READ COMMITTED
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS timeout 5
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT 5
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_only
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT TRUE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 0
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 MSG keep_tran: turned_off
2024-05-09 21:54:22.822 TX_TIL_MON_TRANS snapshot
2024-05-09 21:54:22.822 TX_TIL_RDB_GET_CONTEXT SNAPSHOT
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_MON_TRANS wait
2024-05-09 21:54:22.822 TX_LOCK_TIMEOUT_RDB_GET_CONTEXT -1
2024-05-09 21:54:22.822 TX_READ_ONLY_MON_TRANS read_write
2024-05-09 21:54:22.822 TX_READ_ONLY_RDB_GET_CONTEXT FALSE
2024-05-09 21:54:22.822 TX_AUTOUNDO_MON_TRANS 1
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822
2024-05-09 21:54:22.822 -------------------------- Captured ISQL stderr call --------------------------
2024-05-09 21:54:22.822 Rolling back work.
|
3 #text |
act = <firebird.qa.plugin.Action pytest object at [hex]>
addi_script = WindowsPath('R:/temp/qa/fbqa/test_1986/addi_script.sql')
main_script = WindowsPath('R:/temp/qa/fbqa/test_1986/main_script.sql')
tmp_db = WindowsPath('R:/temp/qa/fbqa/test_1986/tmp_addi_4933.fdb')
@pytest.mark.version('>=3.0.6')
def test_1(act: Action, addi_script: Path, main_script: Path, tmp_db: Path):
addi_script.write_text(f"""
create database 'localhost:{tmp_db}' user {act.db.user} password '{act.db.password}';
recreate view v_check as
select
decode(t.mon$isolation_mode, 0,'consistency', 1,'snapshot', 2,'rc rec_vers', 3,'rc no_recv', 4,'rc read_cons', 'UNKNOWN') as tx_til_mon_trans,
rdb$get_context('SYSTEM', 'ISOLATION_LEVEL') as tx_til_rdb_get_context,
decode(t.mon$lock_timeout, -1, 'wait', 0, 'no_wait', 'timeout ' || t.mon$lock_timeout) as tx_lock_timeout_mon_trans,
rdb$get_context('SYSTEM', 'LOCK_TIMEOUT') as tx_lock_timeout_rdb_get_context,
iif(t.mon$read_only=1,'read_only','read_write') as tx_read_only_mon_trans,
rdb$get_context('SYSTEM', 'READ_ONLY') as tx_read_only_rdb_get_context,
t.mon$auto_undo as tx_autoundo_mon_trans
-- only in FB 4.x+: ,t.mon$auto_commit as tx_autocommit_mon_trans
from mon$transactions t
where t.mon$transaction_id = current_transaction;
commit;
select 'addi_script: create_new_db' as msg, v.* from v_check v;
rollback;
connect 'localhost:{tmp_db}' user {act.db.user} password '{act.db.password}';
select 'addi_script: reconnect' as msg, v.* from v_check v;
rollback;
drop database;
""")
main_script.write_text(f"""
set list on;
connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}';
recreate view v_check as
select
decode(t.mon$isolation_mode, 0,'consistency', 1,'snapshot', 2,'rc rec_vers', 3,'rc no_recv', 4,'rc read_cons', 'UNKNOWN') as tx_til_mon_trans,
rdb$get_context('SYSTEM', 'ISOLATION_LEVEL') as tx_til_rdb_get_context,
decode(t.mon$lock_timeout, -1, 'wait', 0, 'no_wait', 'timeout ' || t.mon$lock_timeout) as tx_lock_timeout_mon_trans,
rdb$get_context('SYSTEM', 'LOCK_TIMEOUT') as tx_lock_timeout_rdb_get_context,
iif(t.mon$read_only=1,'read_only','read_write') as tx_read_only_mon_trans,
rdb$get_context('SYSTEM', 'READ_ONLY') as tx_read_only_rdb_get_context,
t.mon$auto_undo as tx_autoundo_mon_trans
-- only 4.x: ,t.mon$auto_commit as tx_autocommit_mon_trans
from mon$transactions t
where t.mon$transaction_id = current_transaction;
commit;
select 'main_script: initial' as msg, v.* from v_check v;
commit;
set keep_tran on;
commit;
set transaction read only read committed record_version lock timeout 5 no auto undo; -- only in 4.x: auto commit;
select 'main_script: started Tx' as msg, v.* from v_check v;
commit; -------------------------------------------------------------------------------------- [ 1 ]
select 'main_script: after_commit' as msg, v.* from v_check v;
rollback; ------------------------------------------------------------------------------------ [ 2 ]
select 'main_script: after_rollback' as msg, v.* from v_check v;
rollback;
connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}'; --------------------------- [ 3 ]
select 'main_script: after_reconnect' as msg, v.* from v_check v;
rollback;
--###################
in {addi_script};
--###################
connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}'; --------------------------- [ 5 ]
select 'main_script: resume' as msg, v.* from v_check v;
rollback;
set keep_tran off;
commit;
select 'keep_tran: turned_off' as msg, v.* from v_check v;
commit;
""")
# Check
act.expected_stdout = expected_stdout
> act.isql(switches=['-q'], input_file=main_script)
E firebird.qa.plugin.ExecutionError: ISQL execution failed
tests\bugs\core_4933_test.py:217: ExecutionError
|