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   
    select count(*) from test where x is null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_ASC" Range Scan (full match)
  + ....................-> Index "TEST_X_ASC" Unique Scan
    select count(*) from test where y is null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
  + ....................-> Index "TEST_Y_DESC" Unique Scan
    select count(*) from test where x+y is null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
  + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
    select count(*) from test where z is null and mod(id,2) = 0
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
  + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
    select count(*) from test where x-y is null and mod(id,3) <= 1
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
  + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan
    select count(*) from test where x is not distinct from null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_ASC" Range Scan (full match)
  + ....................-> Index "TEST_X_ASC" Unique Scan
    select count(*) from test where y is not distinct from null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
  + ....................-> Index "TEST_Y_DESC" Unique Scan
    select count(*) from test where x+y is not distinct from null
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
  + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
    select count(*) from test where z is not distinct from null and mod(id,2) = 0
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
  + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
    select count(*) from test where x-y is not distinct from null and mod(id,3) <= 1
    Select Expression
    ....-> Aggregate
    ........-> Filter
    ............-> Table "TEST" Access By ID
    ................-> Bitmap
  - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
  + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan

LOG DETAILS:

2024-11-18 11:11:24.934
2024-11-18 11:11:24.942 act = <firebird.qa.plugin.Action object at [hex]>
2024-11-18 11:11:24.949 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2024-11-18 11:11:24.955
2024-11-18 11:11:24.962 @pytest.mark.version('>=5.0.2')
2024-11-18 11:11:24.968 def test_1(act: Action, capsys):
2024-11-18 11:11:24.974
2024-11-18 11:11:24.980 qry_map = {
2024-11-18 11:11:24.986 0 : 'select count(*) from test where x is null'
2024-11-18 11:11:24.994 ,1 : 'select count(*) from test where y is null'
2024-11-18 11:11:25.000 ,2 : 'select count(*) from test where x+y is null'
2024-11-18 11:11:25.005 ,3 : 'select count(*) from test where z is null and mod(id,2) = 0'
2024-11-18 11:11:25.010 ,4 : 'select count(*) from test where x-y is null and mod(id,3) <= 1'
2024-11-18 11:11:25.015 ,5 : 'select count(*) from test where x is not distinct from null'
2024-11-18 11:11:25.020 ,6 : 'select count(*) from test where y is not distinct from null'
2024-11-18 11:11:25.026 ,7 : 'select count(*) from test where x+y is not distinct from null'
2024-11-18 11:11:25.032 ,8 : 'select count(*) from test where z is not distinct from null and mod(id,2) = 0'
2024-11-18 11:11:25.038 ,9 : 'select count(*) from test where x-y is not distinct from null and mod(id,3) <= 1'
2024-11-18 11:11:25.044 }
2024-11-18 11:11:25.050
2024-11-18 11:11:25.055 with act.db.connect() as con:
2024-11-18 11:11:25.060 cur = con.cursor()
2024-11-18 11:11:25.065 for k,v in qry_map.items():
2024-11-18 11:11:25.070 ps = cur.prepare(v)
2024-11-18 11:11:25.076 # Print explained plan with padding eash line by dots in order to see indentations:
2024-11-18 11:11:25.081 print(v)
2024-11-18 11:11:25.087 print( '\n'.join([replace_leading(s) for s in ps.detailed_plan.split('\n')]) )
2024-11-18 11:11:25.093 print('')
2024-11-18 11:11:25.098
2024-11-18 11:11:25.103 # 26.10.2024. ::: ACHTUNG :::
2024-11-18 11:11:25.108 # MANDATORY OTHERWISE PYTEST WILL HANG AT FINAL POINT:
2024-11-18 11:11:25.117 ps.free()
2024-11-18 11:11:25.127
2024-11-18 11:11:25.134
2024-11-18 11:11:25.139 expected_out = f"""
2024-11-18 11:11:25.145 {qry_map[0]}
2024-11-18 11:11:25.150 Select Expression
2024-11-18 11:11:25.156 ....-> Aggregate
2024-11-18 11:11:25.162 ........-> Filter
2024-11-18 11:11:25.168 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.175 ................-> Bitmap
2024-11-18 11:11:25.180 ....................-> Index "TEST_X_ASC" Range Scan (full match)
2024-11-18 11:11:25.186
2024-11-18 11:11:25.191 {qry_map[1]}
2024-11-18 11:11:25.197 Select Expression
2024-11-18 11:11:25.203 ....-> Aggregate
2024-11-18 11:11:25.211 ........-> Filter
2024-11-18 11:11:25.217 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.222 ................-> Bitmap
2024-11-18 11:11:25.228 ....................-> Index "TEST_Y_DESC" Range Scan (full match)
2024-11-18 11:11:25.233
2024-11-18 11:11:25.238 {qry_map[2]}
2024-11-18 11:11:25.242 Select Expression
2024-11-18 11:11:25.247 ....-> Aggregate
2024-11-18 11:11:25.253 ........-> Filter
2024-11-18 11:11:25.258 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.271 ................-> Bitmap
2024-11-18 11:11:25.279 ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
2024-11-18 11:11:25.285
2024-11-18 11:11:25.291 {qry_map[3]}
2024-11-18 11:11:25.296 Select Expression
2024-11-18 11:11:25.301 ....-> Aggregate
2024-11-18 11:11:25.307 ........-> Filter
2024-11-18 11:11:25.313 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.319 ................-> Bitmap
2024-11-18 11:11:25.324 ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.329
2024-11-18 11:11:25.334 {qry_map[4]}
2024-11-18 11:11:25.339 Select Expression
2024-11-18 11:11:25.344 ....-> Aggregate
2024-11-18 11:11:25.350 ........-> Filter
2024-11-18 11:11:25.355 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.361 ................-> Bitmap
2024-11-18 11:11:25.367 ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.376
2024-11-18 11:11:25.383 {qry_map[5]}
2024-11-18 11:11:25.388 Select Expression
2024-11-18 11:11:25.393 ....-> Aggregate
2024-11-18 11:11:25.399 ........-> Filter
2024-11-18 11:11:25.405 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.413 ................-> Bitmap
2024-11-18 11:11:25.420 ....................-> Index "TEST_X_ASC" Range Scan (full match)
2024-11-18 11:11:25.428
2024-11-18 11:11:25.438 {qry_map[6]}
2024-11-18 11:11:25.449 Select Expression
2024-11-18 11:11:25.456 ....-> Aggregate
2024-11-18 11:11:25.462 ........-> Filter
2024-11-18 11:11:25.469 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.474 ................-> Bitmap
2024-11-18 11:11:25.479 ....................-> Index "TEST_Y_DESC" Range Scan (full match)
2024-11-18 11:11:25.484
2024-11-18 11:11:25.490 {qry_map[7]}
2024-11-18 11:11:25.494 Select Expression
2024-11-18 11:11:25.500 ....-> Aggregate
2024-11-18 11:11:25.507 ........-> Filter
2024-11-18 11:11:25.513 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.519 ................-> Bitmap
2024-11-18 11:11:25.524 ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
2024-11-18 11:11:25.529
2024-11-18 11:11:25.534 {qry_map[8]}
2024-11-18 11:11:25.539 Select Expression
2024-11-18 11:11:25.545 ....-> Aggregate
2024-11-18 11:11:25.551 ........-> Filter
2024-11-18 11:11:25.559 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.564 ................-> Bitmap
2024-11-18 11:11:25.570 ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.575
2024-11-18 11:11:25.580 {qry_map[9]}
2024-11-18 11:11:25.585 Select Expression
2024-11-18 11:11:25.591 ....-> Aggregate
2024-11-18 11:11:25.596 ........-> Filter
2024-11-18 11:11:25.602 ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.608 ................-> Bitmap
2024-11-18 11:11:25.614 ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.619 """
2024-11-18 11:11:25.625
2024-11-18 11:11:25.631 act.expected_stdout = expected_out
2024-11-18 11:11:25.635
2024-11-18 11:11:25.640 act.stdout = capsys.readouterr().out
2024-11-18 11:11:25.645 >       assert act.clean_stdout == act.clean_expected_stdout
2024-11-18 11:11:25.650 E       assert
2024-11-18 11:11:25.655 E           select count(*) from test where x is null
2024-11-18 11:11:25.661 E           Select Expression
2024-11-18 11:11:25.667 E           ....-> Aggregate
2024-11-18 11:11:25.675 E           ........-> Filter
2024-11-18 11:11:25.683 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.689 E           ................-> Bitmap
2024-11-18 11:11:25.694 E         - ....................-> Index "TEST_X_ASC" Range Scan (full match)
2024-11-18 11:11:25.706 E         + ....................-> Index "TEST_X_ASC" Unique Scan
2024-11-18 11:11:25.717 E           select count(*) from test where y is null
2024-11-18 11:11:25.723 E           Select Expression
2024-11-18 11:11:25.728 E           ....-> Aggregate
2024-11-18 11:11:25.734 E           ........-> Filter
2024-11-18 11:11:25.741 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.747 E           ................-> Bitmap
2024-11-18 11:11:25.752 E         - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
2024-11-18 11:11:25.762 E         + ....................-> Index "TEST_Y_DESC" Unique Scan
2024-11-18 11:11:25.773 E           select count(*) from test where x+y is null
2024-11-18 11:11:25.778 E           Select Expression
2024-11-18 11:11:25.783 E           ....-> Aggregate
2024-11-18 11:11:25.789 E           ........-> Filter
2024-11-18 11:11:25.795 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.801 E           ................-> Bitmap
2024-11-18 11:11:25.806 E         - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
2024-11-18 11:11:25.816 E         + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
2024-11-18 11:11:25.828 E           select count(*) from test where z is null and mod(id,2) = 0
2024-11-18 11:11:25.834 E           Select Expression
2024-11-18 11:11:25.839 E           ....-> Aggregate
2024-11-18 11:11:25.844 E           ........-> Filter
2024-11-18 11:11:25.850 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.856 E           ................-> Bitmap
2024-11-18 11:11:25.863 E         - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.876 E         + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
2024-11-18 11:11:25.887 E           select count(*) from test where x-y is null and mod(id,3) <= 1
2024-11-18 11:11:25.892 E           Select Expression
2024-11-18 11:11:25.897 E           ....-> Aggregate
2024-11-18 11:11:25.903 E           ........-> Filter
2024-11-18 11:11:25.908 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.914 E           ................-> Bitmap
2024-11-18 11:11:25.922 E         - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
2024-11-18 11:11:25.935 E         + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan
2024-11-18 11:11:25.948 E           select count(*) from test where x is not distinct from null
2024-11-18 11:11:25.954 E           Select Expression
2024-11-18 11:11:25.961 E           ....-> Aggregate
2024-11-18 11:11:25.968 E           ........-> Filter
2024-11-18 11:11:25.975 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:25.980 E           ................-> Bitmap
2024-11-18 11:11:25.986 E         - ....................-> Index "TEST_X_ASC" Range Scan (full match)
2024-11-18 11:11:25.998 E         + ....................-> Index "TEST_X_ASC" Unique Scan
2024-11-18 11:11:26.010 E           select count(*) from test where y is not distinct from null
2024-11-18 11:11:26.015 E           Select Expression
2024-11-18 11:11:26.019 E           ....-> Aggregate
2024-11-18 11:11:26.025 E           ........-> Filter
2024-11-18 11:11:26.031 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:26.037 E           ................-> Bitmap
2024-11-18 11:11:26.043 E         - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
2024-11-18 11:11:26.055 E         + ....................-> Index "TEST_Y_DESC" Unique Scan
2024-11-18 11:11:26.067 E           select count(*) from test where x+y is not distinct from null
2024-11-18 11:11:26.075 E           Select Expression
2024-11-18 11:11:26.081 E           ....-> Aggregate
2024-11-18 11:11:26.086 E           ........-> Filter
2024-11-18 11:11:26.092 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:26.097 E           ................-> Bitmap
2024-11-18 11:11:26.102 E         - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
2024-11-18 11:11:26.114 E         + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
2024-11-18 11:11:26.124 E           select count(*) from test where z is not distinct from null and mod(id,2) = 0
2024-11-18 11:11:26.129 E           Select Expression
2024-11-18 11:11:26.137 E           ....-> Aggregate
2024-11-18 11:11:26.145 E           ........-> Filter
2024-11-18 11:11:26.150 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:26.155 E           ................-> Bitmap
2024-11-18 11:11:26.161 E         - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
2024-11-18 11:11:26.171 E         + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
2024-11-18 11:11:26.182 E           select count(*) from test where x-y is not distinct from null and mod(id,3) <= 1
2024-11-18 11:11:26.187 E           Select Expression
2024-11-18 11:11:26.193 E           ....-> Aggregate
2024-11-18 11:11:26.199 E           ........-> Filter
2024-11-18 11:11:26.205 E           ............-> Table "TEST" Access By ID
2024-11-18 11:11:26.211 E           ................-> Bitmap
2024-11-18 11:11:26.220 E         - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
2024-11-18 11:11:26.234 E         + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan
2024-11-18 11:11:26.243
2024-11-18 11:11:26.250 tests/bugs/gh_8290_test.py:158: AssertionError
2024-11-18 11:11:26.258 ---------------------------- Captured stdout setup -----------------------------
2024-11-18 11:11:26.265 Creating db: localhost:/var/tmp/qa_2024/test_11670/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('>=5.0.2')
    def test_1(act: Action, capsys):
    
        qry_map = {
             0 : 'select count(*) from test where x is null'
            ,1 : 'select count(*) from test where y is null'
            ,2 : 'select count(*) from test where x+y is null'
            ,3 : 'select count(*) from test where z is null and mod(id,2) = 0'
            ,4 : 'select count(*) from test where x-y is null and mod(id,3) <= 1'
            ,5 : 'select count(*) from test where x is not distinct from null'
            ,6 : 'select count(*) from test where y is not distinct from null'
            ,7 : 'select count(*) from test where x+y is not distinct from null'
            ,8 : 'select count(*) from test where z is not distinct from null and mod(id,2) = 0'
            ,9 : 'select count(*) from test where x-y is not distinct from null and mod(id,3) <= 1'
        }
    
        with act.db.connect() as con:
            cur = con.cursor()
            for k,v in qry_map.items():
                ps = cur.prepare(v)
                # Print explained plan with padding eash line by dots in order to see indentations:
                print(v)
                print( '\n'.join([replace_leading(s) for s in ps.detailed_plan.split('\n')]) )
                print('')
    
                # 26.10.2024. ::: ACHTUNG :::
                # MANDATORY OTHERWISE PYTEST WILL HANG AT FINAL POINT:
                ps.free()
    
    
        expected_out = f"""
            {qry_map[0]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_ASC" Range Scan (full match)
    
            {qry_map[1]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_Y_DESC" Range Scan (full match)
    
            {qry_map[2]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
    
            {qry_map[3]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
    
            {qry_map[4]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
    
            {qry_map[5]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_ASC" Range Scan (full match)
    
            {qry_map[6]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_Y_DESC" Range Scan (full match)
    
            {qry_map[7]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
    
            {qry_map[8]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
    
            {qry_map[9]}
            Select Expression
            ....-> Aggregate
            ........-> Filter
            ............-> Table "TEST" Access By ID
            ................-> Bitmap
            ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
        """
    
        act.expected_stdout = expected_out
    
        act.stdout = capsys.readouterr().out
>       assert act.clean_stdout == act.clean_expected_stdout
E       assert   
E           select count(*) from test where x is null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_ASC" Range Scan (full match)
E         + ....................-> Index "TEST_X_ASC" Unique Scan
E           select count(*) from test where y is null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
E         + ....................-> Index "TEST_Y_DESC" Unique Scan
E           select count(*) from test where x+y is null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
E         + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
E           select count(*) from test where z is null and mod(id,2) = 0
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
E         + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
E           select count(*) from test where x-y is null and mod(id,3) <= 1
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
E         + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan
E           select count(*) from test where x is not distinct from null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_ASC" Range Scan (full match)
E         + ....................-> Index "TEST_X_ASC" Unique Scan
E           select count(*) from test where y is not distinct from null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_Y_DESC" Range Scan (full match)
E         + ....................-> Index "TEST_Y_DESC" Unique Scan
E           select count(*) from test where x+y is not distinct from null
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_PLUS_Y" Range Scan (full match)
E         + ....................-> Index "TEST_X_PLUS_Y" Unique Scan
E           select count(*) from test where z is not distinct from null and mod(id,2) = 0
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_Z_PARTIAL" Range Scan (full match)
E         + ....................-> Index "TEST_Z_PARTIAL" Unique Scan
E           select count(*) from test where x-y is not distinct from null and mod(id,3) <= 1
E           Select Expression
E           ....-> Aggregate
E           ........-> Filter
E           ............-> Table "TEST" Access By ID
E           ................-> Bitmap
E         - ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Range Scan (full match)
E         + ....................-> Index "TEST_X_MINUS_Y_PARTIAL" Unique Scan

tests/bugs/gh_8290_test.py:158: 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 5.0.3.1674 2025.06.27 3ee5c P P 913 445 2025.07.01 12:59:42.520 2025.07.01 12:59:43.433 2025.07.01 11:35:01.311 2025.07.01 11:35:01.756
2 5.0.3.1657 2025.06.19 4bd4c P P 814 502 2025.06.27 12:21:21.284 2025.06.27 12:21:22.098 2025.06.27 11:02:12.939 2025.06.27 11:02:13.441
3 5.0.3.1657 2025.06.11 dae6f P P 812 434 2025.06.17 07:26:25.284 2025.06.17 07:26:26.096 2025.06.17 06:06:05.419 2025.06.17 06:06:05.853
4 5.0.3.1657 2025.06.10 dbc92 P P 876 561 2025.06.11 12:16:56.357 2025.06.11 12:16:57.233 2025.06.11 10:47:52.128 2025.06.11 10:47:52.689
5 5.0.3.1656 2025.05.20 c4b11 P P 885 474 2025.06.10 12:10:42.182 2025.06.10 12:10:43.067 2025.06.10 10:46:20.426 2025.06.10 10:46:20.900
6 5.0.3.1652 2025.05.13 f51c6 P P 894 535 2025.05.20 05:14:57.235 2025.05.20 05:14:58.129 2025.05.20 03:38:39.087 2025.05.20 03:38:39.622
7 5.0.3.1651 2025.04.30 141ef P P 1013 513 2025.05.13 12:12:59.255 2025.05.13 12:13:00.268 2025.05.13 10:35:37.671 2025.05.13 10:35:38.184
8 5.0.3.1650 2025.04.28 4cbff P P 928 495 2025.05.01 11:46:46.143 2025.05.01 11:46:47.071 2025.05.01 10:10:22.683 2025.05.01 10:10:23.178
9 5.0.3.1649 2025.04.21 5b2d0 P P 968 492 2025.04.28 05:44:33.493 2025.04.28 05:44:34.461 2025.04.28 04:10:02.949 2025.04.28 04:10:03.441
10 5.0.3.1648 2025.04.18 2f4c5 P P 975 471 2025.04.20 05:36:18.013 2025.04.20 05:36:18.988 2025.04.20 04:04:24.583 2025.04.20 04:04:25.054
11 5.0.3.1635 2025.03.31 22ec6 P P 970 529 2025.04.18 11:59:22.294 2025.04.18 11:59:23.264 2025.04.18 10:23:34.415 2025.04.18 10:23:34.944
12 5.0.3.1633 2025.03.28 3123a P P 1032 497 2025.03.31 10:33:18.167 2025.03.31 10:33:19.199 2025.03.31 09:03:48.090 2025.03.31 09:03:48.587
13 5.0.3.1633 2025.03.27 e0fb8 P P 925 695 2025.03.28 11:08:39.940 2025.03.28 11:08:40.865 2025.03.28 09:36:24.023 2025.03.28 09:36:24.718
14 5.0.3.1631 2025.03.21 1925b P P 938 443 2025.03.27 10:56:25.048 2025.03.27 10:56:25.986 2025.03.27 09:25:01.332 2025.03.27 09:25:01.775
15 5.0.3.1628 2025.03.14 16d05 P P 3430 3276 2025.03.17 08:29:29.867 2025.03.17 08:29:33.297 2025.03.17 06:49:12.915 2025.03.17 06:49:16.191
16 5.0.3.1627 2025.02.26 4e218 P P 3690 3470 2025.03.14 11:43:51.689 2025.03.14 11:43:55.379 2025.03.14 10:02:31.420 2025.03.14 10:02:34.890
17 5.0.3.1624 2025.02.25 dc3b2 P P 3616 3011 2025.02.26 10:34:24.858 2025.02.26 10:34:28.474 2025.02.26 08:58:35.831 2025.02.26 08:58:38.842
18 5.0.2.1615 2025.02.20 4a726 P P 3677 3188 2025.02.25 11:01:46.826 2025.02.25 11:01:50.503 2025.02.25 09:24:09.820 2025.02.25 09:24:13.008
19 5.0.2.1615 2025.02.14 9cb76 P P 3561 2930 2025.02.20 07:51:00.342 2025.02.20 07:51:03.903 2025.02.20 06:17:06.122 2025.02.20 06:17:09.052
20 5.0.2.1577 2024.12.24 3c80e P P 4264 3228 2025.02.14 11:04:54.194 2025.02.14 11:04:58.458 2025.02.14 09:30:39.564 2025.02.14 09:30:42.792
21 5.0.2.1576 2024.12.17 646b0 P P 2735 2479 2024.12.24 20:27:23.123 2024.12.24 20:27:25.858 2024.12.24 17:15:59.749 2024.12.24 17:16:02.228
22 5.0.2.1575 2024.12.08 63d39 P P 2730 2373 2024.12.16 08:08:46.737 2024.12.16 08:08:49.467 2024.12.16 06:58:43.359 2024.12.16 06:58:45.732
23 5.0.2.1567 2024.11.26 56e63 P P 3290 2540 2024.12.04 07:49:52.950 2024.12.04 07:49:56.240 2024.12.04 06:38:06.168 2024.12.04 06:38:08.708
24 5.0.2.1567 2024.11.21 96f61 P P 2868 2378 2024.11.26 05:31:40.458 2024.11.26 05:31:43.326 2024.11.26 04:23:14.309 2024.11.26 04:23:16.687
25 5.0.2.1567 2024.11.18 e1289 P P 2796 2403 2024.11.21 07:36:01.544 2024.11.21 07:36:04.340 2024.11.21 06:28:19.955 2024.11.21 06:28:22.358
26 5.0.2.1533 2024.10.23 0ec43 F F 3234 2626 2024.11.18 07:52:23.294 2024.11.18 07:52:26.528 2024.11.18 06:42:44.173 2024.11.18 06:42:46.799

Elapsed time, ms. Chart for last 26 runs:

Last commits information (all timestamps in UTC):