Jump to: output_first_mismatch    outcomes_full_history    elapsed_time_chart
Show cross-report outcomes.

Annotation type Annotation details
2 @message
I/O error

assert   
  - CREATED_DB_NAME                 EXPECTED
  - DB_OWNER                        DBA_4821
  - MON$SEC_DATABASE                Other
  + Statement failed, SQLSTATE = 08001
  + I/O error during "open O_CREAT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_core_4821.fdb"
  + -Error while trying to create file
  + -File exists
  + Statement failed, SQLSTATE = 08001
  + I/O error during "re open() for SYNC/DIRECT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_bind_4821.fdb"
  + -Error while trying to open file
  + -No such file or directory

LOG DETAILS:

2024-05-12 19:15:53.924
2024-05-12 19:15:53.929 act = <firebird.qa.plugin.Action object at [hex]>
2024-05-12 19:15:53.934 act_clone = <firebird.qa.plugin.Action object at [hex]>
2024-05-12 19:15:53.939 tmp_user = <firebird.qa.plugin.User object at [hex]>
2024-05-12 19:15:53.944 tmp_role = <firebird.qa.plugin.Role object at [hex]>
2024-05-12 19:15:53.949 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2024-05-12 19:15:53.956
2024-05-12 19:15:53.965 @pytest.mark.version('>=3.0.5')
2024-05-12 19:15:53.971 def test_1(act: Action,
2024-05-12 19:15:53.977 act_clone: Action,
2024-05-12 19:15:53.982 tmp_user: User,
2024-05-12 19:15:53.988 tmp_role: Role,
2024-05-12 19:15:53.993 capsys
2024-05-12 19:15:53.999 ):
2024-05-12 19:15:54.004
2024-05-12 19:15:54.010 db_work_file = get_filename_by_alias(act, REQUIRED_ALIAS)
2024-05-12 19:15:54.020 db_clone_file = get_filename_by_alias(act_clone, DB_BIND_ALIAS)
2024-05-12 19:15:54.026
2024-05-12 19:15:54.030 #----------------------------------------------------
2024-05-12 19:15:54.035
2024-05-12 19:15:54.043 dba_pswd = 'alterkey'
2024-05-12 19:15:54.048
2024-05-12 19:15:54.054 # The role MUST be created in security database!
2024-05-12 19:15:54.059 #
2024-05-12 19:15:54.064 sql_test = f"""
2024-05-12 19:15:54.069 set wng off;
2024-05-12 19:15:54.074 --set echo on;
2024-05-12 19:15:54.079 set list on;
2024-05-12 19:15:54.084 create database '{REQUIRED_ALIAS}' user {tmp_user.name};
2024-05-12 19:15:54.089
2024-05-12 19:15:54.094 create role {tmp_role.name};
2024-05-12 19:15:54.101 grant create database to role {tmp_role.name};
2024-05-12 19:15:54.109 grant drop database to role {tmp_role.name};
2024-05-12 19:15:54.116
2024-05-12 19:15:54.121 create user {tmp_user.name} password '{tmp_user.password}'
2024-05-12 19:15:54.127 -- ### ACHTUNG ### DO NOT specify in FB 4.x and 5.x:
2024-05-12 19:15:54.132 -- REVOKE ADMIN ROLE; ==> weird "SQLSTATE = 42000 / add record error ; ... / Zero length identifiers are not allowed"
2024-05-12 19:15:54.137 ;
2024-05-12 19:15:54.142 commit;
2024-05-12 19:15:54.148 grant {tmp_role.name} to {tmp_user.name}; -- actually not requied in FB 4.x and 5.x!
2024-05-12 19:15:54.153 commit;
2024-05-12 19:15:54.158
2024-05-12 19:15:54.163
2024-05-12 19:15:54.168 -- NOTE: following statement requires ROLE specification only in FB 3.x,
2024-05-12 19:15:54.173 -- otherwise:
2024-05-12 19:15:54.178 --     Statement failed, SQLSTATE = 28000
2024-05-12 19:15:54.183 --     no permission for CREATE access to DATABASE tmp_bind_4821_alias
2024-05-12 19:15:54.188 -- ### NO ### such requiremtnt in FB 4.x+
2024-05-12 19:15:54.192 create database 'localhost:{DB_BIND_ALIAS}' user {tmp_user.name} password '{tmp_user.password}'
2024-05-12 19:15:54.197 role {tmp_role.name} -- actually not requied in FB 4.x and 5.x!
2024-05-12 19:15:54.203 ;
2024-05-12 19:15:54.212 select
2024-05-12 19:15:54.218 iif( upper(mon$database_name) = upper('{db_clone_file}'), 'EXPECTED', 'UNEXPECTED! ' || coalesce(mon$database_name,'[null]')) as created_db_name
2024-05-12 19:15:54.223 ,mon$owner as db_owner
2024-05-12 19:15:54.229 ,mon$sec_database
2024-05-12 19:15:54.234 from mon$database;
2024-05-12 19:15:54.239 rollback;
2024-05-12 19:15:54.243 drop database;
2024-05-12 19:15:54.249 """
2024-05-12 19:15:54.254
2024-05-12 19:15:54.260 try:
2024-05-12 19:15:54.269 act.expected_stdout = f"""
2024-05-12 19:15:54.279 CREATED_DB_NAME                 EXPECTED
2024-05-12 19:15:54.284 DB_OWNER                        DBA_4821
2024-05-12 19:15:54.288 MON$SEC_DATABASE                Other
2024-05-12 19:15:54.293 """
2024-05-12 19:15:54.298 # act.expected_stdout = ''
2024-05-12 19:15:54.304 act.isql(switches=['-q'], input=sql_test, connect_db=False, credentials = False, combine_output = True, io_enc = locale.getpreferredencoding())
2024-05-12 19:15:54.309 >           assert act.clean_stdout == act.clean_expected_stdout
2024-05-12 19:15:54.314 E           assert
2024-05-12 19:15:54.319 E             - CREATED_DB_NAME                 EXPECTED
2024-05-12 19:15:54.323 E             - DB_OWNER                        DBA_4821
2024-05-12 19:15:54.328 E             - MON$SEC_DATABASE                Other
2024-05-12 19:15:54.333 E             + Statement failed, SQLSTATE = 08001
2024-05-12 19:15:54.338 E             + I/O error during "open O_CREAT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_core_4821.fdb"
2024-05-12 19:15:54.343 E             + -Error while trying to create file
2024-05-12 19:15:54.348 E             + -File exists
2024-05-12 19:15:54.353 E             + Statement failed, SQLSTATE = 08001
2024-05-12 19:15:54.359 E             + I/O error during "re open() for SYNC/DIRECT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_bind_4821.fdb"
2024-05-12 19:15:54.364 E             + -Error while trying to open file
2024-05-12 19:15:54.370 E             + -No such file or directory
2024-05-12 19:15:54.376
2024-05-12 19:15:54.381 tests/bugs/core_4821_test.py:178: AssertionError
2024-05-12 19:15:54.386 ---------------------------- Captured stdout setup -----------------------------
2024-05-12 19:15:54.391 Cached db: db-12.0-None-None-NONE.fdb [page_size=None, sql_dialect=None, charset='NONE'
3 #text
act = <firebird.qa.plugin.Action pytest object at [hex]>
act_clone = <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]>
capsys = <_pytest.capture.CaptureFixture pytest object at [hex]>

    @pytest.mark.version('>=3.0.5')
    def test_1(act: Action,
               act_clone: Action,
               tmp_user: User,
               tmp_role: Role,
               capsys
              ):
    
        db_work_file = get_filename_by_alias(act, REQUIRED_ALIAS)
        db_clone_file = get_filename_by_alias(act_clone, DB_BIND_ALIAS)
    
        #----------------------------------------------------
    
        dba_pswd = 'alterkey'
    
        # The role MUST be created in security database!
        #
        sql_test = f"""
            set wng off;
            --set echo on;
            set list on;
            create database '{REQUIRED_ALIAS}' user {tmp_user.name};
    
            create role {tmp_role.name};
            grant create database to role {tmp_role.name};
            grant drop database to role {tmp_role.name};
    
            create user {tmp_user.name} password '{tmp_user.password}'
            -- ### ACHTUNG ### DO NOT specify in FB 4.x and 5.x:
            -- REVOKE ADMIN ROLE; ==> weird "SQLSTATE = 42000 / add record error ; ... / Zero length identifiers are not allowed"
            ;
            commit;
            grant {tmp_role.name} to {tmp_user.name}; -- actually not requied in FB 4.x and 5.x!
            commit;
    
    
            -- NOTE: following statement requires ROLE specification only in FB 3.x,
            -- otherwise:
            --     Statement failed, SQLSTATE = 28000
            --     no permission for CREATE access to DATABASE tmp_bind_4821_alias
            -- ### NO ### such requiremtnt in FB 4.x+
            create database 'localhost:{DB_BIND_ALIAS}' user {tmp_user.name} password '{tmp_user.password}'
                role {tmp_role.name} -- actually not requied in FB 4.x and 5.x!
            ;
            select
                 iif( upper(mon$database_name) = upper('{db_clone_file}'), 'EXPECTED', 'UNEXPECTED! ' || coalesce(mon$database_name,'[null]')) as created_db_name
                ,mon$owner as db_owner
                ,mon$sec_database
            from mon$database;
            rollback;
            drop database;
        """
    
        try:
            act.expected_stdout = f"""
                CREATED_DB_NAME                 EXPECTED
                DB_OWNER                        DBA_4821
                MON$SEC_DATABASE                Other
            """
            # act.expected_stdout = ''
            act.isql(switches=['-q'], input=sql_test, connect_db=False, credentials = False, combine_output = True, io_enc = locale.getpreferredencoding())
>           assert act.clean_stdout == act.clean_expected_stdout
E           assert   
E             - CREATED_DB_NAME                 EXPECTED
E             - DB_OWNER                        DBA_4821
E             - MON$SEC_DATABASE                Other
E             + Statement failed, SQLSTATE = 08001
E             + I/O error during "open O_CREAT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_core_4821.fdb"
E             + -Error while trying to create file
E             + -File exists
E             + Statement failed, SQLSTATE = 08001
E             + I/O error during "re open() for SYNC/DIRECT" operation for file "/home/fbqa/qa-2024/unpacked-snapshot.tmp/examples/empbuild/qa/tmp_bind_4821.fdb"
E             + -Error while trying to open file
E             + -No such file or directory

tests/bugs/core_4821_test.py:178: 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 3.0.13.33809 2025.05.06 28ad0 P P 2014 2120 2025.06.30 14:44:46.681 2025.06.30 14:44:48.695 2025.06.30 13:55:26.630 2025.06.30 13:55:28.750
2 3.0.13.33808 2025.04.25 28426 P P 2251 2335 2025.05.06 13:43:50.907 2025.05.06 13:43:53.158 2025.05.06 12:45:35.805 2025.05.06 12:45:38.140
3 3.0.13.33803 2025.02.25 08ebd P P 2278 2381 2025.04.25 16:58:46.916 2025.04.25 16:58:49.194 2025.04.25 16:01:01.638 2025.04.25 16:01:04.019
4 3.0.13.33796 2025.01.29 0ab85 P P 1072 522 2025.02.25 15:31:24.711 2025.02.25 15:31:25.783 2025.02.25 14:33:50.112 2025.02.25 14:33:50.634
5 3.0.13.33796 2025.01.14 99b3b P P 1035 496 2025.01.28 17:45:13.001 2025.01.28 17:45:14.036 2025.01.28 16:46:27.085 2025.01.28 16:46:27.581
6 3.0.13.33795 2024.11.24 b8847 P P 1006 490 2025.01.13 15:22:52.487 2025.01.13 15:22:53.493 2025.01.13 14:24:48.334 2025.01.13 14:24:48.824
7 3.0.13.33794 2024.10.15 abe09 P P 815 400 2024.11.23 06:30:24.056 2024.11.23 06:30:24.871 2024.11.23 05:46:26.432 2024.11.23 05:46:26.832
8 3.0.13.33793 2024.10.04 82ccc P P 973 434 2024.10.14 04:26:27.248 2024.10.14 04:26:28.221 2024.10.14 03:38:01.533 2024.10.14 03:38:01.967
9 3.0.13.33792 2024.08.31 d8791 P P 996 440 2024.10.03 09:32:52.045 2024.10.03 09:32:53.041 2024.10.03 08:41:10.177 2024.10.03 08:41:10.617
10 3.0.13.33787 2024.08.17 2e0d6 P P 2387 864 2024.08.25 15:19:25.112 2024.08.25 15:19:27.499 2024.08.25 13:26:52.246 2024.08.25 13:26:53.110
11 3.0.13.33787 2024.08.09 df740 P P 1201 643 2024.08.16 12:47:55.918 2024.08.16 12:47:57.119 2024.08.16 11:49:45.184 2024.08.16 11:49:45.827
12 3.0.12.33746 2024.07.15 11dd4 P P 1440 578 2024.08.09 12:44:59.184 2024.08.09 12:45:00.624 2024.08.09 11:44:51.622 2024.08.09 11:44:52.200
13 3.0.12.33746 2024.06.11 8a5eb P P 851 373 2024.07.15 10:35:35.650 2024.07.15 10:35:36.501 2024.07.15 09:46:06.770 2024.07.15 09:46:07.143
14 3.0.12.33744 2024.05.09 9cf37 F P 717 304 2024.05.12 15:43:10.045 2024.05.12 15:43:10.762 2024.05.12 14:58:05.092 2024.05.12 14:58:05.396
15 3.0.12.33744 2024.04.20 af6b2 P P 726 306 2024.05.08 16:58:43.044 2024.05.08 16:58:43.770 2024.05.08 16:15:52.350 2024.05.08 16:15:52.656

Elapsed time, ms. Chart for last 15 runs:

Last commits information (all timestamps in UTC):