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   
    Initial state:
    Query: select * from v1_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
  + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
    3 lowered "D" normal
    Query: select * from v1_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_ASC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
    3 lowered "D" normal
    Query: select * from v1_chk_ir_dec
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_DEC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
    3 lowered "D" normal
    Query: select * from v2_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
    3 lowered "L" normal
    Query: select * from v2_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
  + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
  - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal
    Query: select * from v2_chk_ir_dec
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal
    After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci:
    Query: select * from v1_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
  + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
    3 lowered "D" normal
    4 UPPERED "D" normal
    Query: select * from v1_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_ASC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
    3 lowered "D" normal
    4 UPPERED "D" normal
    Query: select * from v1_chk_ir_dec
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_DEC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
    4 UPPERED "D" normal
    3 lowered "D" normal
    Query: select * from v2_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
    3 lowered "L" normal
    4 UPPERED "L" normal
    Query: select * from v2_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
  + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
  - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal
    4 UPPERED "L" normal
    Query: select * from v2_chk_ir_dec
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    4 UPPERED "L" normal
    3 lowered "L" normal
    After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai:
    Query: select * from v1_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
  + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
    1 lowered "D" w/accent
    2 UPPERED "D" w/accent
    3 lowered "D" normal
    4 UPPERED "D" normal
    Query: select * from v1_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_ASC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
    3 lowered "D" normal
    4 UPPERED "D" normal
    1 lowered "D" w/accent
    2 UPPERED "D" w/accent
    Query: select * from v1_chk_ir_dec
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_DEC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
    2 UPPERED "D" w/accent
    1 lowered "D" w/accent
    4 UPPERED "D" normal
    3 lowered "D" normal
    Query: select * from v2_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
    1 lowered "L" w/accent
    2 UPPERED "L" w/accent
    3 lowered "L" normal
    4 UPPERED "L" normal
    Query: select * from v2_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
  + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
  - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal
    4 UPPERED "L" normal
    1 lowered "L" w/accent
    2 UPPERED "L" w/accent
    Query: select * from v2_chk_ir_dec
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    2 UPPERED "L" w/accent
    1 lowered "L" w/accent
    4 UPPERED "L" normal
    3 lowered "L" normal
    After alter domain dm_utf8 type varchar(1) character set utf8:
    Query: select * from v1_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
  + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
    3 lowered "D" normal
    Query: select * from v1_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_ASC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
    3 lowered "D" normal
    Query: select * from v1_chk_ir_dec
    Select Expression
    ....-> Filter
  - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
  + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
  - ............-> Index "TEST1_DEC" Range Scan (full match)
  + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
    3 lowered "D" normal
    Query: select * from v2_chk_nr
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
    3 lowered "L" normal
    Query: select * from v2_chk_ir_asc
    Select Expression
    ....-> Filter
  - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
  + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
  - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal
    Query: select * from v2_chk_ir_dec
    Select Expression
    ....-> Sort (record length: NN, key length: MM)
    ........-> Filter
  - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
  + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
  + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
    3 lowered "L" normal

LOG DETAILS:

2025-06-28 05:17:10.612
2025-06-28 05:17:10.617 act = <firebird.qa.plugin.Action object at [hex]>
2025-06-28 05:17:10.623 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-06-28 05:17:10.628
2025-06-28 05:17:10.634 @pytest.mark.version('>=6')
2025-06-28 05:17:10.644 def test_1(act: Action, capsys):
2025-06-28 05:17:10.653 qry_map = {
2025-06-28 05:17:10.660 1 : 'select * from v1_chk_nr'
2025-06-28 05:17:10.666 ,2 : 'select * from v1_chk_ir_asc'
2025-06-28 05:17:10.675 ,3 : 'select * from v1_chk_ir_dec'
2025-06-28 05:17:10.684 ,4 : 'select * from v2_chk_nr'
2025-06-28 05:17:10.692 ,5 : 'select * from v2_chk_ir_asc'
2025-06-28 05:17:10.699 ,6 : 'select * from v2_chk_ir_dec'
2025-06-28 05:17:10.705 }
2025-06-28 05:17:10.711
2025-06-28 05:17:10.720 alter_lst = (
2025-06-28 05:17:10.731 ''
2025-06-28 05:17:10.744 ,'alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci'
2025-06-28 05:17:10.754 ,'alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai'
2025-06-28 05:17:10.763 ,'alter domain dm_utf8 type varchar(1) character set utf8'
2025-06-28 05:17:10.773 )
2025-06-28 05:17:10.781
2025-06-28 05:17:10.788 with act.db.connect(charset = 'utf8') as con:
2025-06-28 05:17:10.794 cur = con.cursor()
2025-06-28 05:17:10.804 for alter_i in alter_lst:
2025-06-28 05:17:10.814 if alter_i.strip():
2025-06-28 05:17:10.821 con.execute_immediate(alter_i)
2025-06-28 05:17:10.828 con.commit()
2025-06-28 05:17:10.835 print(f'\nAfter {alter_i}:')
2025-06-28 05:17:10.841 else:
2025-06-28 05:17:10.850 print('Initial state:')
2025-06-28 05:17:10.862
2025-06-28 05:17:10.872 for k, v in qry_map.items():
2025-06-28 05:17:10.883 ps, rs = None, None
2025-06-28 05:17:10.893 try:
2025-06-28 05:17:10.905 ps = cur.prepare(v)
2025-06-28 05:17:10.912
2025-06-28 05:17:10.917 print('Query:', v)
2025-06-28 05:17:10.922 # Print explained plan with padding eash line by dots in order to see indentations:
2025-06-28 05:17:10.929 print( '\n'.join([replace_leading(s) for s in ps.detailed_plan.split('\n')]) )
2025-06-28 05:17:10.935 print('')
2025-06-28 05:17:10.944
2025-06-28 05:17:10.952 # ::: NB ::: 'ps' returns data, i.e. this is SELECTABLE expression.
2025-06-28 05:17:10.959 # We have to store result of cur.execute(<psInstance>) in order to
2025-06-28 05:17:10.966 # close it explicitly.
2025-06-28 05:17:10.974 # Otherwise AV can occur during Python garbage collection and this
2025-06-28 05:17:10.981 # causes pytest to hang on its final point.
2025-06-28 05:17:10.988 # Explained by hvlad, email 26.10.24 17:42
2025-06-28 05:17:10.996 rs = cur.execute(ps)
2025-06-28 05:17:11.003 for r in rs:
2025-06-28 05:17:11.010 print(r[0], r[1])
2025-06-28 05:17:11.017 except DatabaseError as e:
2025-06-28 05:17:11.022 print(e.__str__())
2025-06-28 05:17:11.028 print(e.gds_codes)
2025-06-28 05:17:11.035 finally:
2025-06-28 05:17:11.042 if rs:
2025-06-28 05:17:11.049 rs.close() # <<< EXPLICITLY CLOSING CURSOR RESULTS
2025-06-28 05:17:11.056 if ps:
2025-06-28 05:17:11.063 ps.free()
2025-06-28 05:17:11.070
2025-06-28 05:17:11.078
2025-06-28 05:17:11.086 expected_stdout = """
2025-06-28 05:17:11.097 Initial state:
2025-06-28 05:17:11.105
2025-06-28 05:17:11.111 Query: select * from v1_chk_nr
2025-06-28 05:17:11.117 Select Expression
2025-06-28 05:17:11.123 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.131 ........-> Filter
2025-06-28 05:17:11.142 ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:11.150 3 lowered "D" normal
2025-06-28 05:17:11.158 Query: select * from v1_chk_ir_asc
2025-06-28 05:17:11.164 Select Expression
2025-06-28 05:17:11.170 ....-> Filter
2025-06-28 05:17:11.176 ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:11.183 ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:11.191 3 lowered "D" normal
2025-06-28 05:17:11.203 Query: select * from v1_chk_ir_dec
2025-06-28 05:17:11.211 Select Expression
2025-06-28 05:17:11.219 ....-> Filter
2025-06-28 05:17:11.229 ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:11.238 ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:11.245 3 lowered "D" normal
2025-06-28 05:17:11.251 Query: select * from v2_chk_nr
2025-06-28 05:17:11.257 Select Expression
2025-06-28 05:17:11.264 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.271 ........-> Filter
2025-06-28 05:17:11.278 ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:11.285 3 lowered "L" normal
2025-06-28 05:17:11.292 Query: select * from v2_chk_ir_asc
2025-06-28 05:17:11.299 Select Expression
2025-06-28 05:17:11.306 ....-> Filter
2025-06-28 05:17:11.313 ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:11.319 ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:11.324 3 lowered "L" normal
2025-06-28 05:17:11.329 Query: select * from v2_chk_ir_dec
2025-06-28 05:17:11.334 Select Expression
2025-06-28 05:17:11.338 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.343 ........-> Filter
2025-06-28 05:17:11.350 ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:11.356 ................-> Bitmap
2025-06-28 05:17:11.363 ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:11.370 3 lowered "L" normal
2025-06-28 05:17:11.377
2025-06-28 05:17:11.386
2025-06-28 05:17:11.398 After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci:
2025-06-28 05:17:11.409
2025-06-28 05:17:11.421 Query: select * from v1_chk_nr
2025-06-28 05:17:11.434 Select Expression
2025-06-28 05:17:11.444 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.452 ........-> Filter
2025-06-28 05:17:11.463 ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:11.476 3 lowered "D" normal
2025-06-28 05:17:11.485 4 UPPERED "D" normal
2025-06-28 05:17:11.493 Query: select * from v1_chk_ir_asc
2025-06-28 05:17:11.504 Select Expression
2025-06-28 05:17:11.515 ....-> Filter
2025-06-28 05:17:11.523 ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:11.531 ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:11.539 3 lowered "D" normal
2025-06-28 05:17:11.550 4 UPPERED "D" normal
2025-06-28 05:17:11.562 Query: select * from v1_chk_ir_dec
2025-06-28 05:17:11.574 Select Expression
2025-06-28 05:17:11.582 ....-> Filter
2025-06-28 05:17:11.591 ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:11.598 ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:11.604 4 UPPERED "D" normal
2025-06-28 05:17:11.610 3 lowered "D" normal
2025-06-28 05:17:11.615 Query: select * from v2_chk_nr
2025-06-28 05:17:11.626 Select Expression
2025-06-28 05:17:11.634 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.640 ........-> Filter
2025-06-28 05:17:11.652 ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:11.663 3 lowered "L" normal
2025-06-28 05:17:11.671 4 UPPERED "L" normal
2025-06-28 05:17:11.678 Query: select * from v2_chk_ir_asc
2025-06-28 05:17:11.683 Select Expression
2025-06-28 05:17:11.697 ....-> Filter
2025-06-28 05:17:11.707 ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:11.715 ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:11.722 3 lowered "L" normal
2025-06-28 05:17:11.728 4 UPPERED "L" normal
2025-06-28 05:17:11.735 Query: select * from v2_chk_ir_dec
2025-06-28 05:17:11.740 Select Expression
2025-06-28 05:17:11.744 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.749 ........-> Filter
2025-06-28 05:17:11.754 ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:11.758 ................-> Bitmap
2025-06-28 05:17:11.765 ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:11.771 4 UPPERED "L" normal
2025-06-28 05:17:11.777 3 lowered "L" normal
2025-06-28 05:17:11.783
2025-06-28 05:17:11.789
2025-06-28 05:17:11.795 After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai:
2025-06-28 05:17:11.803
2025-06-28 05:17:11.814 Query: select * from v1_chk_nr
2025-06-28 05:17:11.822 Select Expression
2025-06-28 05:17:11.829 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:11.835 ........-> Filter
2025-06-28 05:17:11.841 ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:11.847 1 lowered "D" w/accent
2025-06-28 05:17:11.852 2 UPPERED "D" w/accent
2025-06-28 05:17:11.858 3 lowered "D" normal
2025-06-28 05:17:11.864 4 UPPERED "D" normal
2025-06-28 05:17:11.871 Query: select * from v1_chk_ir_asc
2025-06-28 05:17:11.882 Select Expression
2025-06-28 05:17:11.890 ....-> Filter
2025-06-28 05:17:11.897 ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:11.903 ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:11.911 3 lowered "D" normal
2025-06-28 05:17:11.918 4 UPPERED "D" normal
2025-06-28 05:17:11.925 1 lowered "D" w/accent
2025-06-28 05:17:11.932 2 UPPERED "D" w/accent
2025-06-28 05:17:11.939 Query: select * from v1_chk_ir_dec
2025-06-28 05:17:11.947 Select Expression
2025-06-28 05:17:11.953 ....-> Filter
2025-06-28 05:17:11.960 ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:11.967 ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:11.973 2 UPPERED "D" w/accent
2025-06-28 05:17:11.979 1 lowered "D" w/accent
2025-06-28 05:17:11.985 4 UPPERED "D" normal
2025-06-28 05:17:11.994 3 lowered "D" normal
2025-06-28 05:17:12.005 Query: select * from v2_chk_nr
2025-06-28 05:17:12.017 Select Expression
2025-06-28 05:17:12.028 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.040 ........-> Filter
2025-06-28 05:17:12.050 ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:12.057 1 lowered "L" w/accent
2025-06-28 05:17:12.062 2 UPPERED "L" w/accent
2025-06-28 05:17:12.068 3 lowered "L" normal
2025-06-28 05:17:12.075 4 UPPERED "L" normal
2025-06-28 05:17:12.083 Query: select * from v2_chk_ir_asc
2025-06-28 05:17:12.095 Select Expression
2025-06-28 05:17:12.104 ....-> Filter
2025-06-28 05:17:12.111 ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:12.117 ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:12.123 3 lowered "L" normal
2025-06-28 05:17:12.129 4 UPPERED "L" normal
2025-06-28 05:17:12.134 1 lowered "L" w/accent
2025-06-28 05:17:12.140 2 UPPERED "L" w/accent
2025-06-28 05:17:12.147 Query: select * from v2_chk_ir_dec
2025-06-28 05:17:12.159 Select Expression
2025-06-28 05:17:12.168 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.175 ........-> Filter
2025-06-28 05:17:12.182 ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:12.189 ................-> Bitmap
2025-06-28 05:17:12.195 ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:12.201 2 UPPERED "L" w/accent
2025-06-28 05:17:12.207 1 lowered "L" w/accent
2025-06-28 05:17:12.213 4 UPPERED "L" normal
2025-06-28 05:17:12.219 3 lowered "L" normal
2025-06-28 05:17:12.224
2025-06-28 05:17:12.230
2025-06-28 05:17:12.240 After alter domain dm_utf8 type varchar(1) character set utf8:
2025-06-28 05:17:12.250
2025-06-28 05:17:12.257 Query: select * from v1_chk_nr
2025-06-28 05:17:12.264 Select Expression
2025-06-28 05:17:12.270 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.276 ........-> Filter
2025-06-28 05:17:12.282 ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:12.287 3 lowered "D" normal
2025-06-28 05:17:12.295 Query: select * from v1_chk_ir_asc
2025-06-28 05:17:12.305 Select Expression
2025-06-28 05:17:12.313 ....-> Filter
2025-06-28 05:17:12.320 ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:12.327 ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:12.332 3 lowered "D" normal
2025-06-28 05:17:12.338 Query: select * from v1_chk_ir_dec
2025-06-28 05:17:12.348 Select Expression
2025-06-28 05:17:12.357 ....-> Filter
2025-06-28 05:17:12.369 ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:12.379 ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:12.387 3 lowered "D" normal
2025-06-28 05:17:12.395 Query: select * from v2_chk_nr
2025-06-28 05:17:12.402 Select Expression
2025-06-28 05:17:12.409 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.415 ........-> Filter
2025-06-28 05:17:12.421 ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:12.427 3 lowered "L" normal
2025-06-28 05:17:12.432 Query: select * from v2_chk_ir_asc
2025-06-28 05:17:12.438 Select Expression
2025-06-28 05:17:12.444 ....-> Filter
2025-06-28 05:17:12.450 ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:12.460 ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:12.469 3 lowered "L" normal
2025-06-28 05:17:12.477 Query: select * from v2_chk_ir_dec
2025-06-28 05:17:12.483 Select Expression
2025-06-28 05:17:12.491 ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.501 ........-> Filter
2025-06-28 05:17:12.510 ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:12.516 ................-> Bitmap
2025-06-28 05:17:12.525 ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:12.537 3 lowered "L" normal
2025-06-28 05:17:12.547 """
2025-06-28 05:17:12.555
2025-06-28 05:17:12.563 act.expected_stdout = expected_stdout
2025-06-28 05:17:12.569
2025-06-28 05:17:12.575 act.stdout = capsys.readouterr().out
2025-06-28 05:17:12.582 >       assert act.clean_stdout == act.clean_expected_stdout
2025-06-28 05:17:12.587 E       assert
2025-06-28 05:17:12.594 E           Initial state:
2025-06-28 05:17:12.604 E           Query: select * from v1_chk_nr
2025-06-28 05:17:12.613 E           Select Expression
2025-06-28 05:17:12.621 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.628 E           ........-> Filter
2025-06-28 05:17:12.634 E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:12.652 E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
2025-06-28 05:17:12.665 E           3 lowered "D" normal
2025-06-28 05:17:12.672 E           Query: select * from v1_chk_ir_asc
2025-06-28 05:17:12.677 E           Select Expression
2025-06-28 05:17:12.682 E           ....-> Filter
2025-06-28 05:17:12.686 E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:12.696 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:12.712 E         - ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:12.720 E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:12.739 E           3 lowered "D" normal
2025-06-28 05:17:12.750 E           Query: select * from v1_chk_ir_dec
2025-06-28 05:17:12.761 E           Select Expression
2025-06-28 05:17:12.770 E           ....-> Filter
2025-06-28 05:17:12.778 E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:12.799 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:12.819 E         - ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:12.832 E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:12.850 E           3 lowered "D" normal
2025-06-28 05:17:12.863 E           Query: select * from v2_chk_nr
2025-06-28 05:17:12.873 E           Select Expression
2025-06-28 05:17:12.880 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:12.887 E           ........-> Filter
2025-06-28 05:17:12.894 E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:12.907 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
2025-06-28 05:17:12.927 E           3 lowered "L" normal
2025-06-28 05:17:12.934 E           Query: select * from v2_chk_ir_asc
2025-06-28 05:17:12.941 E           Select Expression
2025-06-28 05:17:12.948 E           ....-> Filter
2025-06-28 05:17:12.955 E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:12.972 E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:12.987 E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:12.995 E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.015 E           3 lowered "L" normal
2025-06-28 05:17:13.022 E           Query: select * from v2_chk_ir_dec
2025-06-28 05:17:13.028 E           Select Expression
2025-06-28 05:17:13.033 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.038 E           ........-> Filter
2025-06-28 05:17:13.043 E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:13.054 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:13.069 E           ................-> Bitmap
2025-06-28 05:17:13.076 E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.085 E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.107 E           3 lowered "L" normal
2025-06-28 05:17:13.116 E           After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci:
2025-06-28 05:17:13.122 E           Query: select * from v1_chk_nr
2025-06-28 05:17:13.130 E           Select Expression
2025-06-28 05:17:13.138 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.146 E           ........-> Filter
2025-06-28 05:17:13.158 E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:13.175 E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
2025-06-28 05:17:13.191 E           3 lowered "D" normal
2025-06-28 05:17:13.197 E           4 UPPERED "D" normal
2025-06-28 05:17:13.203 E           Query: select * from v1_chk_ir_asc
2025-06-28 05:17:13.210 E           Select Expression
2025-06-28 05:17:13.215 E           ....-> Filter
2025-06-28 05:17:13.221 E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:13.233 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:13.247 E         - ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:13.255 E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:13.274 E           3 lowered "D" normal
2025-06-28 05:17:13.283 E           4 UPPERED "D" normal
2025-06-28 05:17:13.290 E           Query: select * from v1_chk_ir_dec
2025-06-28 05:17:13.294 E           Select Expression
2025-06-28 05:17:13.299 E           ....-> Filter
2025-06-28 05:17:13.304 E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:13.315 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:13.327 E         - ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:13.340 E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:13.359 E           4 UPPERED "D" normal
2025-06-28 05:17:13.367 E           3 lowered "D" normal
2025-06-28 05:17:13.373 E           Query: select * from v2_chk_nr
2025-06-28 05:17:13.380 E           Select Expression
2025-06-28 05:17:13.386 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.393 E           ........-> Filter
2025-06-28 05:17:13.399 E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:13.414 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
2025-06-28 05:17:13.438 E           3 lowered "L" normal
2025-06-28 05:17:13.448 E           4 UPPERED "L" normal
2025-06-28 05:17:13.459 E           Query: select * from v2_chk_ir_asc
2025-06-28 05:17:13.470 E           Select Expression
2025-06-28 05:17:13.483 E           ....-> Filter
2025-06-28 05:17:13.495 E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:13.512 E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:13.525 E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.530 E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.542 E           3 lowered "L" normal
2025-06-28 05:17:13.548 E           4 UPPERED "L" normal
2025-06-28 05:17:13.553 E           Query: select * from v2_chk_ir_dec
2025-06-28 05:17:13.559 E           Select Expression
2025-06-28 05:17:13.565 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.570 E           ........-> Filter
2025-06-28 05:17:13.576 E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:13.588 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:13.607 E           ................-> Bitmap
2025-06-28 05:17:13.619 E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.628 E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:13.643 E           4 UPPERED "L" normal
2025-06-28 05:17:13.649 E           3 lowered "L" normal
2025-06-28 05:17:13.656 E           After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai:
2025-06-28 05:17:13.662 E           Query: select * from v1_chk_nr
2025-06-28 05:17:13.668 E           Select Expression
2025-06-28 05:17:13.674 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.683 E           ........-> Filter
2025-06-28 05:17:13.691 E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:13.710 E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
2025-06-28 05:17:13.722 E           1 lowered "D" w/accent
2025-06-28 05:17:13.729 E           2 UPPERED "D" w/accent
2025-06-28 05:17:13.735 E           3 lowered "D" normal
2025-06-28 05:17:13.741 E           4 UPPERED "D" normal
2025-06-28 05:17:13.747 E           Query: select * from v1_chk_ir_asc
2025-06-28 05:17:13.753 E           Select Expression
2025-06-28 05:17:13.758 E           ....-> Filter
2025-06-28 05:17:13.763 E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:13.774 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:13.795 E         - ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:13.803 E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:13.821 E           3 lowered "D" normal
2025-06-28 05:17:13.831 E           4 UPPERED "D" normal
2025-06-28 05:17:13.843 E           1 lowered "D" w/accent
2025-06-28 05:17:13.852 E           2 UPPERED "D" w/accent
2025-06-28 05:17:13.860 E           Query: select * from v1_chk_ir_dec
2025-06-28 05:17:13.867 E           Select Expression
2025-06-28 05:17:13.875 E           ....-> Filter
2025-06-28 05:17:13.887 E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:13.908 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:13.921 E         - ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:13.926 E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:13.938 E           2 UPPERED "D" w/accent
2025-06-28 05:17:13.943 E           1 lowered "D" w/accent
2025-06-28 05:17:13.950 E           4 UPPERED "D" normal
2025-06-28 05:17:13.957 E           3 lowered "D" normal
2025-06-28 05:17:13.964 E           Query: select * from v2_chk_nr
2025-06-28 05:17:13.971 E           Select Expression
2025-06-28 05:17:13.978 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:13.985 E           ........-> Filter
2025-06-28 05:17:13.992 E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:14.013 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
2025-06-28 05:17:14.025 E           1 lowered "L" w/accent
2025-06-28 05:17:14.031 E           2 UPPERED "L" w/accent
2025-06-28 05:17:14.036 E           3 lowered "L" normal
2025-06-28 05:17:14.042 E           4 UPPERED "L" normal
2025-06-28 05:17:14.048 E           Query: select * from v2_chk_ir_asc
2025-06-28 05:17:14.054 E           Select Expression
2025-06-28 05:17:14.062 E           ....-> Filter
2025-06-28 05:17:14.070 E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:14.083 E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:14.102 E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.115 E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.135 E           3 lowered "L" normal
2025-06-28 05:17:14.141 E           4 UPPERED "L" normal
2025-06-28 05:17:14.148 E           1 lowered "L" w/accent
2025-06-28 05:17:14.154 E           2 UPPERED "L" w/accent
2025-06-28 05:17:14.161 E           Query: select * from v2_chk_ir_dec
2025-06-28 05:17:14.171 E           Select Expression
2025-06-28 05:17:14.180 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:14.188 E           ........-> Filter
2025-06-28 05:17:14.200 E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:14.220 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:14.235 E           ................-> Bitmap
2025-06-28 05:17:14.243 E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.253 E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.270 E           2 UPPERED "L" w/accent
2025-06-28 05:17:14.278 E           1 lowered "L" w/accent
2025-06-28 05:17:14.285 E           4 UPPERED "L" normal
2025-06-28 05:17:14.297 E           3 lowered "L" normal
2025-06-28 05:17:14.307 E           After alter domain dm_utf8 type varchar(1) character set utf8:
2025-06-28 05:17:14.316 E           Query: select * from v1_chk_nr
2025-06-28 05:17:14.325 E           Select Expression
2025-06-28 05:17:14.332 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:14.338 E           ........-> Filter
2025-06-28 05:17:14.347 E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
2025-06-28 05:17:14.362 E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
2025-06-28 05:17:14.375 E           3 lowered "D" normal
2025-06-28 05:17:14.382 E           Query: select * from v1_chk_ir_asc
2025-06-28 05:17:14.389 E           Select Expression
2025-06-28 05:17:14.401 E           ....-> Filter
2025-06-28 05:17:14.411 E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
2025-06-28 05:17:14.426 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:14.439 E         - ............-> Index "TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:14.445 E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
2025-06-28 05:17:14.457 E           3 lowered "D" normal
2025-06-28 05:17:14.462 E           Query: select * from v1_chk_ir_dec
2025-06-28 05:17:14.470 E           Select Expression
2025-06-28 05:17:14.477 E           ....-> Filter
2025-06-28 05:17:14.484 E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
2025-06-28 05:17:14.511 E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
2025-06-28 05:17:14.535 E         - ............-> Index "TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:14.545 E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
2025-06-28 05:17:14.569 E           3 lowered "D" normal
2025-06-28 05:17:14.580 E           Query: select * from v2_chk_nr
2025-06-28 05:17:14.591 E           Select Expression
2025-06-28 05:17:14.603 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:14.611 E           ........-> Filter
2025-06-28 05:17:14.618 E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
2025-06-28 05:17:14.632 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
2025-06-28 05:17:14.643 E           3 lowered "L" normal
2025-06-28 05:17:14.648 E           Query: select * from v2_chk_ir_asc
2025-06-28 05:17:14.654 E           Select Expression
2025-06-28 05:17:14.660 E           ....-> Filter
2025-06-28 05:17:14.666 E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
2025-06-28 05:17:14.680 E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:14.699 E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.710 E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.730 E           3 lowered "L" normal
2025-06-28 05:17:14.737 E           Query: select * from v2_chk_ir_dec
2025-06-28 05:17:14.743 E           Select Expression
2025-06-28 05:17:14.749 E           ....-> Sort (record length: NN, key length: MM)
2025-06-28 05:17:14.756 E           ........-> Filter
2025-06-28 05:17:14.763 E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
2025-06-28 05:17:14.780 E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
2025-06-28 05:17:14.794 E           ................-> Bitmap
2025-06-28 05:17:14.801 E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.807 E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
2025-06-28 05:17:14.816 E           3 lowered "L" normal
2025-06-28 05:17:14.821
2025-06-28 05:17:14.826 tests/bugs/gh_8434_test.py:371: AssertionError
2025-06-28 05:17:14.831 ---------------------------- Captured stdout setup -----------------------------
2025-06-28 05:17:14.836 Creating db: localhost:/var/tmp/qa_2024/test_11736/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]>
capsys = <_pytest.capture.CaptureFixture pytest object at [hex]>

    @pytest.mark.version('>=6')
    def test_1(act: Action, capsys):
        qry_map = {
            1 : 'select * from v1_chk_nr'
           ,2 : 'select * from v1_chk_ir_asc'
           ,3 : 'select * from v1_chk_ir_dec'
           ,4 : 'select * from v2_chk_nr'
           ,5 : 'select * from v2_chk_ir_asc'
           ,6 : 'select * from v2_chk_ir_dec'
        }
    
        alter_lst = (
            ''
           ,'alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci'
           ,'alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai'
           ,'alter domain dm_utf8 type varchar(1) character set utf8'
        )
    
        with act.db.connect(charset = 'utf8') as con:
            cur = con.cursor()
            for alter_i in alter_lst:
                if alter_i.strip():
                    con.execute_immediate(alter_i)
                    con.commit()
                    print(f'\nAfter {alter_i}:')
                else:
                    print('Initial state:')
    
                for k, v in qry_map.items():
                    ps, rs = None, None
                    try:
                        ps = cur.prepare(v)
    
                        print('Query:', v)
                        # Print explained plan with padding eash line by dots in order to see indentations:
                        print( '\n'.join([replace_leading(s) for s in ps.detailed_plan.split('\n')]) )
                        print('')
    
                        # ::: NB ::: 'ps' returns data, i.e. this is SELECTABLE expression.
                        # We have to store result of cur.execute(<psInstance>) in order to
                        # close it explicitly.
                        # Otherwise AV can occur during Python garbage collection and this
                        # causes pytest to hang on its final point.
                        # Explained by hvlad, email 26.10.24 17:42
                        rs = cur.execute(ps)
                        for r in rs:
                            print(r[0], r[1])
                    except DatabaseError as e:
                        print(e.__str__())
                        print(e.gds_codes)
                    finally:
                        if rs:
                            rs.close() # <<< EXPLICITLY CLOSING CURSOR RESULTS
                        if ps:
                            ps.free()
    
    
        expected_stdout = """
            Initial state:
    
            Query: select * from v1_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
            3 lowered "D" normal
            Query: select * from v1_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
            ............-> Index "TEST1_ASC" Range Scan (full match)
            3 lowered "D" normal
            Query: select * from v1_chk_ir_dec
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
            ............-> Index "TEST1_DEC" Range Scan (full match)
            3 lowered "D" normal
            Query: select * from v2_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
            3 lowered "L" normal
            Query: select * from v2_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
            ............-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
            Query: select * from v2_chk_ir_dec
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
    
    
            After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci:
    
            Query: select * from v1_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
            3 lowered "D" normal
            4 UPPERED "D" normal
            Query: select * from v1_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
            ............-> Index "TEST1_ASC" Range Scan (full match)
            3 lowered "D" normal
            4 UPPERED "D" normal
            Query: select * from v1_chk_ir_dec
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
            ............-> Index "TEST1_DEC" Range Scan (full match)
            4 UPPERED "D" normal
            3 lowered "D" normal
            Query: select * from v2_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
            3 lowered "L" normal
            4 UPPERED "L" normal
            Query: select * from v2_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
            ............-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
            4 UPPERED "L" normal
            Query: select * from v2_chk_ir_dec
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
            4 UPPERED "L" normal
            3 lowered "L" normal
    
    
            After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai:
    
            Query: select * from v1_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
            1 lowered "D" w/accent
            2 UPPERED "D" w/accent
            3 lowered "D" normal
            4 UPPERED "D" normal
            Query: select * from v1_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
            ............-> Index "TEST1_ASC" Range Scan (full match)
            3 lowered "D" normal
            4 UPPERED "D" normal
            1 lowered "D" w/accent
            2 UPPERED "D" w/accent
            Query: select * from v1_chk_ir_dec
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
            ............-> Index "TEST1_DEC" Range Scan (full match)
            2 UPPERED "D" w/accent
            1 lowered "D" w/accent
            4 UPPERED "D" normal
            3 lowered "D" normal
            Query: select * from v2_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
            1 lowered "L" w/accent
            2 UPPERED "L" w/accent
            3 lowered "L" normal
            4 UPPERED "L" normal
            Query: select * from v2_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
            ............-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
            4 UPPERED "L" normal
            1 lowered "L" w/accent
            2 UPPERED "L" w/accent
            Query: select * from v2_chk_ir_dec
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
            2 UPPERED "L" w/accent
            1 lowered "L" w/accent
            4 UPPERED "L" normal
            3 lowered "L" normal
    
    
            After alter domain dm_utf8 type varchar(1) character set utf8:
    
            Query: select * from v1_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
            3 lowered "D" normal
            Query: select * from v1_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
            ............-> Index "TEST1_ASC" Range Scan (full match)
            3 lowered "D" normal
            Query: select * from v1_chk_ir_dec
            Select Expression
            ....-> Filter
            ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
            ............-> Index "TEST1_DEC" Range Scan (full match)
            3 lowered "D" normal
            Query: select * from v2_chk_nr
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
            3 lowered "L" normal
            Query: select * from v2_chk_ir_asc
            Select Expression
            ....-> Filter
            ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
            ............-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
            Query: select * from v2_chk_ir_dec
            Select Expression
            ....-> Sort (record length: NN, key length: MM)
            ........-> Filter
            ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
            3 lowered "L" normal
        """
    
        act.expected_stdout = expected_stdout
    
        act.stdout = capsys.readouterr().out
>       assert act.clean_stdout == act.clean_expected_stdout
E       assert   
E           Initial state:
E           Query: select * from v1_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
E           3 lowered "D" normal
E           Query: select * from v1_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_ASC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
E           3 lowered "D" normal
E           Query: select * from v1_chk_ir_dec
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_DEC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
E           3 lowered "D" normal
E           Query: select * from v2_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
E           3 lowered "L" normal
E           Query: select * from v2_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal
E           Query: select * from v2_chk_ir_dec
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal
E           After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci:
E           Query: select * from v1_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
E           3 lowered "D" normal
E           4 UPPERED "D" normal
E           Query: select * from v1_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_ASC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
E           3 lowered "D" normal
E           4 UPPERED "D" normal
E           Query: select * from v1_chk_ir_dec
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_DEC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
E           4 UPPERED "D" normal
E           3 lowered "D" normal
E           Query: select * from v2_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
E           3 lowered "L" normal
E           4 UPPERED "L" normal
E           Query: select * from v2_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal
E           4 UPPERED "L" normal
E           Query: select * from v2_chk_ir_dec
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           4 UPPERED "L" normal
E           3 lowered "L" normal
E           After alter domain dm_utf8 type varchar(1) character set utf8 collate unicode_ci_ai:
E           Query: select * from v1_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
E           1 lowered "D" w/accent
E           2 UPPERED "D" w/accent
E           3 lowered "D" normal
E           4 UPPERED "D" normal
E           Query: select * from v1_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_ASC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
E           3 lowered "D" normal
E           4 UPPERED "D" normal
E           1 lowered "D" w/accent
E           2 UPPERED "D" w/accent
E           Query: select * from v1_chk_ir_dec
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_DEC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
E           2 UPPERED "D" w/accent
E           1 lowered "D" w/accent
E           4 UPPERED "D" normal
E           3 lowered "D" normal
E           Query: select * from v2_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
E           1 lowered "L" w/accent
E           2 UPPERED "L" w/accent
E           3 lowered "L" normal
E           4 UPPERED "L" normal
E           Query: select * from v2_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal
E           4 UPPERED "L" normal
E           1 lowered "L" w/accent
E           2 UPPERED "L" w/accent
E           Query: select * from v2_chk_ir_dec
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           2 UPPERED "L" w/accent
E           1 lowered "L" w/accent
E           4 UPPERED "L" normal
E           3 lowered "L" normal
E           After alter domain dm_utf8 type varchar(1) character set utf8:
E           Query: select * from v1_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST1" as "V1_CHK_NR TEST1" Full Scan
E         + ............-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_NR" "PUBLIC"."TEST1" Full Scan
E           3 lowered "D" normal
E           Query: select * from v1_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_ASC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_ASC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_ASC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_ASC" Range Scan (full match)
E           3 lowered "D" normal
E           Query: select * from v1_chk_ir_dec
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST1" as "V1_CHK_IR_DEC TEST1" Access By ID
E         + ........-> Table "PUBLIC"."TEST1" as "PUBLIC"."V1_CHK_IR_DEC" "PUBLIC"."TEST1" Access By ID
E         - ............-> Index "TEST1_DEC" Range Scan (full match)
E         + ............-> Index "PUBLIC"."TEST1_DEC" Range Scan (full match)
E           3 lowered "D" normal
E           Query: select * from v2_chk_nr
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_NR TEST2" Full Scan
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_NR" "PUBLIC"."TEST2" Full Scan
E           3 lowered "L" normal
E           Query: select * from v2_chk_ir_asc
E           Select Expression
E           ....-> Filter
E         - ........-> Table "TEST2" as "V2_CHK_IR_ASC TEST2" Access By ID
E         + ........-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_ASC" "PUBLIC"."TEST2" Access By ID
E         - ............-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ............-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal
E           Query: select * from v2_chk_ir_dec
E           Select Expression
E           ....-> Sort (record length: NN, key length: MM)
E           ........-> Filter
E         - ............-> Table "TEST2" as "V2_CHK_IR_DEC TEST2" Access By ID
E         + ............-> Table "PUBLIC"."TEST2" as "PUBLIC"."V2_CHK_IR_DEC" "PUBLIC"."TEST2" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST2_PARTIAL_ASC" Full Scan
E         + ....................-> Index "PUBLIC"."TEST2_PARTIAL_ASC" Full Scan
E           3 lowered "L" normal

tests/bugs/gh_8434_test.py:371: 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.881 2025.06.27 7035d F F 990 811 2025.06.28 01:44:19.348 2025.06.28 01:44:20.338 2025.06.27 23:11:57.954 2025.06.27 23:11:58.765
2 6.0.0.877 2025.06.26 8e38f F F 973 660 2025.06.27 01:45:15.656 2025.06.27 01:45:16.629 2025.06.26 23:13:19.180 2025.06.26 23:13:19.840
3 6.0.0.876 2025.06.25 b1bec F F 972 960 2025.06.26 01:49:07.669 2025.06.26 01:49:08.641 2025.06.25 23:15:13.822 2025.06.25 23:15:14.782
4 6.0.0.863 2025.06.24 c3c20 F F 986 471 2025.06.25 01:49:26.276 2025.06.25 01:49:27.262 2025.06.24 23:14:56.830 2025.06.24 23:14:57.301
5 6.0.0.858 2025.06.23 8d6f7 F F 987 469 2025.06.24 01:49:47.154 2025.06.24 01:49:48.141 2025.06.23 23:15:07.733 2025.06.23 23:15:08.202
6 6.0.0.849 2025.06.20 7b79c F F 1120 496 2025.06.21 02:01:19.126 2025.06.21 02:01:20.246 2025.06.20 23:24:11.527 2025.06.20 23:24:12.023
7 6.0.0.848 2025.06.19 c483c F F 1035 833 2025.06.20 01:57:41.377 2025.06.20 01:57:42.412 2025.06.19 23:20:59.147 2025.06.19 23:20:59.980
8 6.0.0.845 2025.06.18 22b12 F F 991 518 2025.06.19 02:06:19.202 2025.06.19 02:06:20.193 2025.06.18 23:24:15.990 2025.06.18 23:24:16.508
9 6.0.0.843 2025.06.16 995f4 F F 906 1045 2025.06.18 02:04:36.333 2025.06.18 02:04:37.239 2025.06.17 23:25:50.106 2025.06.17 23:25:51.151
10 6.0.0.840 2025.06.14 29bca F F 1132 774 2025.06.16 01:56:25.919 2025.06.16 01:56:27.051 2025.06.15 23:18:27.624 2025.06.15 23:18:28.398
11 6.0.0.838 2025.06.13 0e28a F F 950 980 2025.06.14 02:09:31.692 2025.06.14 02:09:32.642 2025.06.13 23:26:02.881 2025.06.13 23:26:03.861
12 6.0.0.835 2025.06.12 2cf29 F F 1091 847 2025.06.13 02:09:23.234 2025.06.13 02:09:24.325 2025.06.12 23:30:02.859 2025.06.12 23:30:03.706
13 6.0.0.834 2025.06.11 e889f F F 1047 508 2025.06.12 02:04:38.982 2025.06.12 02:04:40.029 2025.06.11 23:25:55.062 2025.06.11 23:25:55.570
14 6.0.0.800 2025.06.10 1f226 P P 1525 872 2025.06.11 00:33:16.721 2025.06.11 00:33:18.246 2025.06.10 22:25:41.067 2025.06.10 22:25:41.939
15 6.0.0.799 2025.06.07 be644 P P 824 798 2025.06.10 00:35:35.187 2025.06.10 00:35:36.011 2025.06.09 22:25:22.401 2025.06.09 22:25:23.199
16 6.0.0.797 2025.06.06 303e8 P P 1345 796 2025.06.07 00:39:07.938 2025.06.07 00:39:09.283 2025.06.06 22:24:56.138 2025.06.06 22:24:56.934
17 6.0.0.795 2025.05.29 7a71a P P 1662 928 2025.06.06 00:32:50.860 2025.06.06 00:32:52.522 2025.06.05 22:24:03.224 2025.06.05 22:24:04.152
18 6.0.0.792 2025.05.28 b4327 P P 1496 1078 2025.05.29 00:47:51.926 2025.05.29 00:47:53.422 2025.05.28 22:27:21.095 2025.05.28 22:27:22.173
19 6.0.0.791 2025.05.27 02db8 P P 859 898 2025.05.28 00:45:12.713 2025.05.28 00:45:13.572 2025.05.27 22:26:26.802 2025.05.27 22:26:27.700
20 6.0.0.789 2025.05.21 64051 P P 811 992 2025.05.25 00:37:48.352 2025.05.25 00:37:49.163 2025.05.24 22:25:27.634 2025.05.24 22:25:28.626
21 6.0.0.787 2025.05.20 230ad P P 867 760 2025.05.21 00:34:56.195 2025.05.21 00:34:57.062 2025.05.20 22:23:45.854 2025.05.20 22:23:46.614
22 6.0.0.783 2025.05.12 37320 P P 1119 715 2025.05.19 12:07:43.327 2025.05.19 12:07:44.446 2025.05.19 10:11:27.530 2025.05.19 10:11:28.245
23 6.0.0.779 2025.05.11 136fa P P 1566 576 2025.05.12 00:30:04.604 2025.05.12 00:30:06.170 2025.05.11 22:23:11.730 2025.05.11 22:23:12.306
24 6.0.0.778 2025.05.07 d735e P P 841 897 2025.05.08 00:31:42.027 2025.05.08 00:31:42.868 2025.05.07 22:21:56.541 2025.05.07 22:21:57.438
25 6.0.0.776 2025.05.06 007cd P P 1813 960 2025.05.07 00:26:42.535 2025.05.07 00:26:44.348 2025.05.06 22:21:49.634 2025.05.06 22:21:50.594
26 6.0.0.770 2025.05.05 82c4a P P 1585 1016 2025.05.06 00:26:03.194 2025.05.06 00:26:04.779 2025.05.05 22:20:45.499 2025.05.05 22:20:46.515
27 6.0.0.767 2025.05.01 cdd29 P P 1603 963 2025.05.02 00:22:05.467 2025.05.02 00:22:07.070 2025.05.01 22:19:59.539 2025.05.01 22:20:00.502
28 6.0.0.762 2025.04.30 5cb15 P P 1588 919 2025.05.01 00:18:27.810 2025.05.01 00:18:29.398 2025.04.30 22:18:37.395 2025.04.30 22:18:38.314
29 6.0.0.755 2025.04.29 739c6 P P 1207 906 2025.04.30 00:22:21.675 2025.04.30 00:22:22.882 2025.04.29 22:20:02.670 2025.04.29 22:20:03.576
30 6.0.0.753 2025.04.27 29ab3 P P 1013 845 2025.04.28 00:24:00.658 2025.04.28 00:24:01.671 2025.04.27 22:19:18.208 2025.04.27 22:19:19.053
31 6.0.0.745 2025.04.21 78ad8 P P 879 787 2025.04.26 00:20:02.042 2025.04.26 00:20:02.921 2025.04.25 22:21:14.811 2025.04.25 22:21:15.598
32 6.0.0.744 2025.04.19 e883a P P 930 774 2025.04.20 00:22:30.127 2025.04.20 00:22:31.057 2025.04.19 22:20:30.685 2025.04.19 22:20:31.459
33 6.0.0.742 2025.04.17 abc3b P P 849 979 2025.04.19 00:24:22.282 2025.04.19 00:24:23.131 2025.04.18 22:20:55.875 2025.04.18 22:20:56.854
34 6.0.0.737 2025.04.16 fe52b P P 1521 823 2025.04.17 00:20:25.086 2025.04.17 00:20:26.607 2025.04.16 22:20:57.337 2025.04.16 22:20:58.160
35 6.0.0.736 2025.04.14 3e6be P P 1519 776 2025.04.15 00:01:36.674 2025.04.15 00:01:38.193 2025.04.14 22:12:24.653 2025.04.14 22:12:25.429
36 6.0.0.735 2025.04.13 6635c P P 730 435 2025.04.14 00:04:51.547 2025.04.14 00:04:52.277 2025.04.13 22:13:31.746 2025.04.13 22:13:32.181
37 6.0.0.734 2025.04.12 12f3f P P 1503 671 2025.04.13 00:01:50.559 2025.04.13 00:01:52.062 2025.04.12 22:12:50.307 2025.04.12 22:12:50.978
38 6.0.0.730 2025.04.11 240b8 P P 1281 775 2025.04.12 00:04:14.492 2025.04.12 00:04:15.773 2025.04.11 22:12:29.629 2025.04.11 22:12:30.404
39 6.0.0.726 2025.04.10 d79c6 P P 785 521 2025.04.11 00:04:14.519 2025.04.11 00:04:15.304 2025.04.10 22:12:33.355 2025.04.10 22:12:33.876
40 6.0.0.725 2025.04.09 a2b05 P P 856 495 2025.04.10 00:04:42.552 2025.04.10 00:04:43.408 2025.04.09 22:14:01.787 2025.04.09 22:14:02.282
41 6.0.0.722 2025.04.08 a8b86 P P 856 896 2025.04.09 00:21:42.985 2025.04.09 00:21:43.841 2025.04.08 22:20:11.694 2025.04.08 22:20:12.590
42 6.0.0.719 2025.04.06 90fd9 P P 824 433 2025.04.07 00:18:33.915 2025.04.07 00:18:34.739 2025.04.06 22:18:20.803 2025.04.06 22:18:21.236
43 6.0.0.717 2025.04.04 53d70 P P 1519 727 2025.04.05 00:13:40.511 2025.04.05 00:13:42.030 2025.04.04 22:17:44.962 2025.04.04 22:17:45.689
44 6.0.0.716 2025.04.03 fc636 P P 1336 801 2025.04.04 00:18:17.298 2025.04.04 00:18:18.634 2025.04.03 22:19:22.146 2025.04.03 22:19:22.947
45 6.0.0.715 2025.04.02 907ed P P 831 679 2025.04.03 00:18:02.623 2025.04.03 00:18:03.454 2025.04.02 22:19:39.806 2025.04.02 22:19:40.485
46 6.0.0.710 2025.04.01 40651 P P 910 909 2025.04.02 00:16:11.087 2025.04.02 00:16:11.997 2025.04.01 22:18:24.826 2025.04.01 22:18:25.735
47 6.0.0.708 2025.03.31 cb069 P P 1475 442 2025.04.01 00:07:02.283 2025.04.01 00:07:03.758 2025.03.31 22:13:37.726 2025.03.31 22:13:38.168
48 6.0.0.707 2025.03.28 4bd4f P P 865 823 2025.03.31 00:07:20.314 2025.03.31 00:07:21.179 2025.03.30 22:14:14.079 2025.03.30 22:14:14.902
49 6.0.0.698 2025.03.26 d72a7 P P 920 973 2025.03.28 00:30:12.645 2025.03.28 00:30:13.565 2025.03.27 22:20:10.190 2025.03.27 22:20:11.163
50 6.0.0.693 2025.03.24 0b559 P P 1026 477 2025.03.25 00:16:33.728 2025.03.25 00:16:34.754 2025.03.24 22:16:38.487 2025.03.24 22:16:38.964
51 6.0.0.687 2025.03.22 730aa P P 849 767 2025.03.24 00:26:18.270 2025.03.24 00:26:19.119 2025.03.23 22:23:47.287 2025.03.23 22:23:48.054
52 6.0.0.686 2025.03.20 71bf6 P P 1623 1021 2025.03.21 00:33:16.842 2025.03.21 00:33:18.465 2025.03.20 22:26:13.444 2025.03.20 22:26:14.465
53 6.0.0.685 2025.03.19 a8577 P P 1444 861 2025.03.20 00:37:23.470 2025.03.20 00:37:24.914 2025.03.19 22:24:07.142 2025.03.19 22:24:08.003
54 6.0.0.680 2025.03.18 90d29 P P 714 352 2025.03.19 10:55:03.613 2025.03.19 10:55:04.327 2025.03.19 09:09:00.229 2025.03.19 09:09:00.581
55 6.0.0.677 2025.03.16 c0a60 P P 1143 503 2025.03.17 00:25:30.087 2025.03.17 00:25:31.230 2025.03.16 22:23:35.419 2025.03.16 22:23:35.922
56 6.0.0.676 2025.03.15 3034f P P 687 394 2025.03.16 15:57:05.584 2025.03.16 15:57:06.271 2025.03.16 14:13:29.580 2025.03.16 14:13:29.974
57 6.0.0.673 2025.03.13 40f5b P P 598 520 2025.03.14 00:23:48.267 2025.03.14 00:23:48.865 2025.03.13 22:22:29.227 2025.03.13 22:22:29.747
58 6.0.0.671 2025.03.12 a4fff P P 1128 432 2025.03.13 00:27:31.821 2025.03.13 00:27:32.949 2025.03.12 22:25:40.820 2025.03.12 22:25:41.252
59 6.0.0.663 2025.03.11 daad2 P P 880 610 2025.03.12 00:26:04.707 2025.03.12 00:26:05.587 2025.03.11 22:24:47.813 2025.03.11 22:24:48.423
60 6.0.0.661 2025.03.07 b9869 P P 599 280 2025.03.11 00:04:18.967 2025.03.11 00:04:19.566 2025.03.10 22:15:41.951 2025.03.10 22:15:42.231
61 6.0.0.660 2025.03.04 a6700 P P 1178 480 2025.03.07 00:13:33.987 2025.03.07 00:13:35.165 2025.03.06 22:19:37.199 2025.03.06 22:19:37.679
62 6.0.0.658 2025.03.03 f15f8 P P 604 293 2025.03.04 00:08:28.167 2025.03.04 00:08:28.771 2025.03.03 22:15:53.011 2025.03.03 22:15:53.304
63 6.0.0.656 2025.02.27 25fb4 P P 951 556 2025.03.03 00:37:56.750 2025.03.03 00:37:57.701 2025.03.02 22:27:06.207 2025.03.02 22:27:06.763
64 6.0.0.655 2025.02.25 6e3e0 P P 605 491 2025.02.27 00:12:10.610 2025.02.27 00:12:11.215 2025.02.26 22:17:37.102 2025.02.26 22:17:37.593
65 6.0.0.654 2025.02.24 b7141 P P 1100 526 2025.02.25 00:15:47.626 2025.02.25 00:15:48.726 2025.02.24 22:19:17.873 2025.02.24 22:19:18.399
66 6.0.0.652 2025.02.22 22662 P P 2671 2238 2025.02.24 07:31:36.198 2025.02.24 07:31:38.869 2025.02.24 00:31:31.778 2025.02.24 00:31:34.016
67 6.0.0.647 2025.02.21 9fccb P P 2487 2331 2025.02.22 00:15:26.243 2025.02.22 00:15:28.730 2025.02.21 22:23:02.970 2025.02.21 22:23:05.301
68 6.0.0.640 2025.02.19 9b8ac P P 2973 2243 2025.02.20 00:13:25.254 2025.02.20 00:13:28.227 2025.02.19 22:17:10.394 2025.02.19 22:17:12.637
69 6.0.0.639 2025.02.18 201a4 P P 2526 3260 2025.02.19 00:05:45.731 2025.02.19 00:05:48.257 2025.02.18 22:16:04.904 2025.02.18 22:16:08.164
70 6.0.0.637 2025.02.12 6d0f5 P P 2916 2353 2025.02.14 00:23:14.494 2025.02.14 00:23:17.410 2025.02.13 22:22:55.831 2025.02.13 22:22:58.184

Elapsed time, ms. Chart for last 70 runs:

Last commits information (all timestamps in UTC):