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   
  + Statement failed, SQLSTATE = 42000
  + unsuccessful metadata update
  + -REVOKE failed
  + -SYSDBA is not grantor of ROLE on ROLE_8462 to SYSDBA.
  + RDB$USER                        SYSDBA
  + RDB$GRANTOR                     TMP$8462
  + RDB$PRIVILEGE                   M
  + RDB$GRANT_OPTION                0
  + RDB$RELATION_NAME               ROLE_8462
  + RDB$FIELD_NAME                  <null>
  + RDB$USER_TYPE                   8
  + RDB$OBJECT_TYPE                 13
  - Records affected: 0
  + Records affected: 1

LOG DETAILS:

2025-04-18 15:27:45.144
2025-04-18 15:27:45.155 act = <firebird.qa.plugin.Action object at [hex]>
2025-04-18 15:27:45.163 tmp_user = <firebird.qa.plugin.User object at [hex]>
2025-04-18 15:27:45.174 tmp_role = <firebird.qa.plugin.Role object at [hex]>
2025-04-18 15:27:45.190
2025-04-18 15:27:45.204 @pytest.mark.version('>=4.0.6')
2025-04-18 15:27:45.220 def test_1(act: Action, tmp_user: User, tmp_role: Role):
2025-04-18 15:27:45.236
2025-04-18 15:27:45.250 test_sql = f"""
2025-04-18 15:27:45.260 set list on;
2025-04-18 15:27:45.267 set term ^;
2025-04-18 15:27:45.283 execute block as
2025-04-18 15:27:45.296 begin
2025-04-18 15:27:45.311 execute statement 'drop role {tmp_role.name}';
2025-04-18 15:27:45.321 when any do
2025-04-18 15:27:45.336 begin
2025-04-18 15:27:45.351 --- nop ---
2025-04-18 15:27:45.361 end
2025-04-18 15:27:45.371 end
2025-04-18 15:27:45.379 ^
2025-04-18 15:27:45.386 set term ;^
2025-04-18 15:27:45.393 commit;
2025-04-18 15:27:45.401
2025-04-18 15:27:45.407 grant RDB$ADMIN to {tmp_user.name};
2025-04-18 15:27:45.418
2025-04-18 15:27:45.429 commit;
2025-04-18 15:27:45.437 connect '{act.db.dsn}' user {tmp_user.name} password '{tmp_user.password}' role rdb$admin;
2025-04-18 15:27:45.452
2025-04-18 15:27:45.468 create role {tmp_role.name};
2025-04-18 15:27:45.475 grant {tmp_role.name} to {act.db.user};
2025-04-18 15:27:45.481
2025-04-18 15:27:45.488 commit;
2025-04-18 15:27:45.498 connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}';
2025-04-18 15:27:45.512
2025-04-18 15:27:45.522 set count on;
2025-04-18 15:27:45.533
2025-04-18 15:27:45.541 --select * from rdb$user_privileges p where p.rdb$relation_name = upper('{tmp_role.name}');
2025-04-18 15:27:45.549 revoke {tmp_role.name} from {act.db.user};
2025-04-18 15:27:45.562 commit;
2025-04-18 15:27:45.575 select * from rdb$user_privileges p where p.rdb$relation_name = upper('{tmp_role.name}');
2025-04-18 15:27:45.583 """
2025-04-18 15:27:45.592
2025-04-18 15:27:45.600 expected_stdout = """
2025-04-18 15:27:45.607 Records affected: 0
2025-04-18 15:27:45.615 """
2025-04-18 15:27:45.632 act.expected_stdout = expected_stdout
2025-04-18 15:27:45.644 act.isql(input = test_sql, combine_output=True)
2025-04-18 15:27:45.653 >       assert act.clean_stdout == act.clean_expected_stdout
2025-04-18 15:27:45.662 E       assert
2025-04-18 15:27:45.673 E         + Statement failed, SQLSTATE = 42000
2025-04-18 15:27:45.685 E         + unsuccessful metadata update
2025-04-18 15:27:45.695 E         + -REVOKE failed
2025-04-18 15:27:45.703 E         + -SYSDBA is not grantor of ROLE on ROLE_8462 to SYSDBA.
2025-04-18 15:27:45.711 E         + RDB$USER                        SYSDBA
2025-04-18 15:27:45.717 E         + RDB$GRANTOR                     TMP$8462
2025-04-18 15:27:45.725 E         + RDB$PRIVILEGE                   M
2025-04-18 15:27:45.732 E         + RDB$GRANT_OPTION                0
2025-04-18 15:27:45.740 E         + RDB$RELATION_NAME               ROLE_8462
2025-04-18 15:27:45.748 E         + RDB$FIELD_NAME                  <null>
2025-04-18 15:27:45.756 E         + RDB$USER_TYPE                   8
2025-04-18 15:27:45.763 E         + RDB$OBJECT_TYPE                 13
2025-04-18 15:27:45.770 E         - Records affected: 0
2025-04-18 15:27:45.799 E         + Records affected: 1
2025-04-18 15:27:45.823
2025-04-18 15:27:45.834 tests/bugs/gh_8462_test.py:65: AssertionError
2025-04-18 15:27:45.844 ---------------------------- Captured stdout setup -----------------------------
2025-04-18 15:27:45.858 Creating db: localhost:/var/tmp/qa_2024/test_11690/test.fdb [page_size=None, sql_dialect=None, charset='NONE', user=SYSDBA, password=masterkey]
2025-04-18 15:27:45.867 CREATE user: TMP$8462 PLUGIN: Srp
2025-04-18 15:27:45.877 CREATE role: ROLE_8462
2025-04-18 15:27:45.888 --------------------------- Captured stdout teardown ---------------------------
2025-04-18 15:27:45.897 DROP role: ROLE_8462
2025-04-18 15:27:45.911 DROP user: TMP$8462 PLUGIN: Srp
3 #text
act = <firebird.qa.plugin.Action pytest object at [hex]>
tmp_user = <firebird.qa.plugin.User pytest object at [hex]>
tmp_role = <firebird.qa.plugin.Role pytest object at [hex]>

    @pytest.mark.version('>=4.0.6')
    def test_1(act: Action, tmp_user: User, tmp_role: Role):
    
        test_sql = f"""
            set list on;
            set term ^;
            execute block as
            begin
                execute statement 'drop role {tmp_role.name}';
            when any do
                begin
                    --- nop ---
                end
            end
            ^
            set term ;^
            commit;
    
            grant RDB$ADMIN to {tmp_user.name};
    
            commit;
            connect '{act.db.dsn}' user {tmp_user.name} password '{tmp_user.password}' role rdb$admin;
    
            create role {tmp_role.name};
            grant {tmp_role.name} to {act.db.user};
    
            commit;
            connect '{act.db.dsn}' user {act.db.user} password '{act.db.password}';
    
            set count on;
    
            --select * from rdb$user_privileges p where p.rdb$relation_name = upper('{tmp_role.name}');
            revoke {tmp_role.name} from {act.db.user};
            commit;
            select * from rdb$user_privileges p where p.rdb$relation_name = upper('{tmp_role.name}');
        """
    
        expected_stdout = """
            Records affected: 0
        """
        act.expected_stdout = expected_stdout
        act.isql(input = test_sql, combine_output=True)
>       assert act.clean_stdout == act.clean_expected_stdout
E       assert   
E         + Statement failed, SQLSTATE = 42000
E         + unsuccessful metadata update
E         + -REVOKE failed
E         + -SYSDBA is not grantor of ROLE on ROLE_8462 to SYSDBA.
E         + RDB$USER                        SYSDBA
E         + RDB$GRANTOR                     TMP$8462
E         + RDB$PRIVILEGE                   M
E         + RDB$GRANT_OPTION                0
E         + RDB$RELATION_NAME               ROLE_8462
E         + RDB$FIELD_NAME                  <null>
E         + RDB$USER_TYPE                   8
E         + RDB$OBJECT_TYPE                 13
E         - Records affected: 0
E         + Records affected: 1

tests/bugs/gh_8462_test.py:65: 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.1657 2025.06.19 4bd4c P P 1911 938 2025.06.27 12:22:20.105 2025.06.27 12:22:22.016 2025.06.27 11:03:06.768 2025.06.27 11:03:07.706
2 5.0.3.1657 2025.06.11 dae6f P P 2027 960 2025.06.17 07:27:28.269 2025.06.17 07:27:30.296 2025.06.17 06:07:00.430 2025.06.17 06:07:01.390
3 5.0.3.1657 2025.06.10 dbc92 P P 2094 1200 2025.06.11 12:17:59.118 2025.06.11 12:18:01.212 2025.06.11 10:48:58.759 2025.06.11 10:48:59.959
4 5.0.3.1656 2025.05.20 c4b11 P P 2164 985 2025.06.10 12:11:51.838 2025.06.10 12:11:54.002 2025.06.10 10:47:19.708 2025.06.10 10:47:20.693
5 5.0.3.1652 2025.05.13 f51c6 P P 2223 1031 2025.05.20 05:16:14.921 2025.05.20 05:16:17.144 2025.05.20 03:39:50.902 2025.05.20 03:39:51.933
6 5.0.3.1651 2025.04.30 141ef P P 2375 1308 2025.05.13 12:14:15.923 2025.05.13 12:14:18.298 2025.05.13 10:36:46.078 2025.05.13 10:36:47.386
7 5.0.3.1650 2025.04.28 4cbff P P 2390 1197 2025.05.01 11:48:04.606 2025.05.01 11:48:06.996 2025.05.01 10:11:31.250 2025.05.01 10:11:32.447
8 5.0.3.1649 2025.04.21 5b2d0 P P 2339 1163 2025.04.28 05:45:49.414 2025.04.28 05:45:51.753 2025.04.28 04:11:09.700 2025.04.28 04:11:10.863
9 5.0.3.1648 2025.04.18 2f4c5 P P 2336 1254 2025.04.20 05:37:31.685 2025.04.20 05:37:34.021 2025.04.20 04:05:27.995 2025.04.20 04:05:29.249
10 5.0.3.1635 2025.03.31 22ec6 F F 2321 1260 2025.04.18 12:00:41.470 2025.04.18 12:00:43.791 2025.04.18 10:24:40.942 2025.04.18 10:24:42.202
11 5.0.3.1633 2025.03.28 3123a F F 2084 1154 2025.03.31 10:34:23.584 2025.03.31 10:34:25.668 2025.03.31 09:04:49.044 2025.03.31 09:04:50.198
12 5.0.3.1633 2025.03.27 e0fb8 F F 2197 1450 2025.03.28 11:09:54.926 2025.03.28 11:09:57.123 2025.03.28 09:37:28.514 2025.03.28 09:37:29.964
13 5.0.3.1631 2025.03.21 1925b F F 2238 1029 2025.03.27 10:57:35.532 2025.03.27 10:57:37.770 2025.03.27 09:26:06.588 2025.03.27 09:26:07.617
14 5.0.3.1628 2025.03.14 16d05 F F 2757 3327 2025.03.17 08:30:41.570 2025.03.17 08:30:44.327 2025.03.17 06:50:19.979 2025.03.17 06:50:23.306
15 5.0.3.1627 2025.02.26 4e218 F F 3677 2316 2025.03.14 11:45:04.310 2025.03.14 11:45:07.987 2025.03.14 10:03:38.341 2025.03.14 10:03:40.657

Elapsed time, ms. Chart for last 15 runs:

Last commits information (all timestamps in UTC):