Check firebird.log [no messages found for interval when this test was running]
Jump to: output_first_mismatch    outcomes_full_history    elapsed_time_chart
Show cross-report outcomes.

Annotation type Annotation details
2 @message
assert   
    checked_mode: table, STDLOG: Records affected: 4
    checked_mode: table, STDLOG: ID
    checked_mode: table, STDLOG:
    checked_mode: table, STDLOG: -5
    checked_mode: table, STDLOG: -2
    checked_mode: table, STDLOG: -1
    checked_mode: table, STDLOG: 3
    checked_mode: table, STDLOG: 4
    checked_mode: table, STDLOG: Records affected: 5
    checked_mode: table, STDLOG: OLD_ID OP SNAP_NO_RANK
    checked_mode: table, STDLOG:
  - checked_mode: table, STDLOG: 2 UPD 1
  + checked_mode: table, STDLOG: 2UPD 1
  - checked_mode: table, STDLOG: 2 UPD 2
  + checked_mode: table, STDLOG: 2UPD 2
  - checked_mode: table, STDLOG: 1 UPD 2
  + checked_mode: table, STDLOG: 1UPD 2
  - checked_mode: table, STDLOG: 2 UPD 3
  + checked_mode: table, STDLOG: 2UPD 3
  - checked_mode: table, STDLOG: 1 UPD 3
  + checked_mode: table, STDLOG: 1UPD 3
  - checked_mode: table, STDLOG: 2 UPD 4
  + checked_mode: table, STDLOG: 2UPD 4
  - checked_mode: table, STDLOG: 1 UPD 4
  + checked_mode: table, STDLOG: 1UPD 4
  - checked_mode: table, STDLOG: -3 UPD 4
  + checked_mode: table, STDLOG: -3UPD 4
  - checked_mode: table, STDLOG: -4 UPD 4
  + checked_mode: table, STDLOG: -4UPD 4
    checked_mode: table, STDLOG: Records affected: 9

LOG DETAILS:

2025-07-01 06:05:04.576
2025-07-01 06:05:04.586 act = <firebird.qa.plugin.Action object at [hex]>
2025-07-01 06:05:04.598 fn_worker_sql = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.sql')
2025-07-01 06:05:04.615 fn_worker_log = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.log')
2025-07-01 06:05:04.623 fn_worker_err = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.err')
2025-07-01 06:05:04.631 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-07-01 06:05:04.639
2025-07-01 06:05:04.648 @pytest.mark.trace
2025-07-01 06:05:04.660 @pytest.mark.version('>=4.0')
2025-07-01 06:05:04.670 def test_1(act: Action, fn_worker_sql: Path, fn_worker_log: Path, fn_worker_err: Path, capsys):
2025-07-01 06:05:04.679 sql_init = (act.files_dir / 'read-consist-sttm-restart-DDL.sql').read_text()
2025-07-01 06:05:04.687
2025-07-01 06:05:04.696 for checked_mode in('table', 'view'):
2025-07-01 06:05:04.709 target_obj = 'test' if checked_mode == 'table' else 'v_test'
2025-07-01 06:05:04.722
2025-07-01 06:05:04.737 SQL_TO_BE_RESTARTED = f"""
2025-07-01 06:05:04.747 merge /* {SQL_TAG_THAT_WE_WAITING_FOR} */ into {target_obj} t
2025-07-01 06:05:04.758 using (select * from {target_obj} where id <=2 order by id DESC rows 4) s on s.id=t.id
2025-07-01 06:05:04.766 when matched then
2025-07-01 06:05:04.773 update set t.id = -t.id
2025-07-01 06:05:04.780 when not matched then
2025-07-01 06:05:04.788 insert(id,x) values(1000 + s.id, 1000 + s.x)
2025-07-01 06:05:04.795 """
2025-07-01 06:05:04.802
2025-07-01 06:05:04.813 sql_addi = f'''
2025-07-01 06:05:04.822 set term ^;
2025-07-01 06:05:04.830 execute block as
2025-07-01 06:05:04.838 begin
2025-07-01 06:05:04.847 rdb$set_context('USER_SESSION', 'WHO', 'INIT_DATA');
2025-07-01 06:05:04.856 end
2025-07-01 06:05:04.863 ^
2025-07-01 06:05:04.870 set term ;^
2025-07-01 06:05:04.881 insert into {target_obj}(id, x)
2025-07-01 06:05:04.892 select row_number()over(),row_number()over()
2025-07-01 06:05:04.903 from rdb$types rows 5;
2025-07-01 06:05:04.914 commit;
2025-07-01 06:05:04.928 '''
2025-07-01 06:05:04.939
2025-07-01 06:05:04.949 act.isql(switches=['-q'], input = ''.join( (sql_init, sql_addi) ) )
2025-07-01 06:05:04.962 # ::: NOTE ::: We have to immediately quit if any error raised in prepare phase.
2025-07-01 06:05:04.973 # See also letter from dimitr, 01-feb-2022 14:46
2025-07-01 06:05:04.981 assert act.stderr == ''
2025-07-01 06:05:04.988 act.reset()
2025-07-01 06:05:04.995
2025-07-01 06:05:05.005 trace_cfg_items = [
2025-07-01 06:05:05.021 'time_threshold = 0',
2025-07-01 06:05:05.031 'log_errors = true',
2025-07-01 06:05:05.039 'log_statement_start = true',
2025-07-01 06:05:05.048 'log_statement_finish = true',
2025-07-01 06:05:05.057 ]
2025-07-01 06:05:05.064
2025-07-01 06:05:05.072 with act.trace(db_events = trace_cfg_items, encoding=locale.getpreferredencoding()):
2025-07-01 06:05:05.078
2025-07-01 06:05:05.088 with act.db.connect() as con_lock_1, act.db.connect() as con_lock_2, act.db.connect() as con_monitoring:
2025-07-01 06:05:05.094
2025-07-01 06:05:05.109 tpb_monitoring = tpb(isolation=Isolation.READ_COMMITTED_RECORD_VERSION, lock_timeout=0)
2025-07-01 06:05:05.122 tx_monitoring = con_monitoring.transaction_manager(tpb_monitoring)
2025-07-01 06:05:05.135 cur_monitoring = tx_monitoring.cursor()
2025-07-01 06:05:05.146
2025-07-01 06:05:05.161 for i,c in enumerate((con_lock_1,con_lock_2)):
2025-07-01 06:05:05.173 sttm = f"execute block as begin rdb$set_context('USER_SESSION', 'WHO', 'LOCKER #{i+1}'); end"
2025-07-01 06:05:05.180 c.execute_immediate(sttm)
2025-07-01 06:05:05.187
2025-07-01 06:05:05.193 #########################
2025-07-01 06:05:05.198 ###  L O C K E R - 1  ###
2025-07-01 06:05:05.203 #########################
2025-07-01 06:05:05.210
2025-07-01 06:05:05.218 con_lock_1.execute_immediate( f'update {target_obj} set id=id where id=1' )
2025-07-01 06:05:05.224
2025-07-01 06:05:05.232 worker_sql = f'''
2025-07-01 06:05:05.238 set list on;
2025-07-01 06:05:05.245 set autoddl off;
2025-07-01 06:05:05.256 set term ^;
2025-07-01 06:05:05.264 execute block returns (whoami varchar(30)) as
2025-07-01 06:05:05.272 begin
2025-07-01 06:05:05.279 whoami = 'WORKER'; -- , ATT#' || current_connection;
2025-07-01 06:05:05.288 rdb$set_context('USER_SESSION','WHO', whoami);
2025-07-01 06:05:05.301 -- suspend;
2025-07-01 06:05:05.312 end
2025-07-01 06:05:05.320 ^
2025-07-01 06:05:05.328 set term ;^
2025-07-01 06:05:05.335 commit;
2025-07-01 06:05:05.350 SET KEEP_TRAN_PARAMS ON;
2025-07-01 06:05:05.359 set transaction read committed read consistency;
2025-07-01 06:05:05.366 set list off;
2025-07-01 06:05:05.374 set wng off;
2025-07-01 06:05:05.383 set count on;
2025-07-01 06:05:05.391
2025-07-01 06:05:05.398 -- this must hang because of locker-1:
2025-07-01 06:05:05.404 {SQL_TO_BE_RESTARTED};
2025-07-01 06:05:05.412
2025-07-01 06:05:05.423 -- check results:
2025-07-01 06:05:05.431 -- ###############
2025-07-01 06:05:05.438 select id from {target_obj} order by id; -- one record must remain, with ID = -5
2025-07-01 06:05:05.445
2025-07-01 06:05:05.452 select v.old_id, v.op, v.snap_no_rank -- snap_no_rank must have four unique values: 1,2,3 and 4.
2025-07-01 06:05:05.457 from v_worker_log v
2025-07-01 06:05:05.463 where v.op = 'upd';
2025-07-01 06:05:05.467
2025-07-01 06:05:05.472 --set width who 10;
2025-07-01 06:05:05.477 -- DO NOT check this! Values can differ here from one run to another!
2025-07-01 06:05:05.482 -- select id, trn, who, old_id, new_id, op, rec_vers, global_cn, snap_no from tlog_done order by id;
2025-07-01 06:05:05.490 rollback;
2025-07-01 06:05:05.498
2025-07-01 06:05:05.506 '''
2025-07-01 06:05:05.511
2025-07-01 06:05:05.517 fn_worker_sql.write_text(worker_sql)
2025-07-01 06:05:05.527
2025-07-01 06:05:05.535 with fn_worker_log.open(mode='w') as hang_out, fn_worker_err.open(mode='w') as hang_err:
2025-07-01 06:05:05.548
2025-07-01 06:05:05.558 ############################################################################
2025-07-01 06:05:05.566 ###  L A U N C H     W O R K E R    U S I N G     I S Q L,   A S Y N C.  ###
2025-07-01 06:05:05.573 ############################################################################
2025-07-01 06:05:05.585 p_worker = subprocess.Popen([act.vars['isql'], '-i', str(fn_worker_sql),
2025-07-01 06:05:05.594 '-user', act.db.user,
2025-07-01 06:05:05.605 '-password', act.db.password,
2025-07-01 06:05:05.614 '-pag', '999999',
2025-07-01 06:05:05.626 act.db.dsn
2025-07-01 06:05:05.638 ],
2025-07-01 06:05:05.647 stdout = hang_out,
2025-07-01 06:05:05.654 stderr = hang_err
2025-07-01 06:05:05.660 )
2025-07-01 06:05:05.666 # NB: when ISQL will establish attach, first record that it must lock is ID = 2 -- see above SQL_TO_BE_RESTARTED
2025-07-01 06:05:05.673 # We must to ensure that this (worker) attachment has been really created and LOCKS this record:
2025-07-01 06:05:05.685 #
2025-07-01 06:05:05.694 wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id=2', SQL_TAG_THAT_WE_WAITING_FOR)
2025-07-01 06:05:05.700
2025-07-01 06:05:05.707
2025-07-01 06:05:05.715 #########################
2025-07-01 06:05:05.726 ###  L O C K E R - 2  ###
2025-07-01 06:05:05.736 #########################
2025-07-01 06:05:05.744
2025-07-01 06:05:05.752 # Change ID so that it **will* be included in the set of rows that must be affected by session-worker:
2025-07-01 06:05:05.759 con_lock_2.execute_immediate( f'update {target_obj} set id = -5 where abs(id) = 5;' )
2025-07-01 06:05:05.764 con_lock_2.commit()
2025-07-01 06:05:05.771 con_lock_2.execute_immediate( f'update {target_obj} set id = id where abs(id) = 5;' )
2025-07-01 06:05:05.779 con_lock_1.commit()  # releases record with ID=1 ==> now it can be locked by worker.
2025-07-01 06:05:05.791
2025-07-01 06:05:05.806 # We have to WAIT HERE until worker will actually 'catch' just released record with ID = 1.
2025-07-01 06:05:05.817 #
2025-07-01 06:05:05.827 wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id=1', SQL_TAG_THAT_WE_WAITING_FOR)
2025-07-01 06:05:05.837
2025-07-01 06:05:05.848 # If we come here then it means that record with ID = 1 for sure is locked by WORKER.
2025-07-01 06:05:05.858
2025-07-01 06:05:05.871 # Change ID so that it **will* be included in the set of rows that must be affected by session-worker:
2025-07-01 06:05:05.884 con_lock_1.execute_immediate( f'update {target_obj} set id = -4 where abs(id) = 4;' )
2025-07-01 06:05:05.896 con_lock_1.commit()
2025-07-01 06:05:05.907 con_lock_1.execute_immediate( f'update {target_obj} set id = id where abs(id) = 4;' )
2025-07-01 06:05:05.915
2025-07-01 06:05:05.927 con_lock_2.commit() # releases record with ID = -5, but session-worker is waiting for record with ID = -4 (that was changed by locker-1).
2025-07-01 06:05:05.938
2025-07-01 06:05:05.946 # We have to WAIT HERE until worker will actually 'catch' just released record with ID = -5:
2025-07-01 06:05:05.956 #
2025-07-01 06:05:05.966 wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id = -5', SQL_TAG_THAT_WE_WAITING_FOR)
2025-07-01 06:05:05.974
2025-07-01 06:05:05.983 # If we come here then it means that record with ID = -5 for sure is locked by WORKER.
2025-07-01 06:05:05.994
2025-07-01 06:05:06.005 con_lock_2.execute_immediate( f'update {target_obj} set id = -3 where abs(id) = 3;' )
2025-07-01 06:05:06.017 con_lock_2.commit()
2025-07-01 06:05:06.027 con_lock_2.execute_immediate( f'update {target_obj} set id = id where abs(id) = 3;' )
2025-07-01 06:05:06.038
2025-07-01 06:05:06.050 con_lock_1.commit() # This releases row with ID=-4 but session-worker is waiting for ID = - 3 (changed by locker-2).
2025-07-01 06:05:06.060
2025-07-01 06:05:06.068
2025-07-01 06:05:06.076 # We have to WAIT HERE until worker will actually 'catch' just released record with ID = -4:
2025-07-01 06:05:06.083 #
2025-07-01 06:05:06.091 wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id = -4', SQL_TAG_THAT_WE_WAITING_FOR)
2025-07-01 06:05:06.096
2025-07-01 06:05:06.105 # If we come here then it means that record with ID = -4 for sure is locked by WORKER.
2025-07-01 06:05:06.116
2025-07-01 06:05:06.124 con_lock_2.commit() # This releases row with ID=-3. No more locked rows so session-worker can finish its mission.
2025-07-01 06:05:06.129
2025-07-01 06:05:06.135 # Here we wait for ISQL complete its mission:
2025-07-01 06:05:06.140 p_worker.wait()
2025-07-01 06:05:06.153 # < with act.db.connect
2025-07-01 06:05:06.162
2025-07-01 06:05:06.170 for g in (fn_worker_log, fn_worker_err):
2025-07-01 06:05:06.179 with g.open() as f:
2025-07-01 06:05:06.187 for line in f:
2025-07-01 06:05:06.194 if line.split():
2025-07-01 06:05:06.198 if g == fn_worker_log:
2025-07-01 06:05:06.203 print(f'checked_mode: {checked_mode}, STDLOG: {line}')
2025-07-01 06:05:06.207 else:
2025-07-01 06:05:06.214 print(f'UNEXPECTED STDERR {line}')
2025-07-01 06:05:06.219
2025-07-01 06:05:06.226 expected_stdout_worker = f"""
2025-07-01 06:05:06.237 checked_mode: {checked_mode}, STDLOG: Records affected: 4
2025-07-01 06:05:06.246
2025-07-01 06:05:06.254 checked_mode: {checked_mode}, STDLOG:      ID
2025-07-01 06:05:06.264 checked_mode: {checked_mode}, STDLOG: =======
2025-07-01 06:05:06.275 checked_mode: {checked_mode}, STDLOG:      -5
2025-07-01 06:05:06.286 checked_mode: {checked_mode}, STDLOG:      -2
2025-07-01 06:05:06.295 checked_mode: {checked_mode}, STDLOG:      -1
2025-07-01 06:05:06.301 checked_mode: {checked_mode}, STDLOG:       3
2025-07-01 06:05:06.316 checked_mode: {checked_mode}, STDLOG:       4
2025-07-01 06:05:06.329 checked_mode: {checked_mode}, STDLOG: Records affected: 5
2025-07-01 06:05:06.342
2025-07-01 06:05:06.349 checked_mode: {checked_mode}, STDLOG:  OLD_ID OP              SNAP_NO_RANK
2025-07-01 06:05:06.358 checked_mode: {checked_mode}, STDLOG: ======= ====== =====================
2025-07-01 06:05:06.366 checked_mode: {checked_mode}, STDLOG:       2 UPD                        1
2025-07-01 06:05:06.371 checked_mode: {checked_mode}, STDLOG:       2 UPD                        2
2025-07-01 06:05:06.378 checked_mode: {checked_mode}, STDLOG:       1 UPD                        2
2025-07-01 06:05:06.384 checked_mode: {checked_mode}, STDLOG:       2 UPD                        3
2025-07-01 06:05:06.390 checked_mode: {checked_mode}, STDLOG:       1 UPD                        3
2025-07-01 06:05:06.397 checked_mode: {checked_mode}, STDLOG:       2 UPD                        4
2025-07-01 06:05:06.403 checked_mode: {checked_mode}, STDLOG:       1 UPD                        4
2025-07-01 06:05:06.409 checked_mode: {checked_mode}, STDLOG:      -3 UPD                        4
2025-07-01 06:05:06.416 checked_mode: {checked_mode}, STDLOG:      -4 UPD                        4
2025-07-01 06:05:06.422 checked_mode: {checked_mode}, STDLOG: Records affected: 9
2025-07-01 06:05:06.427 """
2025-07-01 06:05:06.433
2025-07-01 06:05:06.438 act.expected_stdout = expected_stdout_worker
2025-07-01 06:05:06.444 act.stdout = capsys.readouterr().out
2025-07-01 06:05:06.450 >               assert act.clean_stdout == act.clean_expected_stdout
2025-07-01 06:05:06.460 E               assert
2025-07-01 06:05:06.470 E                   checked_mode: table, STDLOG: Records affected: 4
2025-07-01 06:05:06.480 E                   checked_mode: table, STDLOG: ID
2025-07-01 06:05:06.488 E                   checked_mode: table, STDLOG:
2025-07-01 06:05:06.495 E                   checked_mode: table, STDLOG: -5
2025-07-01 06:05:06.502 E                   checked_mode: table, STDLOG: -2
2025-07-01 06:05:06.513 E                   checked_mode: table, STDLOG: -1
2025-07-01 06:05:06.523 E                   checked_mode: table, STDLOG: 3
2025-07-01 06:05:06.531 E                   checked_mode: table, STDLOG: 4
2025-07-01 06:05:06.538 E                   checked_mode: table, STDLOG: Records affected: 5
2025-07-01 06:05:06.549 E                   checked_mode: table, STDLOG: OLD_ID OP SNAP_NO_RANK
2025-07-01 06:05:06.557 E                   checked_mode: table, STDLOG:
2025-07-01 06:05:06.568 E                 - checked_mode: table, STDLOG: 2 UPD 1
2025-07-01 06:05:06.589 E                 + checked_mode: table, STDLOG: 2UPD 1
2025-07-01 06:05:06.600 E                 - checked_mode: table, STDLOG: 2 UPD 2
2025-07-01 06:05:06.624 E                 + checked_mode: table, STDLOG: 2UPD 2
2025-07-01 06:05:06.632 E                 - checked_mode: table, STDLOG: 1 UPD 2
2025-07-01 06:05:06.656 E                 + checked_mode: table, STDLOG: 1UPD 2
2025-07-01 06:05:06.668 E                 - checked_mode: table, STDLOG: 2 UPD 3
2025-07-01 06:05:06.691 E                 + checked_mode: table, STDLOG: 2UPD 3
2025-07-01 06:05:06.700 E                 - checked_mode: table, STDLOG: 1 UPD 3
2025-07-01 06:05:06.723 E                 + checked_mode: table, STDLOG: 1UPD 3
2025-07-01 06:05:06.733 E                 - checked_mode: table, STDLOG: 2 UPD 4
2025-07-01 06:05:06.751 E                 + checked_mode: table, STDLOG: 2UPD 4
2025-07-01 06:05:06.757 E                 - checked_mode: table, STDLOG: 1 UPD 4
2025-07-01 06:05:06.769 E                 + checked_mode: table, STDLOG: 1UPD 4
2025-07-01 06:05:06.775 E                 - checked_mode: table, STDLOG: -3 UPD 4
2025-07-01 06:05:06.791 E                 + checked_mode: table, STDLOG: -3UPD 4
2025-07-01 06:05:06.799 E                 - checked_mode: table, STDLOG: -4 UPD 4
2025-07-01 06:05:06.812 E                 + checked_mode: table, STDLOG: -4UPD 4
2025-07-01 06:05:06.819 E                   checked_mode: table, STDLOG: Records affected: 9
2025-07-01 06:05:06.828
2025-07-01 06:05:06.837 tests/functional/transactions/test_read_consist_sttm_restart_on_merge_04.py:447: AssertionError
2025-07-01 06:05:06.849 ---------------------------- Captured stdout setup -----------------------------
2025-07-01 06:05:06.857 Creating db: localhost:/var/tmp/qa_2024/test_12483/test.fdb [page_size=None, sql_dialect=None, charset='NONE', user=SYSDBA, password=masterkey]
3 #text
act = <firebird.qa.plugin.Action pytest object at [hex]>
fn_worker_sql = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.sql')
fn_worker_log = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.log')
fn_worker_err = PosixPath('/var/tmp/qa_2024/test_12483/tmp_worker.err')
capsys = <_pytest.capture.CaptureFixture pytest object at [hex]>

    @pytest.mark.trace
    @pytest.mark.version('>=4.0')
    def test_1(act: Action, fn_worker_sql: Path, fn_worker_log: Path, fn_worker_err: Path, capsys):
        sql_init = (act.files_dir / 'read-consist-sttm-restart-DDL.sql').read_text()
    
        for checked_mode in('table', 'view'):
            target_obj = 'test' if checked_mode == 'table' else 'v_test'
    
            SQL_TO_BE_RESTARTED = f"""
                merge /* {SQL_TAG_THAT_WE_WAITING_FOR} */ into {target_obj} t
                using (select * from {target_obj} where id <=2 order by id DESC rows 4) s on s.id=t.id
                when matched then
                    update set t.id = -t.id
                when not matched then
                    insert(id,x) values(1000 + s.id, 1000 + s.x)
            """
    
            sql_addi = f'''
                set term ^;
                execute block as
                begin
                    rdb$set_context('USER_SESSION', 'WHO', 'INIT_DATA');
                end
                ^
                set term ;^
                insert into {target_obj}(id, x)
                select row_number()over(),row_number()over()
                from rdb$types rows 5;
                commit;
            '''
    
            act.isql(switches=['-q'], input = ''.join( (sql_init, sql_addi) ) )
            # ::: NOTE ::: We have to immediately quit if any error raised in prepare phase.
            # See also letter from dimitr, 01-feb-2022 14:46
            assert act.stderr == ''
            act.reset()
    
            trace_cfg_items = [
                'time_threshold = 0',
                'log_errors = true',
                'log_statement_start = true',
                'log_statement_finish = true',
            ]
    
            with act.trace(db_events = trace_cfg_items, encoding=locale.getpreferredencoding()):
    
                with act.db.connect() as con_lock_1, act.db.connect() as con_lock_2, act.db.connect() as con_monitoring:
    
                    tpb_monitoring = tpb(isolation=Isolation.READ_COMMITTED_RECORD_VERSION, lock_timeout=0)
                    tx_monitoring = con_monitoring.transaction_manager(tpb_monitoring)
                    cur_monitoring = tx_monitoring.cursor()
    
                    for i,c in enumerate((con_lock_1,con_lock_2)):
                        sttm = f"execute block as begin rdb$set_context('USER_SESSION', 'WHO', 'LOCKER #{i+1}'); end"
                        c.execute_immediate(sttm)
    
                    #########################
                    ###  L O C K E R - 1  ###
                    #########################
    
                    con_lock_1.execute_immediate( f'update {target_obj} set id=id where id=1' )
    
                    worker_sql = f'''
                        set list on;
                        set autoddl off;
                        set term ^;
                        execute block returns (whoami varchar(30)) as
                        begin
                            whoami = 'WORKER'; -- , ATT#' || current_connection;
                            rdb$set_context('USER_SESSION','WHO', whoami);
                            -- suspend;
                        end
                        ^
                        set term ;^
                        commit;
                        SET KEEP_TRAN_PARAMS ON;
                        set transaction read committed read consistency;
                        set list off;
                        set wng off;
                        set count on;
    
                        -- this must hang because of locker-1:
                        {SQL_TO_BE_RESTARTED};
    
                        -- check results:
                        -- ###############
                        select id from {target_obj} order by id; -- one record must remain, with ID = -5
    
                        select v.old_id, v.op, v.snap_no_rank -- snap_no_rank must have four unique values: 1,2,3 and 4.
                        from v_worker_log v
                        where v.op = 'upd';
    
                        --set width who 10;
                        -- DO NOT check this! Values can differ here from one run to another!
                        -- select id, trn, who, old_id, new_id, op, rec_vers, global_cn, snap_no from tlog_done order by id;
                        rollback;
    
                    '''
    
                    fn_worker_sql.write_text(worker_sql)
    
                    with fn_worker_log.open(mode='w') as hang_out, fn_worker_err.open(mode='w') as hang_err:
    
                        ############################################################################
                        ###  L A U N C H     W O R K E R    U S I N G     I S Q L,   A S Y N C.  ###
                        ############################################################################
                        p_worker = subprocess.Popen([act.vars['isql'], '-i', str(fn_worker_sql),
                                                       '-user', act.db.user,
                                                       '-password', act.db.password,
                                                       '-pag', '999999',
                                                       act.db.dsn
                                                    ],
                                                      stdout = hang_out,
                                                      stderr = hang_err
                                                   )
                        # NB: when ISQL will establish attach, first record that it must lock is ID = 2 -- see above SQL_TO_BE_RESTARTED
                        # We must to ensure that this (worker) attachment has been really created and LOCKS this record:
                        #
                        wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id=2', SQL_TAG_THAT_WE_WAITING_FOR)
    
    
                        #########################
                        ###  L O C K E R - 2  ###
                        #########################
    
                        # Change ID so that it **will* be included in the set of rows that must be affected by session-worker:
                        con_lock_2.execute_immediate( f'update {target_obj} set id = -5 where abs(id) = 5;' )
                        con_lock_2.commit()
                        con_lock_2.execute_immediate( f'update {target_obj} set id = id where abs(id) = 5;' )
                        con_lock_1.commit()  # releases record with ID=1 ==> now it can be locked by worker.
    
                        # We have to WAIT HERE until worker will actually 'catch' just released record with ID = 1.
                        #
                        wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id=1', SQL_TAG_THAT_WE_WAITING_FOR)
    
                        # If we come here then it means that record with ID = 1 for sure is locked by WORKER.
    
                        # Change ID so that it **will* be included in the set of rows that must be affected by session-worker:
                        con_lock_1.execute_immediate( f'update {target_obj} set id = -4 where abs(id) = 4;' )
                        con_lock_1.commit()
                        con_lock_1.execute_immediate( f'update {target_obj} set id = id where abs(id) = 4;' )
    
                        con_lock_2.commit() # releases record with ID = -5, but session-worker is waiting for record with ID = -4 (that was changed by locker-1).
    
                        # We have to WAIT HERE until worker will actually 'catch' just released record with ID = -5:
                        #
                        wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id = -5', SQL_TAG_THAT_WE_WAITING_FOR)
    
                        # If we come here then it means that record with ID = -5 for sure is locked by WORKER.
    
                        con_lock_2.execute_immediate( f'update {target_obj} set id = -3 where abs(id) = 3;' )
                        con_lock_2.commit()
                        con_lock_2.execute_immediate( f'update {target_obj} set id = id where abs(id) = 3;' )
    
                        con_lock_1.commit() # This releases row with ID=-4 but session-worker is waiting for ID = - 3 (changed by locker-2).
    
    
                        # We have to WAIT HERE until worker will actually 'catch' just released record with ID = -4:
                        #
                        wait_for_record_become_locked(tx_monitoring, cur_monitoring, f'update {target_obj} set id=id where id = -4', SQL_TAG_THAT_WE_WAITING_FOR)
    
                        # If we come here then it means that record with ID = -4 for sure is locked by WORKER.
    
                        con_lock_2.commit() # This releases row with ID=-3. No more locked rows so session-worker can finish its mission.
    
                        # Here we wait for ISQL complete its mission:
                        p_worker.wait()
                # < with act.db.connect
    
                for g in (fn_worker_log, fn_worker_err):
                    with g.open() as f:
                        for line in f:
                            if line.split():
                                if g == fn_worker_log:
                                    print(f'checked_mode: {checked_mode}, STDLOG: {line}')
                                else:
                                    print(f'UNEXPECTED STDERR {line}')
    
                expected_stdout_worker = f"""
                    checked_mode: {checked_mode}, STDLOG: Records affected: 4
    
                    checked_mode: {checked_mode}, STDLOG:      ID
                    checked_mode: {checked_mode}, STDLOG: =======
                    checked_mode: {checked_mode}, STDLOG:      -5
                    checked_mode: {checked_mode}, STDLOG:      -2
                    checked_mode: {checked_mode}, STDLOG:      -1
                    checked_mode: {checked_mode}, STDLOG:       3
                    checked_mode: {checked_mode}, STDLOG:       4
                    checked_mode: {checked_mode}, STDLOG: Records affected: 5
    
                    checked_mode: {checked_mode}, STDLOG:  OLD_ID OP              SNAP_NO_RANK
                    checked_mode: {checked_mode}, STDLOG: ======= ====== =====================
                    checked_mode: {checked_mode}, STDLOG:       2 UPD                        1
                    checked_mode: {checked_mode}, STDLOG:       2 UPD                        2
                    checked_mode: {checked_mode}, STDLOG:       1 UPD                        2
                    checked_mode: {checked_mode}, STDLOG:       2 UPD                        3
                    checked_mode: {checked_mode}, STDLOG:       1 UPD                        3
                    checked_mode: {checked_mode}, STDLOG:       2 UPD                        4
                    checked_mode: {checked_mode}, STDLOG:       1 UPD                        4
                    checked_mode: {checked_mode}, STDLOG:      -3 UPD                        4
                    checked_mode: {checked_mode}, STDLOG:      -4 UPD                        4
                    checked_mode: {checked_mode}, STDLOG: Records affected: 9
                """
    
                act.expected_stdout = expected_stdout_worker
                act.stdout = capsys.readouterr().out
>               assert act.clean_stdout == act.clean_expected_stdout
E               assert   
E                   checked_mode: table, STDLOG: Records affected: 4
E                   checked_mode: table, STDLOG: ID
E                   checked_mode: table, STDLOG:
E                   checked_mode: table, STDLOG: -5
E                   checked_mode: table, STDLOG: -2
E                   checked_mode: table, STDLOG: -1
E                   checked_mode: table, STDLOG: 3
E                   checked_mode: table, STDLOG: 4
E                   checked_mode: table, STDLOG: Records affected: 5
E                   checked_mode: table, STDLOG: OLD_ID OP SNAP_NO_RANK
E                   checked_mode: table, STDLOG:
E                 - checked_mode: table, STDLOG: 2 UPD 1
E                 + checked_mode: table, STDLOG: 2UPD 1
E                 - checked_mode: table, STDLOG: 2 UPD 2
E                 + checked_mode: table, STDLOG: 2UPD 2
E                 - checked_mode: table, STDLOG: 1 UPD 2
E                 + checked_mode: table, STDLOG: 1UPD 2
E                 - checked_mode: table, STDLOG: 2 UPD 3
E                 + checked_mode: table, STDLOG: 2UPD 3
E                 - checked_mode: table, STDLOG: 1 UPD 3
E                 + checked_mode: table, STDLOG: 1UPD 3
E                 - checked_mode: table, STDLOG: 2 UPD 4
E                 + checked_mode: table, STDLOG: 2UPD 4
E                 - checked_mode: table, STDLOG: 1 UPD 4
E                 + checked_mode: table, STDLOG: 1UPD 4
E                 - checked_mode: table, STDLOG: -3 UPD 4
E                 + checked_mode: table, STDLOG: -3UPD 4
E                 - checked_mode: table, STDLOG: -4 UPD 4
E                 + checked_mode: table, STDLOG: -4UPD 4
E                   checked_mode: table, STDLOG: Records affected: 9

tests/functional/transactions/test_read_consist_sttm_restart_on_merge_04.py:447: AssertionError
Full history of outcomes and elapsed time, ms:
NN SNAP_INFO CS_outcome SS_outcome CS_run_time SS_run_time CS_run_beg CS_run_end SS_run_beg SS_run_end
1 6.0.0.889 2025.07.01 969ac F F 3800 3088 2025.07.02 02:43:27.527 2025.07.02 02:43:31.327 2025.07.01 23:49:41.746 2025.07.01 23:49:44.834
2 6.0.0.884 2025.06.30 f7e5f F F 3730 3133 2025.07.01 02:42:12.788 2025.07.01 02:42:16.518 2025.06.30 23:58:01.589 2025.06.30 23:58:04.722
3 6.0.0.881 2025.06.27 7035d P P 7268 7005 2025.06.30 02:35:46.939 2025.06.30 02:35:54.207 2025.06.29 23:48:19.726 2025.06.29 23:48:26.731
4 6.0.0.877 2025.06.26 8e38f P P 7165 6635 2025.06.27 02:12:44.021 2025.06.27 02:12:51.186 2025.06.26 23:37:32.402 2025.06.26 23:37:39.037
5 6.0.0.876 2025.06.25 b1bec P P 7170 6280 2025.06.26 02:16:35.508 2025.06.26 02:16:42.678 2025.06.25 23:39:29.712 2025.06.25 23:39:35.992
6 6.0.0.863 2025.06.24 c3c20 P P 7098 5939 2025.06.25 02:16:49.448 2025.06.25 02:16:56.546 2025.06.24 23:39:12.962 2025.06.24 23:39:18.901
7 6.0.0.858 2025.06.23 8d6f7 P P 7306 5948 2025.06.24 02:16:54.246 2025.06.24 02:17:01.552 2025.06.23 23:39:05.466 2025.06.23 23:39:11.414
8 6.0.0.849 2025.06.20 7b79c P P 7345 5916 2025.06.21 02:28:39.570 2025.06.21 02:28:46.915 2025.06.20 23:49:09.278 2025.06.20 23:49:15.194
9 6.0.0.848 2025.06.19 c483c P P 7079 6042 2025.06.20 02:25:02.022 2025.06.20 02:25:09.101 2025.06.19 23:45:27.463 2025.06.19 23:45:33.505
10 6.0.0.845 2025.06.18 22b12 P P 7173 6096 2025.06.19 02:33:46.128 2025.06.19 02:33:53.301 2025.06.18 23:49:37.439 2025.06.18 23:49:43.535
11 6.0.0.843 2025.06.16 995f4 P P 7137 5893 2025.06.18 02:32:10.789 2025.06.18 02:32:17.926 2025.06.17 23:50:49.446 2025.06.17 23:50:55.339
12 6.0.0.840 2025.06.14 29bca P P 7169 6456 2025.06.16 02:23:53.725 2025.06.16 02:24:00.894 2025.06.15 23:42:57.642 2025.06.15 23:43:04.098
13 6.0.0.838 2025.06.13 0e28a P P 7383 5974 2025.06.14 02:38:11.166 2025.06.14 02:38:18.549 2025.06.13 23:51:40.326 2025.06.13 23:51:46.300
14 6.0.0.835 2025.06.12 2cf29 P P 7124 6879 2025.06.13 02:36:34.602 2025.06.13 02:36:41.726 2025.06.12 23:54:23.542 2025.06.12 23:54:30.421
15 6.0.0.834 2025.06.11 e889f P P 7265 7000 2025.06.12 02:32:42.394 2025.06.12 02:32:49.659 2025.06.11 23:50:53.398 2025.06.11 23:51:00.398
16 6.0.0.800 2025.06.10 1f226 P P 7369 6989 2025.06.11 01:04:28.584 2025.06.11 01:04:35.953 2025.06.10 22:52:50.447 2025.06.10 22:52:57.436
17 6.0.0.799 2025.06.07 be644 P P 7337 6949 2025.06.10 01:06:57.040 2025.06.10 01:07:04.377 2025.06.09 22:52:14.809 2025.06.09 22:52:21.758
18 6.0.0.797 2025.06.06 303e8 P P 7348 7165 2025.06.07 01:11:07.461 2025.06.07 01:11:14.809 2025.06.06 22:52:07.878 2025.06.06 22:52:15.043
19 6.0.0.795 2025.05.29 7a71a P P 7406 6784 2025.06.06 01:05:16.186 2025.06.06 01:05:23.592 2025.06.05 22:50:26.102 2025.06.05 22:50:32.886
20 6.0.0.792 2025.05.28 b4327 P P 7260 6795 2025.05.29 01:20:35.318 2025.05.29 01:20:42.578 2025.05.28 22:54:48.663 2025.05.28 22:54:55.458
21 6.0.0.791 2025.05.27 02db8 P P 7391 7000 2025.05.28 01:18:24.066 2025.05.28 01:18:31.457 2025.05.27 22:53:58.386 2025.05.27 22:54:05.386
22 6.0.0.789 2025.05.21 64051 P P 7360 6899 2025.05.25 01:10:26.483 2025.05.25 01:10:33.843 2025.05.24 22:52:33.655 2025.05.24 22:52:40.554
23 6.0.0.787 2025.05.20 230ad P P 7379 6793 2025.05.21 01:07:34.770 2025.05.21 01:07:42.149 2025.05.20 22:50:23.307 2025.05.20 22:50:30.100
24 6.0.0.783 2025.05.12 37320 P P 7405 6496 2025.05.19 12:38:51.404 2025.05.19 12:38:58.809 2025.05.19 10:38:09.442 2025.05.19 10:38:15.938
25 6.0.0.779 2025.05.11 136fa P P 8371 6932 2025.05.12 01:02:52.403 2025.05.12 01:03:00.774 2025.05.11 22:49:02.723 2025.05.11 22:49:09.655
26 6.0.0.778 2025.05.07 d735e P P 7399 6850 2025.05.08 01:03:30.939 2025.05.08 01:03:38.338 2025.05.07 22:47:53.519 2025.05.07 22:48:00.369
27 6.0.0.776 2025.05.06 007cd P P 7428 7060 2025.05.07 00:59:22.487 2025.05.07 00:59:29.915 2025.05.06 22:48:14.707 2025.05.06 22:48:21.767
28 6.0.0.770 2025.05.05 82c4a P P 7329 7084 2025.05.06 00:57:32.304 2025.05.06 00:57:39.633 2025.05.05 22:47:02.759 2025.05.05 22:47:09.843
29 6.0.0.767 2025.05.01 cdd29 P P 7488 6915 2025.05.02 00:51:52.394 2025.05.02 00:51:59.882 2025.05.01 22:45:54.705 2025.05.01 22:46:01.620
30 6.0.0.762 2025.04.30 5cb15 P P 7524 6897 2025.05.01 00:50:17.301 2025.05.01 00:50:24.825 2025.04.30 22:44:19.561 2025.04.30 22:44:26.458
31 6.0.0.755 2025.04.29 739c6 P P 8327 6667 2025.04.30 00:54:29.112 2025.04.30 00:54:37.439 2025.04.29 22:46:01.222 2025.04.29 22:46:07.889
32 6.0.0.753 2025.04.27 29ab3 P P 7238 6814 2025.04.28 00:56:33.822 2025.04.28 00:56:41.060 2025.04.27 22:44:58.387 2025.04.27 22:45:05.201
33 6.0.0.745 2025.04.21 78ad8 P P 7537 7082 2025.04.26 00:51:37.743 2025.04.26 00:51:45.280 2025.04.25 22:46:16.044 2025.04.25 22:46:23.126
34 6.0.0.744 2025.04.19 e883a P P 7345 7173 2025.04.20 00:54:07.282 2025.04.20 00:54:14.627 2025.04.19 22:47:00.186 2025.04.19 22:47:07.359
35 6.0.0.742 2025.04.17 abc3b P P 7448 6692 2025.04.19 00:56:36.166 2025.04.19 00:56:43.614 2025.04.18 22:47:02.526 2025.04.18 22:47:09.218
36 6.0.0.737 2025.04.16 fe52b P P 7336 7312 2025.04.17 00:52:40.897 2025.04.17 00:52:48.233 2025.04.16 22:47:15.506 2025.04.16 22:47:22.818
37 6.0.0.736 2025.04.14 3e6be P P 7360 5964 2025.04.15 00:28:04.409 2025.04.15 00:28:11.769 2025.04.14 22:36:14.029 2025.04.14 22:36:19.993
38 6.0.0.735 2025.04.13 6635c P P 7306 6751 2025.04.14 00:34:36.380 2025.04.14 00:34:43.686 2025.04.13 22:37:26.988 2025.04.13 22:37:33.739
39 6.0.0.734 2025.04.12 12f3f P P 7278 6667 2025.04.13 00:31:51.702 2025.04.13 00:31:58.980 2025.04.12 22:36:33.835 2025.04.12 22:36:40.502
40 6.0.0.730 2025.04.11 240b8 P P 7374 6169 2025.04.12 00:34:40.437 2025.04.12 00:34:47.811 2025.04.11 22:36:50.518 2025.04.11 22:36:56.687
41 6.0.0.726 2025.04.10 d79c6 P P 7445 6376 2025.04.11 00:34:45.471 2025.04.11 00:34:52.916 2025.04.10 22:36:52.258 2025.04.10 22:36:58.634
42 6.0.0.725 2025.04.09 a2b05 P P 7267 6395 2025.04.10 00:34:32.872 2025.04.10 00:34:40.139 2025.04.09 22:37:02.355 2025.04.09 22:37:08.750
43 6.0.0.722 2025.04.08 a8b86 P P 7480 7243 2025.04.09 00:49:09.307 2025.04.09 00:49:16.787 2025.04.08 22:44:59.053 2025.04.08 22:45:06.296
44 6.0.0.719 2025.04.06 90fd9 P P 7314 7013 2025.04.07 00:48:43.300 2025.04.07 00:48:50.614 2025.04.06 22:42:46.750 2025.04.06 22:42:53.763
45 6.0.0.717 2025.04.04 53d70 P P 7334 7050 2025.04.05 00:44:13.456 2025.04.05 00:44:20.790 2025.04.04 22:41:49.952 2025.04.04 22:41:57.002
46 6.0.0.716 2025.04.03 fc636 P P 7428 7077 2025.04.04 00:45:03.272 2025.04.04 00:45:10.700 2025.04.03 22:43:50.298 2025.04.03 22:43:57.375
47 6.0.0.715 2025.04.02 907ed P P 7543 7203 2025.04.03 00:47:57.099 2025.04.03 00:48:04.642 2025.04.02 22:43:48.522 2025.04.02 22:43:55.725
48 6.0.0.710 2025.04.01 40651 P P 7465 7084 2025.04.02 00:45:03.681 2025.04.02 00:45:11.146 2025.04.01 22:42:35.254 2025.04.01 22:42:42.338
49 6.0.0.708 2025.03.31 cb069 P P 7429 6018 2025.04.01 00:33:51.045 2025.04.01 00:33:58.474 2025.03.31 22:37:43.937 2025.03.31 22:37:49.955
50 6.0.0.707 2025.03.28 4bd4f P P 7421 6215 2025.03.31 00:37:16.153 2025.03.31 00:37:23.574 2025.03.30 22:37:45.298 2025.03.30 22:37:51.513
51 6.0.0.698 2025.03.26 d72a7 P P 7155 6847 2025.03.28 00:56:28.266 2025.03.28 00:56:35.421 2025.03.27 22:45:50.267 2025.03.27 22:45:57.114
52 6.0.0.693 2025.03.24 0b559 P P 7132 6908 2025.03.25 00:46:28.905 2025.03.25 00:46:36.037 2025.03.24 22:41:03.184 2025.03.24 22:41:10.092
53 6.0.0.687 2025.03.22 730aa P P 7650 6917 2025.03.24 00:58:36.629 2025.03.24 00:58:44.279 2025.03.23 22:48:47.914 2025.03.23 22:48:54.831
54 6.0.0.686 2025.03.20 71bf6 P P 7479 7002 2025.03.21 01:02:46.228 2025.03.21 01:02:53.707 2025.03.20 22:52:27.471 2025.03.20 22:52:34.473
55 6.0.0.685 2025.03.19 a8577 P P 8699 7194 2025.03.20 01:11:53.147 2025.03.20 01:12:01.846 2025.03.19 22:50:07.197 2025.03.19 22:50:14.391
56 6.0.0.680 2025.03.18 90d29 P P 7485 6511 2025.03.19 11:24:46.569 2025.03.19 11:24:54.054 2025.03.19 09:34:02.093 2025.03.19 09:34:08.604
57 6.0.0.677 2025.03.16 c0a60 P P 7504 6521 2025.03.17 00:51:20.128 2025.03.17 00:51:27.632 2025.03.16 22:44:14.370 2025.03.16 22:44:20.891
58 6.0.0.676 2025.03.15 3034f P P 7595 6539 2025.03.16 16:24:15.882 2025.03.16 16:24:23.477 2025.03.16 14:35:22.714 2025.03.16 14:35:29.253
59 6.0.0.673 2025.03.13 40f5b P P 7149 7271 2025.03.14 00:48:02.342 2025.03.14 00:48:09.491 2025.03.13 22:43:33.903 2025.03.13 22:43:41.174
60 6.0.0.671 2025.03.12 a4fff P P 7502 6871 2025.03.13 00:51:19.282 2025.03.13 00:51:26.784 2025.03.12 22:46:35.504 2025.03.12 22:46:42.375
61 6.0.0.663 2025.03.11 daad2 P P 7434 6380 2025.03.12 00:52:01.110 2025.03.12 00:52:08.544 2025.03.11 22:45:29.583 2025.03.11 22:45:35.963
62 6.0.0.661 2025.03.07 b9869 P P 7427 6051 2025.03.11 00:27:00.113 2025.03.11 00:27:07.540 2025.03.10 22:35:35.044 2025.03.10 22:35:41.095
63 6.0.0.660 2025.03.04 a6700 P P 7450 6753 2025.03.07 00:37:27.208 2025.03.07 00:37:34.658 2025.03.06 22:40:36.322 2025.03.06 22:40:43.075
64 6.0.0.658 2025.03.03 f15f8 P P 7376 6004 2025.03.04 00:30:45.294 2025.03.04 00:30:52.670 2025.03.03 22:36:16.918 2025.03.03 22:36:22.922
65 6.0.0.656 2025.02.27 25fb4 P P 7596 6692 2025.03.03 01:05:05.555 2025.03.03 01:05:13.151 2025.03.02 22:48:18.459 2025.03.02 22:48:25.151
66 6.0.0.655 2025.02.25 6e3e0 P P 7187 6772 2025.02.27 00:34:53.714 2025.02.27 00:35:00.901 2025.02.26 22:37:38.466 2025.02.26 22:37:45.238
67 6.0.0.654 2025.02.24 b7141 P P 7684 6003 2025.02.25 00:38:06.805 2025.02.25 00:38:14.489 2025.02.24 22:39:24.547 2025.02.24 22:39:30.550
68 6.0.0.652 2025.02.22 22662 P P 7551 6555 2025.02.24 07:58:09.394 2025.02.24 07:58:16.945 2025.02.24 00:52:26.140 2025.02.24 00:52:32.695
69 6.0.0.647 2025.02.21 9fccb P P 7366 6896 2025.02.22 00:40:21.498 2025.02.22 00:40:28.864 2025.02.21 22:41:35.621 2025.02.21 22:41:42.517
70 6.0.0.640 2025.02.19 9b8ac P P 8788 6563 2025.02.20 00:34:57.798 2025.02.20 00:35:06.586 2025.02.19 22:37:45.523 2025.02.19 22:37:52.086
71 6.0.0.639 2025.02.18 201a4 P P 7543 6943 2025.02.19 00:29:13.843 2025.02.19 00:29:21.386 2025.02.18 22:35:48.084 2025.02.18 22:35:55.027
72 6.0.0.637 2025.02.12 6d0f5 P P 9215 6097 2025.02.14 00:48:07.671 2025.02.14 00:48:16.886 2025.02.13 22:43:46.835 2025.02.13 22:43:52.932
73 6.0.0.636 2025.02.11 0424f P P 8773 5965 2025.02.12 00:43:32.309 2025.02.12 00:43:41.082 2025.02.11 22:42:57.234 2025.02.11 22:43:03.199
74 6.0.0.635 2025.02.10 f640f P P 6980 6400 2025.02.11 00:42:26.788 2025.02.11 00:42:33.768 2025.02.10 22:42:46.216 2025.02.10 22:42:52.616
75 6.0.0.629 2025.02.07 194f9 P P 8426 6096 2025.02.08 00:42:25.485 2025.02.08 00:42:33.911 2025.02.07 22:41:49.290 2025.02.07 22:41:55.386
76 6.0.0.628 2025.02.06 859d5 P P 7470 7112 2025.02.07 01:01:04.861 2025.02.07 01:01:12.331 2025.02.06 22:48:21.574 2025.02.06 22:48:28.686
77 6.0.0.621 2025.02.05 34fe7 P P 7499 6860 2025.02.06 00:56:05.903 2025.02.06 00:56:13.402 2025.02.05 22:49:02.346 2025.02.05 22:49:09.206
78 6.0.0.609 2025.02.04 76d57 P P 7590 7093 2025.02.05 00:50:49.290 2025.02.05 00:50:56.880 2025.02.04 22:44:41.767 2025.02.04 22:44:48.860
79 6.0.0.607 2025.02.03 1985b P P 7408 7037 2025.02.04 00:48:24.872 2025.02.04 00:48:32.280 2025.02.03 22:45:40.278 2025.02.03 22:45:47.315
80 6.0.0.601 2025.02.01 6af07 P P 7186 6127 2025.02.02 00:38:13.830 2025.02.02 00:38:21.016 2025.02.01 22:41:16.178 2025.02.01 22:41:22.305
81 6.0.0.600 2025.01.27 188de P P 9275 6082 2025.01.28 00:47:36.494 2025.01.28 00:47:45.769 2025.01.27 22:43:38.795 2025.01.27 22:43:44.877
82 6.0.0.599 2025.01.25 ba588 P P 7035 6878 2025.01.26 00:46:08.044 2025.01.26 00:46:15.079 2025.01.25 22:44:26.151 2025.01.25 22:44:33.029
83 6.0.0.598 2025.01.23 ddbc3 P P 7020 6064 2025.01.25 00:47:20.987 2025.01.25 00:47:28.007 2025.01.24 22:43:22.231 2025.01.24 22:43:28.295
84 6.0.0.595 2025.01.22 e62f3 P P 6893 7075 2025.01.23 00:39:17.481 2025.01.23 00:39:24.374 2025.01.22 22:38:27.211 2025.01.22 22:38:34.286
85 6.0.0.594 2025.01.21 47fb6 P P 8838 6887 2025.01.22 00:32:48.969 2025.01.22 00:32:57.807 2025.01.21 22:38:19.150 2025.01.21 22:38:26.037
86 6.0.0.590 2025.01.20 9dc1e P P 8716 6078 2025.01.21 00:41:02.434 2025.01.21 00:41:11.150 2025.01.20 22:43:00.125 2025.01.20 22:43:06.203
87 6.0.0.588 2025.01.19 b1c4e P P 10225 6137 2025.01.20 00:39:22.438 2025.01.20 00:39:32.663 2025.01.19 22:40:20.462 2025.01.19 22:40:26.599
88 6.0.0.587 2025.01.18 63e6e P P 7034 6076 2025.01.19 00:43:24.519 2025.01.19 00:43:31.553 2025.01.18 22:42:16.150 2025.01.18 22:42:22.226
89 6.0.0.585 2025.01.16 2d6bb P P 7390 7064 2025.01.18 00:36:16.499 2025.01.18 00:36:23.889 2025.01.17 22:38:52.277 2025.01.17 22:38:59.341
90 6.0.0.584 2025.01.15 a0aa2 P P 7454 5915 2025.01.16 00:41:06.360 2025.01.16 00:41:13.814 2025.01.15 22:41:56.368 2025.01.15 22:42:02.283
91 6.0.0.581 2025.01.14 21e9e P P 8605 6171 2025.01.15 00:41:32.390 2025.01.15 00:41:40.995 2025.01.14 22:40:49.282 2025.01.14 22:40:55.453
92 6.0.0.577 2025.01.13 7e293 P P 7407 6020 2025.01.14 00:43:43.465 2025.01.14 00:43:50.872 2025.01.13 22:41:26.183 2025.01.13 22:41:32.203
93 6.0.0.576 2025.01.12 05898 P P 8771 6667 2025.01.13 00:37:35.278 2025.01.13 00:37:44.049 2025.01.12 22:39:11.374 2025.01.12 22:39:18.041
94 6.0.0.573 2025.01.10 c20f3 P P 7366 6047 2025.01.11 00:39:39.233 2025.01.11 00:39:46.599 2025.01.10 22:40:09.846 2025.01.10 22:40:15.893
95 6.0.0.571 2024.12.31 81bba P P 7952 6792 2025.01.01 00:12:32.039 2025.01.01 00:12:39.991 2024.12.31 22:18:42.103 2024.12.31 22:18:48.895
96 6.0.0.570 2024.12.30 c3c8d P P 8292 6643 2024.12.31 00:13:14.791 2024.12.31 00:13:23.083 2024.12.30 22:18:34.580 2024.12.30 22:18:41.223
97 6.0.0.565 2024.12.28 5fc59 P P 7410 5761 2024.12.30 12:46:10.361 2024.12.30 12:46:17.771 2024.12.30 11:26:16.260 2024.12.30 11:26:22.021
98 6.0.0.564 2024.12.26 12514 P P 8068 6813 2024.12.27 00:14:25.260 2024.12.27 00:14:33.328 2024.12.26 22:18:43.817 2024.12.26 22:18:50.630
99 6.0.0.560 2024.12.25 fa83e P P 6513 6575 2024.12.26 00:06:53.035 2024.12.26 00:06:59.548 2024.12.25 22:18:26.354 2024.12.25 22:18:32.929
100 6.0.0.559 2024.12.23 cc800 P P 7865 6856 2024.12.25 00:08:01.042 2024.12.25 00:08:08.907 2024.12.24 22:19:17.167 2024.12.24 22:19:24.023
101 6.0.0.556 2024.12.22 a0404 P P 7478 6754 2024.12.23 00:14:01.380 2024.12.23 00:14:08.858 2024.12.22 22:18:30.335 2024.12.22 22:18:37.089
102 6.0.0.555 2024.12.19 6990a P P 6663 6018 2024.12.21 13:21:36.750 2024.12.21 13:21:43.413 2024.12.21 12:01:46.601 2024.12.21 12:01:52.619
103 6.0.0.553 2024.12.17 d1f8a P P 6792 6860 2024.12.18 00:08:50.888 2024.12.18 00:08:57.680 2024.12.17 22:19:26.060 2024.12.17 22:19:32.920
104 6.0.0.552 2024.12.11 85e25 P P 6605 6675 2024.12.16 00:13:05.920 2024.12.16 00:13:12.525 2024.12.15 22:19:01.709 2024.12.15 22:19:08.384
105 6.0.0.550 2024.12.10 b37ac P P 7996 6120 2024.12.11 00:07:27.531 2024.12.11 00:07:35.527 2024.12.10 22:20:59.799 2024.12.10 22:21:05.919
106 6.0.0.548 2024.12.08 2cc77 P P 6402 6299 2024.12.09 00:02:16.941 2024.12.09 00:02:23.343 2024.12.08 22:15:59.991 2024.12.08 22:16:06.290
107 6.0.0.544 2024.12.05 96943 P P 8662 6451 2024.12.06 00:05:41.707 2024.12.06 00:05:50.369 2024.12.05 22:20:49.083 2024.12.05 22:20:55.534
108 6.0.0.543 2024.12.03 30b77 P P 7596 6906 2024.12.04 00:05:26.991 2024.12.04 00:05:34.587 2024.12.03 22:18:58.020 2024.12.03 22:19:04.926
109 6.0.0.540 2024.12.02 4a1f4 P P 7613 6368 2024.12.03 00:01:44.728 2024.12.03 00:01:52.341 2024.12.02 22:16:01.979 2024.12.02 22:16:08.347
110 6.0.0.539 2024.11.28 1f283 P P 8013 6728 2024.11.30 00:14:46.778 2024.11.30 00:14:54.791 2024.11.29 22:18:20.847 2024.11.29 22:18:27.575
111 6.0.0.535 2024.11.26 77b95 P P 8084 6347 2024.11.26 23:57:55.663 2024.11.26 23:58:03.747 2024.11.26 22:15:17.783 2024.11.26 22:15:24.130
112 6.0.0.534 2024.11.25 e9584 P P 7339 6874 2024.11.25 23:59:13.400 2024.11.25 23:59:20.739 2024.11.25 22:16:13.751 2024.11.25 22:16:20.625
113 6.0.0.533 2024.11.17 933ac P P 6878 6062 2024.11.22 10:01:57.955 2024.11.22 10:02:04.833 2024.11.22 08:44:33.574 2024.11.22 08:44:39.636
114 6.0.0.532 2024.11.16 9e263 P P 8248 5889 2024.11.16 23:49:02.651 2024.11.16 23:49:10.899 2024.11.16 22:14:36.929 2024.11.16 22:14:42.818
115 6.0.0.530 2024.11.15 49804 P P 7370 6067 2024.11.16 01:56:00.937 2024.11.16 01:56:08.307 2024.11.16 00:15:11.690 2024.11.16 00:15:17.757
116 6.0.0.528 2024.11.14 9625b P P 7188 6145 2024.11.15 01:59:40.294 2024.11.15 01:59:47.482 2024.11.15 00:16:05.774 2024.11.15 00:16:11.919
117 6.0.0.526 2024.11.12 65b80 P P 8224 6516 2024.11.14 01:59:23.699 2024.11.14 01:59:31.923 2024.11.14 00:15:59.466 2024.11.14 00:16:05.982
118 6.0.0.523 2024.11.08 8ca23 P P 7366 6085 2024.11.11 01:55:37.432 2024.11.11 01:55:44.798 2024.11.11 00:14:29.028 2024.11.11 00:14:35.113
119 6.0.0.520 2024.11.07 4eefa F F 3750 4020 2024.11.08 01:50:55.629 2024.11.08 01:50:59.379 2024.11.08 00:12:56.921 2024.11.08 00:13:00.941
120 6.0.0.516 2024.11.04 b0c36 P P 6511 5658 2024.11.05 01:51:11.271 2024.11.05 01:51:17.782 2024.11.05 00:13:40.988 2024.11.05 00:13:46.646
121 6.0.0.515 2024.10.30 d53f3 P P 6556 5868 2024.11.04 01:53:42.100 2024.11.04 01:53:48.656 2024.11.04 00:14:10.766 2024.11.04 00:14:16.634
122 6.0.0.512 2024.10.29 833ef P P 7357 6240 2024.10.30 01:56:57.935 2024.10.30 01:57:05.292 2024.10.30 00:15:45.076 2024.10.30 00:15:51.316
123 6.0.0.511 2024.10.26 c4bc9 P P 7980 6270 2024.10.29 01:55:19.429 2024.10.29 01:55:27.409 2024.10.29 00:15:31.484 2024.10.29 00:15:37.754
124 6.0.0.509 2024.10.25 3aedb P P 8138 6624 2024.10.26 02:06:54.924 2024.10.26 02:07:03.062 2024.10.26 00:19:39.717 2024.10.26 00:19:46.341
125 6.0.0.508 2024.10.24 a8f5b P P 6329 6292 2024.10.25 02:00:34.787 2024.10.25 02:00:41.116 2024.10.25 00:16:28.989 2024.10.25 00:16:35.281
126 6.0.0.502 2024.10.22 6bfd7 P P 7293 6348 2024.10.23 02:00:32.740 2024.10.23 02:00:40.033 2024.10.23 00:16:17.309 2024.10.23 00:16:23.657
127 6.0.0.500 2024.10.21 be565 P P 6412 6104 2024.10.22 18:05:05.025 2024.10.22 18:05:11.437 2024.10.22 16:45:33.475 2024.10.22 16:45:39.579
128 6.0.0.499 2024.10.19 6214b P P 7643 6357 2024.10.20 02:00:05.949 2024.10.20 02:00:13.592 2024.10.20 00:17:13.598 2024.10.20 00:17:19.955
129 6.0.0.498 2024.10.18 591a7 P P 8096 6371 2024.10.19 01:58:38.825 2024.10.19 01:58:46.921 2024.10.19 00:15:43.923 2024.10.19 00:15:50.294
130 6.0.0.494 2024.10.17 cf5a4 P P 7584 6380 2024.10.18 01:59:28.449 2024.10.18 01:59:36.033 2024.10.18 00:16:55.657 2024.10.18 00:17:02.037
131 6.0.0.491 2024.10.14 dc5fb P P 7776 5654 2024.10.15 01:55:52.573 2024.10.15 01:56:00.349 2024.10.15 00:14:34.395 2024.10.15 00:14:40.049
132 6.0.0.489 2024.10.11 2ba59 P P 8536 6437 2024.10.12 02:03:54.889 2024.10.12 02:04:03.425 2024.10.12 00:17:11.802 2024.10.12 00:17:18.239
133 6.0.0.488 2024.10.09 1c93e P P 7079 6552 2024.10.10 02:12:42.741 2024.10.10 02:12:49.820 2024.10.10 00:21:46.874 2024.10.10 00:21:53.426
134 6.0.0.487 2024.10.06 065a3 P P 6647 6486 2024.10.07 02:11:43.798 2024.10.07 02:11:50.445 2024.10.07 00:21:21.980 2024.10.07 00:21:28.466
135 6.0.0.485 2024.10.04 e95c1 P P 7991 6736 2024.10.05 02:12:03.509 2024.10.05 02:12:11.500 2024.10.05 00:22:18.693 2024.10.05 00:22:25.429
136 6.0.0.483 2024.10.02 5e5ae P P 6636 6419 2024.10.03 02:07:48.566 2024.10.03 02:07:55.202 2024.10.03 00:20:42.523 2024.10.03 00:20:48.942
137 6.0.0.478 2024.09.30 b5010 P P 6600 6425 2024.10.01 02:02:24.563 2024.10.01 02:02:31.163 2024.10.01 00:19:33.876 2024.10.01 00:19:40.301
138 6.0.0.474 2024.09.26 e4efb P P 7691 6330 2024.09.30 02:02:35.874 2024.09.30 02:02:43.565 2024.09.30 00:17:08.328 2024.09.30 00:17:14.658
139 6.0.0.471 2024.09.24 01b51 P P 7768 6529 2024.09.26 00:07:25.265 2024.09.26 00:07:33.033 2024.09.25 22:18:38.054 2024.09.25 22:18:44.583
140 6.0.0.470 2024.09.23 77cc0 P P 6300 6459 2024.09.24 00:05:10.621 2024.09.24 00:05:16.921 2024.09.23 22:18:35.597 2024.09.23 22:18:42.056
141 6.0.0.467 2024.09.21 ea0b8 P P 7363 6518 2024.09.23 00:03:19.040 2024.09.23 00:03:26.403 2024.09.22 22:17:30.436 2024.09.22 22:17:36.954
142 6.0.0.466 2024.09.20 32dc6 P P 6621 6457 2024.09.21 00:01:33.832 2024.09.21 00:01:40.453 2024.09.20 22:16:53.940 2024.09.20 22:17:00.397
143 6.0.0.461 2024.09.17 2c895 P P 7495 6462 2024.09.18 00:40:35.260 2024.09.18 00:40:42.755 2024.09.17 22:41:03.324 2024.09.17 22:41:09.786
144 6.0.0.460 2024.09.11 3c253 P P 7305 6533 2024.09.17 00:41:13.631 2024.09.17 00:41:20.936 2024.09.16 22:42:08.012 2024.09.16 22:42:14.545
145 6.0.0.457 2024.09.09 fdc6f P P 8216 6912 2024.09.10 01:07:00.178 2024.09.10 01:07:08.394 2024.09.09 22:52:54.304 2024.09.09 22:53:01.216
146 6.0.0.455 2024.09.07 500d8 P P 8072 6569 2024.09.08 01:02:10.246 2024.09.08 01:02:18.318 2024.09.07 22:50:54.676 2024.09.07 22:51:01.245
147 6.0.0.454 2024.09.05 4d70f P P 9214 6769 2024.09.06 00:44:31.323 2024.09.06 00:44:40.537 2024.09.05 22:43:50.565 2024.09.05 22:43:57.334
148 6.0.0.452 2024.09.04 9ff9c P P 8850 6291 2024.09.05 00:41:51.654 2024.09.05 00:42:00.504 2024.09.04 22:42:34.120 2024.09.04 22:42:40.411
149 6.0.0.450 2024.09.02 27124 P P 8131 6307 2024.09.04 01:56:29.178 2024.09.04 01:56:37.309 2024.09.03 23:17:12.084 2024.09.03 23:17:18.391
150 6.0.0.447 2024.09.01 056ec P P 10264 7075 2024.09.02 01:13:37.825 2024.09.02 01:13:48.089 2024.09.01 22:49:47.348 2024.09.01 22:49:54.423
151 6.0.0.446 2024.08.30 fe1b2 P P 9991 6655 2024.09.01 01:11:40.500 2024.09.01 01:11:50.491 2024.08.31 22:57:35.855 2024.08.31 22:57:42.510
152 6.0.0.444 2024.08.28 785d4 P P 7632 6472 2024.08.30 01:27:53.387 2024.08.30 01:28:01.019 2024.08.29 23:09:49.633 2024.08.29 23:09:56.105
153 6.0.0.442 2024.08.21 4a68f P P 9437 7253 2024.08.28 03:39:19.889 2024.08.28 03:39:29.326 2024.08.28 00:05:43.566 2024.08.28 00:05:50.819
154 6.0.0.441 2024.08.20 75042 P P 8522 6572 2024.08.21 00:55:52.011 2024.08.21 00:56:00.533 2024.08.20 22:46:48.081 2024.08.20 22:46:54.653
155 6.0.0.438 2024.08.16 088b5 P P 8170 6231 2024.08.19 00:04:38.691 2024.08.19 00:04:46.861 2024.08.18 22:23:10.870 2024.08.18 22:23:17.101
156 6.0.0.437 2024.08.14 3c88b P P 7588 6335 2024.08.16 00:01:23.573 2024.08.16 00:01:31.161 2024.08.15 22:22:17.915 2024.08.15 22:22:24.250
157 6.0.0.432 2024.08.11 e82ac P P 6534 5931 2024.08.13 00:00:38.213 2024.08.13 00:00:44.747 2024.08.12 22:21:00.713 2024.08.12 22:21:06.644
158 6.0.0.431 2024.08.09 de5a7 P P 6523 6147 2024.08.10 00:00:45.936 2024.08.10 00:00:52.459 2024.08.09 22:21:27.542 2024.08.09 22:21:33.689
159 6.0.0.428 2024.08.08 9191b P P 6897 6481 2024.08.09 00:00:36.144 2024.08.09 00:00:43.041 2024.08.08 22:20:45.501 2024.08.08 22:20:51.982
160 6.0.0.423 2024.08.07 33b41 P P 7304 6460 2024.08.08 09:48:37.522 2024.08.08 09:48:44.826 2024.08.08 08:27:11.059 2024.08.08 08:27:17.519
161 6.0.0.421 2024.08.06 ed60d P P 6618 5479 2024.08.06 23:42:47.404 2024.08.06 23:42:54.022 2024.08.06 22:13:36.888 2024.08.06 22:13:42.367
162 6.0.0.419 2024.08.05 3505a P P 6926 5675 2024.08.05 23:44:50.669 2024.08.05 23:44:57.595 2024.08.05 22:13:34.950 2024.08.05 22:13:40.625
163 6.0.0.409 2024.08.02 ec18f P P 7229 6052 2024.08.04 23:48:21.379 2024.08.04 23:48:28.608 2024.08.04 22:14:17.657 2024.08.04 22:14:23.709
164 6.0.0.406 2024.08.01 b20be P P 7066 5830 2024.08.01 23:46:59.997 2024.08.01 23:47:07.063 2024.08.01 22:13:35.845 2024.08.01 22:13:41.675
165 6.0.0.405 2024.07.31 a62ac P P 6651 5888 2024.07.31 23:45:57.409 2024.07.31 23:46:04.060 2024.07.31 22:13:21.910 2024.07.31 22:13:27.798
166 6.0.0.403 2024.07.29 30f03 P P 7984 5912 2024.07.29 23:45:41.121 2024.07.29 23:45:49.105 2024.07.29 22:13:09.881 2024.07.29 22:13:15.793
167 6.0.0.401 2024.07.26 24e41 P P 8151 5906 2024.07.26 23:42:34.550 2024.07.26 23:42:42.701 2024.07.26 22:13:09.283 2024.07.26 22:13:15.189
168 6.0.0.400 2024.07.24 5bb78 P P 7915 5891 2024.07.24 23:42:25.755 2024.07.24 23:42:33.670 2024.07.24 22:13:19.448 2024.07.24 22:13:25.339
169 6.0.0.398 2024.07.23 85b18 P P 6693 6281 2024.07.23 23:48:00.892 2024.07.23 23:48:07.585 2024.07.23 22:19:11.174 2024.07.23 22:19:17.455
170 6.0.0.397 2024.07.22 c734c P P 8012 5856 2024.07.22 23:42:14.381 2024.07.22 23:42:22.393 2024.07.22 22:13:16.057 2024.07.22 22:13:21.913
171 6.0.0.396 2024.07.13 cf952 P P 6730 5879 2024.07.21 23:43:34.926 2024.07.21 23:43:41.656 2024.07.21 22:13:10.254 2024.07.21 22:13:16.133
172 6.0.0.395 2024.07.10 845f4 P P 7111 6193 2024.07.12 23:44:25.403 2024.07.12 23:44:32.514 2024.07.12 22:12:19.564 2024.07.12 22:12:25.757
173 6.0.0.392 2024.07.09 ea301 P P 6641 6227 2024.07.09 23:39:42.380 2024.07.09 23:39:49.021 2024.07.09 22:11:33.766 2024.07.09 22:11:39.993
174 6.0.0.391 2024.07.08 7d50c P P 6694 6324 2024.07.08 23:40:49.955 2024.07.08 23:40:56.649 2024.07.08 22:12:32.097 2024.07.08 22:12:38.421
175 6.0.0.389 2024.07.05 cc71c P P 7005 6159 2024.07.05 23:45:03.956 2024.07.05 23:45:10.961 2024.07.05 22:12:22.858 2024.07.05 22:12:29.017
176 6.0.0.388 2024.06.30 e5700 P P 7580 6019 2024.06.30 23:40:48.721 2024.06.30 23:40:56.301 2024.06.30 22:12:46.388 2024.06.30 22:12:52.407
177 6.0.0.387 2024.06.27 7c28a P P 6746 6186 2024.06.27 23:39:51.004 2024.06.27 23:39:57.750 2024.06.27 22:12:28.795 2024.06.27 22:12:34.981
178 6.0.0.386 2024.06.23 7c57f P P 6701 6258 2024.06.23 23:37:07.505 2024.06.23 23:37:14.206 2024.06.23 22:11:10.632 2024.06.23 22:11:16.890
179 6.0.0.384 2024.06.21 24d99 P P 6701 6207 2024.06.21 23:41:45.661 2024.06.21 23:41:52.362 2024.06.21 22:12:42.604 2024.06.21 22:12:48.811
180 6.0.0.374 2024.06.13 0097d P P 6676 6563 2024.06.20 23:39:44.085 2024.06.20 23:39:50.761 2024.06.20 22:11:57.657 2024.06.20 22:12:04.220
181 6.0.0.373 2024.06.09 363f0 P P 7329 6191 2024.06.13 13:48:24.274 2024.06.13 13:48:31.603 2024.06.13 12:35:20.472 2024.06.13 12:35:26.663
182 6.0.0.371 2024.06.08 f7130 P P 6960 5851 2024.06.11 22:34:48.322 2024.06.11 22:34:55.282 2024.06.11 21:28:27.884 2024.06.11 21:28:33.735
183 6.0.0.366 2024.05.30 ab2c9 P P 9227 6210 2024.06.12 09:50:25.574 2024.06.12 09:50:34.801 2024.06.12 08:02:50.857 2024.06.12 08:02:57.067
184 6.0.0.363 2024.05.27 06703 P P 7010 6176 2024.06.12 14:41:32.424 2024.06.12 14:41:39.434 2024.06.12 13:31:33.381 2024.06.12 13:31:39.557
185 6.0.0.359 2024.05.23 9cb11 P P 6840 5895 2024.06.12 12:33:13.266 2024.06.12 12:33:20.106 2024.06.12 11:24:01.512 2024.06.12 11:24:07.407
186 6.0.0.358 2024.05.21 995dd P P 6991 5869 2024.06.12 17:16:23.181 2024.06.12 17:16:30.172 2024.06.12 16:08:52.964 2024.06.12 16:08:58.833
187 6.0.0.357 2024.05.18 bf6c4 P P 7478 5848 2024.06.12 21:52:49.722 2024.06.12 21:52:57.200 2024.06.12 20:44:44.600 2024.06.12 20:44:50.448
188 6.0.0.356 2024.05.17 eab06 P P 7050 5879 2024.06.13 05:59:16.049 2024.06.13 05:59:23.099 2024.06.13 04:51:26.509 2024.06.13 04:51:32.388
189 6.0.0.355 2024.05.16 8dd6e P P 7007 5954 2024.06.13 08:07:07.592 2024.06.13 08:07:14.599 2024.06.13 06:59:00.560 2024.06.13 06:59:06.514
190 6.0.0.354 2024.05.15 d3adc P P 7326 6163 2024.06.13 11:12:55.694 2024.06.13 11:13:03.020 2024.06.13 10:00:32.570 2024.06.13 10:00:38.733
191 6.0.0.351 2024.05.14 2e3e0 P P 7238 6277 2024.06.13 16:26:37.616 2024.06.13 16:26:44.854 2024.06.13 15:13:49.027 2024.06.13 15:13:55.304

Elapsed time, ms. Chart for last 150 runs:

Last commits information (all timestamps in UTC):