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
Network / firewall ?

firebird.driver.types.DatabaseError: Unable to complete network request to host "localhost".
-Failed to establish a connection.

LOG DETAILS:

2025-05-13 08:53:14.117
2025-05-13 08:53:14.117 act_db_main = <firebird.qa.plugin.Action object at [hex]>
2025-05-13 08:53:14.117 act_db_repl = <firebird.qa.plugin.Action object at [hex]>
2025-05-13 08:53:14.117 db_main_nbk0 = WindowsPath('H:/QA/temp/qa2024.tmp/fbqa/test_12239/tmp_db_main.nbk0')
2025-05-13 08:53:14.117 db_main_nbk1 = WindowsPath('H:/QA/temp/qa2024.tmp/fbqa/test_12239/tmp_db_main.nbk1')
2025-05-13 08:53:14.117 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-05-13 08:53:14.117
2025-05-13 08:53:14.117     @pytest.mark.replication
2025-05-13 08:53:14.117     @pytest.mark.version('>=4.0.3')
2025-05-13 08:53:14.118     def test_1(act_db_main: Action,  act_db_repl: Action, db_main_nbk0: Path, db_main_nbk1: Path, capsys):
2025-05-13 08:53:14.118
2025-05-13 08:53:14.118         out_prep, out_main, out_drop = '', '', ''
2025-05-13 08:53:14.118
2025-05-13 08:53:14.118         rdb_backup_history_init = []
2025-05-13 08:53:14.118         rdb_backup_history_curr = []
2025-05-13 08:53:14.118         rdb_bkp_sttm = 'select rb.rdb$guid as db_guid from rdb$backup_history rb'
2025-05-13 08:53:14.118
2025-05-13 08:53:14.118         # Obtain full path + filename for DB_MAIN and DB_REPL aliases.
2025-05-13 08:53:14.118         # NOTE: we must NOT use 'a.db.db_path' for ALIASED databases!
2025-05-13 08:53:14.118         # It will return '.' rather than full path+filename.
2025-05-13 08:53:14.118         # Use only con.info.name for that!
2025-05-13 08:53:14.118         #
2025-05-13 08:53:14.118         db_info = {}
2025-05-13 08:53:14.118         for a in (act_db_main, act_db_repl):
2025-05-13 08:53:14.118 >           with a.db.connect(no_db_triggers = True) as con:
2025-05-13 08:53:14.118
2025-05-13 08:53:14.118 tests\functional\replication\test_disallow_rdb_backup_history_replication.py:358:
2025-05-13 08:53:14.119 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2025-05-13 08:53:14.119
2025-05-13 08:53:14.119 database = 'db_main_alias'
2025-05-13 08:53:14.119
2025-05-13 08:53:14.119     def connect(database: str, *, user: str=None, password: str=None, role: str=None,
2025-05-13 08:53:14.119                 no_gc: bool=None, no_db_triggers: bool=None, dbkey_scope: DBKeyScope=None,
2025-05-13 08:53:14.119                 crypt_callback: iCryptKeyCallbackImpl=None, charset: str=None,
2025-05-13 08:53:14.119                 auth_plugin_list: str=None, session_time_zone: str=None) -> Connection:
2025-05-13 08:53:14.119         """Establishes a connection to the database.
2025-05-13 08:53:14.119
2025-05-13 08:53:14.119         Arguments:
2025-05-13 08:53:14.119             database: DSN or Database configuration name.
2025-05-13 08:53:14.119             user: User name.
2025-05-13 08:53:14.119             password: User password.
2025-05-13 08:53:14.119             role: User role.
2025-05-13 08:53:14.119             no_gc: Do not perform garbage collection for this connection.
2025-05-13 08:53:14.119             no_db_triggers: Do not execute database triggers for this connection.
2025-05-13 08:53:14.119             dbkey_scope: DBKEY scope override for connection.
2025-05-13 08:53:14.119             crypt_callback: Callback that provides encryption key for the database.
2025-05-13 08:53:14.119             charset: Character set for connection.
2025-05-13 08:53:14.120             auth_plugin_list: List of authentication plugins override
2025-05-13 08:53:14.120             session_time_zone: Session time zone [Firebird 4]
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120         Hooks:
2025-05-13 08:53:14.120             Event `.ConnectionHook.ATTACH_REQUEST`: Executed after all parameters
2025-05-13 08:53:14.120             are preprocessed and before `Connection` is created. Hook
2025-05-13 08:53:14.120             must have signature::
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120                 hook_func(dsn: str, dpb: bytes) -> Optional[Connection]
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120             Hook may return `Connection` instance or None.
2025-05-13 08:53:14.120             First instance returned by any hook will become the return value
2025-05-13 08:53:14.120             of this function and other hooks are not called.
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120             Event `.ConnectionHook.ATTACHED`: Executed before `Connection` instance is
2025-05-13 08:53:14.120             returned. Hook must have signature::
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120                 hook_func(connection: Connection) -> None
2025-05-13 08:53:14.120
2025-05-13 08:53:14.120             Any value returned by hook is ignored.
2025-05-13 08:53:14.120         """
2025-05-13 08:53:14.120         db_config = driver_config.get_database(database)
2025-05-13 08:53:14.121         if db_config is None:
2025-05-13 08:53:14.121             db_config = driver_config.db_defaults
2025-05-13 08:53:14.121         else:
2025-05-13 08:53:14.121             database = db_config.database.value
2025-05-13 08:53:14.121         if db_config.server.value is None:
2025-05-13 08:53:14.121             srv_config = driver_config.server_defaults
2025-05-13 08:53:14.121         else:
2025-05-13 08:53:14.121             srv_config = driver_config.get_server(db_config.server.value)
2025-05-13 08:53:14.121             if srv_config is None:
2025-05-13 08:53:14.121                 raise ValueError(f"Configuration for server '{db_config.server.value}' not found")
2025-05-13 08:53:14.121         if user is None:
2025-05-13 08:53:14.121             user = db_config.user.value
2025-05-13 08:53:14.121             if user is None:
2025-05-13 08:53:14.121                 user = srv_config.user.value
2025-05-13 08:53:14.121         if password is None:
2025-05-13 08:53:14.121             password = db_config.password.value
2025-05-13 08:53:14.121             if password is None:
2025-05-13 08:53:14.121                 password = srv_config.password.value
2025-05-13 08:53:14.121         if role is None:
2025-05-13 08:53:14.121             role = db_config.role.value
2025-05-13 08:53:14.121         if charset is None:
2025-05-13 08:53:14.122             charset = db_config.charset.value
2025-05-13 08:53:14.122         if charset:
2025-05-13 08:53:14.122             charset = charset.upper()
2025-05-13 08:53:14.122         if auth_plugin_list is None:
2025-05-13 08:53:14.122             auth_plugin_list = db_config.auth_plugin_list.value
2025-05-13 08:53:14.122         if session_time_zone is None:
2025-05-13 08:53:14.122             session_time_zone = db_config.session_time_zone.value
2025-05-13 08:53:14.122         dsn = _connect_helper(db_config.dsn.value, srv_config.host.value, srv_config.port.value,
2025-05-13 08:53:14.122                               database, db_config.protocol.value)
2025-05-13 08:53:14.122         dpb = DPB(user=user, password=password, role=role, trusted_auth=db_config.trusted_auth.value,
2025-05-13 08:53:14.122                   sql_dialect=db_config.sql_dialect.value, timeout=db_config.timeout.value,
2025-05-13 08:53:14.122                   charset=charset, cache_size=db_config.cache_size.value,
2025-05-13 08:53:14.122                   no_linger=db_config.no_linger.value, utf8filename=db_config.utf8filename.value,
2025-05-13 08:53:14.122                   no_gc=no_gc, no_db_triggers=no_db_triggers, dbkey_scope=dbkey_scope,
2025-05-13 08:53:14.122                   dummy_packet_interval=db_config.dummy_packet_interval.value,
2025-05-13 08:53:14.122                   config=db_config.config.value, auth_plugin_list=auth_plugin_list,
2025-05-13 08:53:14.122                   session_time_zone=session_time_zone, set_bind=db_config.set_bind.value,
2025-05-13 08:53:14.122                   decfloat_round=db_config.decfloat_round.value,
2025-05-13 08:53:14.122                   decfloat_traps=db_config.decfloat_traps.value,
2025-05-13 08:53:14.122                   parallel_workers=db_config.parallel_workers.value)
2025-05-13 08:53:14.122 >       return __make_connection(False, dsn, db_config.utf8filename.value, dpb.get_buffer(),
2025-05-13 08:53:14.123                                  db_config.sql_dialect.value, charset, crypt_callback)
2025-05-13 08:53:14.123
2025-05-13 08:53:14.123 C:\Python3x\Lib\site-packages\firebird\driver\core.py:2159:
2025-05-13 08:53:14.123 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2025-05-13 08:53:14.123
2025-05-13 08:53:14.123 create = False, dsn = 'localhost/33337:db_main_alias', utf8filename = False
2025-05-13 08:53:14.123 dpb = b'\x01\x1c\x06SYSDBA\x1d\tmasterkey?\x04\x03\x00\x00\x00H\x04\x01\x00\x00\x00'
2025-05-13 08:53:14.123 sql_dialect = 3, charset = None, crypt_callback = None
2025-05-13 08:53:14.123
2025-05-13 08:53:14.123     def __make_connection(create: bool, dsn: str, utf8filename: bool, dpb: bytes,
2025-05-13 08:53:14.123                           sql_dialect: int, charset: str,
2025-05-13 08:53:14.123                           crypt_callback: iCryptKeyCallbackImpl) -> Connection:
2025-05-13 08:53:14.123         with a.get_api().master.get_dispatcher() as provider:
2025-05-13 08:53:14.123             if crypt_callback is not None:
2025-05-13 08:53:14.123                 provider.set_dbcrypt_callback(crypt_callback)
2025-05-13 08:53:14.123             if create:
2025-05-13 08:53:14.123                 att = provider.create_database(dsn, dpb, 'utf-8' if utf8filename else FS_ENCODING)
2025-05-13 08:53:14.123                 con = Connection(att, dsn, dpb, sql_dialect, charset)
2025-05-13 08:53:14.123             else:
2025-05-13 08:53:14.124                 con = None
2025-05-13 08:53:14.124                 for hook in get_callbacks(ConnectionHook.ATTACH_REQUEST, Connection):
2025-05-13 08:53:14.124                     try:
2025-05-13 08:53:14.124                         con = hook(dsn, dpb)
2025-05-13 08:53:14.124                     except Exception as e:
2025-05-13 08:53:14.124                         raise InterfaceError("Error in DATABASE_ATTACH_REQUEST hook.", *e.args) from e
2025-05-13 08:53:14.124                     if con is not None:
2025-05-13 08:53:14.124                         break
2025-05-13 08:53:14.124                 if con is None:
2025-05-13 08:53:14.124 >                   att = provider.attach_database(dsn, dpb, 'utf-8' if utf8filename else FS_ENCODING)
2025-05-13 08:53:14.124
2025-05-13 08:53:14.124 C:\Python3x\Lib\site-packages\firebird\driver\core.py:2074:
2025-05-13 08:53:14.124 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2025-05-13 08:53:14.124
2025-05-13 08:53:14.124 self = <firebird.driver.interfaces.iProvider object at [hex]>
2025-05-13 08:53:14.124 filename = 'localhost/33337:db_main_alias'
2025-05-13 08:53:14.124 dpb = b'\x01\x1c\x06SYSDBA\x1d\tmasterkey?\x04\x03\x00\x00\x00H\x04\x01\x00\x00\x00'
2025-05-13 08:53:14.124 encoding = 'utf-8'
2025-05-13 08:53:14.124
2025-05-13 08:53:14.124     def attach_database(self, filename: str, dpb: Optional[bytes] = None, encoding: str = 'ascii') -> iAttachment:
2025-05-13 08:53:14.125         "Replaces `isc_attach_database()`"
2025-05-13 08:53:14.125         result = self.vtable.attachDatabase(self, self.status, filename.encode(encoding),
2025-05-13 08:53:14.125                                             0 if dpb is None else len(dpb), dpb)
2025-05-13 08:53:14.125 >       self._check()
2025-05-13 08:53:14.125
2025-05-13 08:53:14.125 C:\Python3x\Lib\site-packages\firebird\driver\interfaces.py:1300:
2025-05-13 08:53:14.125 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
2025-05-13 08:53:14.125
2025-05-13 08:53:14.125 self = <firebird.driver.interfaces.iProvider object at [hex]>
2025-05-13 08:53:14.125
2025-05-13 08:53:14.125     def _check(self) -> None:
2025-05-13 08:53:14.125         state = self.status.get_state()
2025-05-13 08:53:14.125         if StateFlag.ERRORS in state:
2025-05-13 08:53:14.125 >           raise self.__report(DatabaseError, self.status.get_errors())
2025-05-13 08:53:14.125 E           firebird.driver.types.DatabaseError: Unable to complete network request to host "localhost".
2025-05-13 08:53:14.125 E           -Failed to establish a connection.
2025-05-13 08:53:14.125
2025-05-13 08:53:14.125 C:\Python3x\Lib\site-packages\firebird\driver\interfaces.py:113: DatabaseError
3 #text
act_db_main = <firebird.qa.plugin.Action pytest object at [hex]>
act_db_repl = <firebird.qa.plugin.Action pytest object at [hex]>
db_main_nbk0 = WindowsPath('H:/QA/temp/qa2024.tmp/fbqa/test_12239/tmp_db_main.nbk0')
db_main_nbk1 = WindowsPath('H:/QA/temp/qa2024.tmp/fbqa/test_12239/tmp_db_main.nbk1')
capsys = <_pytest.capture.CaptureFixture pytest object at [hex]>

    @pytest.mark.replication
    @pytest.mark.version('>=4.0.3')
    def test_1(act_db_main: Action,  act_db_repl: Action, db_main_nbk0: Path, db_main_nbk1: Path, capsys):
    
        out_prep, out_main, out_drop = '', '', ''
    
        rdb_backup_history_init = []
        rdb_backup_history_curr = []
        rdb_bkp_sttm = 'select rb.rdb$guid as db_guid from rdb$backup_history rb'
    
        # Obtain full path + filename for DB_MAIN and DB_REPL aliases.
        # NOTE: we must NOT use 'a.db.db_path' for ALIASED databases!
        # It will return '.' rather than full path+filename.
        # Use only con.info.name for that!
        #
        db_info = {}
        for a in (act_db_main, act_db_repl):
>           with a.db.connect(no_db_triggers = True) as con:

tests\functional\replication\test_disallow_rdb_backup_history_replication.py:358: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

database = 'db_main_alias'

    def connect(database: str, *, user: str=None, password: str=None, role: str=None,
                no_gc: bool=None, no_db_triggers: bool=None, dbkey_scope: DBKeyScope=None,
                crypt_callback: iCryptKeyCallbackImpl=None, charset: str=None,
                auth_plugin_list: str=None, session_time_zone: str=None) -> Connection:
        """Establishes a connection to the database.
    
        Arguments:
            database: DSN or Database configuration name.
            user: User name.
            password: User password.
            role: User role.
            no_gc: Do not perform garbage collection for this connection.
            no_db_triggers: Do not execute database triggers for this connection.
            dbkey_scope: DBKEY scope override for connection.
            crypt_callback: Callback that provides encryption key for the database.
            charset: Character set for connection.
            auth_plugin_list: List of authentication plugins override
            session_time_zone: Session time zone [Firebird 4]
    
        Hooks:
            Event `.ConnectionHook.ATTACH_REQUEST`: Executed after all parameters
            are preprocessed and before `Connection` is created. Hook
            must have signature::
    
                hook_func(dsn: str, dpb: bytes) -> Optional[Connection]
    
            Hook may return `Connection` instance or None.
            First instance returned by any hook will become the return value
            of this function and other hooks are not called.
    
            Event `.ConnectionHook.ATTACHED`: Executed before `Connection` instance is
            returned. Hook must have signature::
    
                hook_func(connection: Connection) -> None
    
            Any value returned by hook is ignored.
        """
        db_config = driver_config.get_database(database)
        if db_config is None:
            db_config = driver_config.db_defaults
        else:
            database = db_config.database.value
        if db_config.server.value is None:
            srv_config = driver_config.server_defaults
        else:
            srv_config = driver_config.get_server(db_config.server.value)
            if srv_config is None:
                raise ValueError(f"Configuration for server '{db_config.server.value}' not found")
        if user is None:
            user = db_config.user.value
            if user is None:
                user = srv_config.user.value
        if password is None:
            password = db_config.password.value
            if password is None:
                password = srv_config.password.value
        if role is None:
            role = db_config.role.value
        if charset is None:
            charset = db_config.charset.value
        if charset:
            charset = charset.upper()
        if auth_plugin_list is None:
            auth_plugin_list = db_config.auth_plugin_list.value
        if session_time_zone is None:
            session_time_zone = db_config.session_time_zone.value
        dsn = _connect_helper(db_config.dsn.value, srv_config.host.value, srv_config.port.value,
                              database, db_config.protocol.value)
        dpb = DPB(user=user, password=password, role=role, trusted_auth=db_config.trusted_auth.value,
                  sql_dialect=db_config.sql_dialect.value, timeout=db_config.timeout.value,
                  charset=charset, cache_size=db_config.cache_size.value,
                  no_linger=db_config.no_linger.value, utf8filename=db_config.utf8filename.value,
                  no_gc=no_gc, no_db_triggers=no_db_triggers, dbkey_scope=dbkey_scope,
                  dummy_packet_interval=db_config.dummy_packet_interval.value,
                  config=db_config.config.value, auth_plugin_list=auth_plugin_list,
                  session_time_zone=session_time_zone, set_bind=db_config.set_bind.value,
                  decfloat_round=db_config.decfloat_round.value,
                  decfloat_traps=db_config.decfloat_traps.value,
                  parallel_workers=db_config.parallel_workers.value)
>       return __make_connection(False, dsn, db_config.utf8filename.value, dpb.get_buffer(),
                                 db_config.sql_dialect.value, charset, crypt_callback)

C:\Python3x\Lib\site-packages\firebird\driver\core.py:2159: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

create = False, dsn = 'localhost/33337:db_main_alias', utf8filename = False
dpb = b'\x01\x1c\x06SYSDBA\x1d\tmasterkey?\x04\x03\x00\x00\x00H\x04\x01\x00\x00\x00'
sql_dialect = 3, charset = None, crypt_callback = None

    def __make_connection(create: bool, dsn: str, utf8filename: bool, dpb: bytes,
                          sql_dialect: int, charset: str,
                          crypt_callback: iCryptKeyCallbackImpl) -> Connection:
        with a.get_api().master.get_dispatcher() as provider:
            if crypt_callback is not None:
                provider.set_dbcrypt_callback(crypt_callback)
            if create:
                att = provider.create_database(dsn, dpb, 'utf-8' if utf8filename else FS_ENCODING)
                con = Connection(att, dsn, dpb, sql_dialect, charset)
            else:
                con = None
                for hook in get_callbacks(ConnectionHook.ATTACH_REQUEST, Connection):
                    try:
                        con = hook(dsn, dpb)
                    except Exception as e:
                        raise InterfaceError("Error in DATABASE_ATTACH_REQUEST hook.", *e.args) from e
                    if con is not None:
                        break
                if con is None:
>                   att = provider.attach_database(dsn, dpb, 'utf-8' if utf8filename else FS_ENCODING)

C:\Python3x\Lib\site-packages\firebird\driver\core.py:2074: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <firebird.driver.interfaces.iProvider pytest object at [hex]>
filename = 'localhost/33337:db_main_alias'
dpb = b'\x01\x1c\x06SYSDBA\x1d\tmasterkey?\x04\x03\x00\x00\x00H\x04\x01\x00\x00\x00'
encoding = 'utf-8'

    def attach_database(self, filename: str, dpb: Optional[bytes] = None, encoding: str = 'ascii') -> iAttachment:
        "Replaces `isc_attach_database()`"
        result = self.vtable.attachDatabase(self, self.status, filename.encode(encoding),
                                            0 if dpb is None else len(dpb), dpb)
>       self._check()

C:\Python3x\Lib\site-packages\firebird\driver\interfaces.py:1300: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <firebird.driver.interfaces.iProvider pytest object at [hex]>

    def _check(self) -> None:
        state = self.status.get_state()
        if StateFlag.ERRORS in state:
>           raise self.__report(DatabaseError, self.status.get_errors())
E           firebird.driver.types.DatabaseError: Unable to complete network request to host "localhost".
E           -Failed to establish a connection.

C:\Python3x\Lib\site-packages\firebird\driver\interfaces.py:113: DatabaseError
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 8314 6019 2025.06.29 11:15:45.437 2025.06.29 11:15:53.751 2025.06.29 10:12:05.800 2025.06.29 10:12:11.819
2 5.0.3.1657 2025.06.26 dcb8a P P 6471 9024 2025.06.27 11:16:25.652 2025.06.27 11:16:32.123 2025.06.27 10:12:46.362 2025.06.27 10:12:55.386
3 5.0.3.1657 2025.06.20 8b4d2 P P 9123 6602 2025.06.26 11:30:48.091 2025.06.26 11:30:57.214 2025.06.26 10:27:01.711 2025.06.26 10:27:08.313
4 5.0.3.1657 2025.06.19 4bd4c P P 6527 6653 2025.06.20 05:35:01.103 2025.06.20 05:35:07.630 2025.06.20 04:31:14.728 2025.06.20 04:31:21.381
5 5.0.3.1657 2025.06.11 dae6f P P 9084 9011 2025.06.19 11:06:28.448 2025.06.19 11:06:37.532 2025.06.19 10:02:38.771 2025.06.19 10:02:47.782
6 5.0.3.1657 2025.06.10 dbc92 P P 6263 12228 2025.06.11 08:52:43.203 2025.06.11 08:52:49.466 2025.06.11 07:48:35.629 2025.06.11 07:48:47.857
7 5.0.3.1656 2025.06.05 00512 P P 9224 9005 2025.06.10 10:07:59.030 2025.06.10 10:08:08.254 2025.06.10 09:03:41.121 2025.06.10 09:03:50.126
8 5.0.3.1656 2025.05.20 c4b11 P P 9216 9344 2025.06.03 09:54:43.821 2025.06.03 09:54:53.037 2025.06.03 08:51:40.177 2025.06.03 08:51:49.521
9 5.0.3.1652 2025.05.13 f51c6 P P 8955 8904 2025.05.21 06:35:43.010 2025.05.21 06:35:51.965 2025.05.21 05:32:56.117 2025.05.21 05:33:05.021
10 5.0.3.1651 2025.05.08 ee9d2 P F 5587 2205 2025.05.13 06:48:25.521 2025.05.13 06:48:31.108 2025.05.13 05:43:53.198 2025.05.13 05:43:55.403
11 5.0.3.1651 2025.05.04 3d914 P F 9094 2216 2025.05.09 04:37:26.059 2025.05.09 04:37:35.153 2025.05.09 03:32:51.187 2025.05.09 03:32:53.403
12 5.0.3.1651 2025.04.30 141ef P F 5714 2193 2025.05.02 04:45:01.246 2025.05.02 04:45:06.960 2025.05.02 03:40:44.001 2025.05.02 03:40:46.194
13 5.0.3.1650 2025.04.30 6253f P F 8774 2381 2025.05.01 04:44:04.032 2025.05.01 04:44:12.806 2025.05.01 03:39:40.361 2025.05.01 03:39:42.742
14 5.0.3.1650 2025.04.28 4cbff P F 5479 2396 2025.04.30 04:43:06.153 2025.04.30 04:43:11.632 2025.04.30 03:38:53.629 2025.04.30 03:38:56.025
15 5.0.3.1649 2025.04.21 5b2d0 P F 5602 2209 2025.04.26 10:17:09.743 2025.04.26 10:17:15.345 2025.04.26 09:11:55.855 2025.04.26 09:11:58.064
16 5.0.3.1648 2025.04.18 2f4c5 P P 9142 8710 2025.04.20 04:28:23.007 2025.04.20 04:28:32.149 2025.04.20 03:24:33.593 2025.04.20 03:24:42.303
17 5.0.3.1635 2025.04.03 f6bd1 P F 8882 2225 2025.04.18 06:56:04.705 2025.04.18 06:56:13.587 2025.04.18 05:51:05.244 2025.04.18 05:51:07.469
18 5.0.3.1635 2025.03.31 22ec6 P F 5532 2380 2025.04.03 10:01:53.420 2025.04.03 10:01:58.952 2025.04.03 08:56:29.480 2025.04.03 08:56:31.860
19 5.0.3.1633 2025.03.28 3123a P F 6466 2226 2025.03.31 10:00:19.754 2025.03.31 10:00:26.220 2025.03.31 08:54:58.719 2025.03.31 08:55:00.945
20 5.0.3.1633 2025.03.27 e0fb8 P F 9575 2217 2025.03.28 10:32:15.246 2025.03.28 10:32:24.821 2025.03.28 09:22:58.730 2025.03.28 09:23:00.947
21 5.0.3.1631 2025.03.25 bda65 P P 8632 8661 2025.03.27 10:12:48.630 2025.03.27 10:12:57.262 2025.03.27 09:05:10.682 2025.03.27 09:05:19.343
22 5.0.3.1631 2025.03.21 1925b P P 9358 8586 2025.03.25 06:46:51.152 2025.03.25 06:47:00.510 2025.03.25 05:39:08.278 2025.03.25 05:39:16.864
23 5.0.3.1629 2025.03.18 506d7 P P 9386 8762 2025.03.20 09:46:49.029 2025.03.20 09:46:58.415 2025.03.20 08:39:10.044 2025.03.20 08:39:18.806
24 5.0.3.1628 2025.03.14 16d05 P P 5599 8671 2025.03.18 09:40:58.022 2025.03.18 09:41:03.621 2025.03.18 08:34:42.206 2025.03.18 08:34:50.877
25 5.0.3.1627 2025.02.26 4e218 P P 9638 9329 2025.03.13 10:00:37.188 2025.03.13 10:00:46.826 2025.03.13 08:52:28.884 2025.03.13 08:52:38.213
26 5.0.3.1624 2025.02.25 dc3b2 P P 6615 9632 2025.02.26 15:32:46.419 2025.02.26 15:32:53.034 2025.02.26 14:25:18.639 2025.02.26 14:25:28.271
27 5.0.2.1615 2025.02.20 4a726 P F 9812 2406 2025.02.25 08:46:35.144 2025.02.25 08:46:44.956 2025.02.25 07:39:13.069 2025.02.25 07:39:15.475
28 5.0.2.1615 2025.02.14 9cb76 P P 5589 8473 2025.02.15 04:14:11.265 2025.02.15 04:14:16.854 2025.02.15 03:08:56.131 2025.02.15 03:09:04.604
29 5.0.2.1577 2025.02.07 f50a2 P P 8862 8857 2025.02.14 06:26:49.788 2025.02.14 06:26:58.650 2025.02.14 05:22:45.788 2025.02.14 05:22:54.645
30 5.0.2.1577 2024.12.24 3c80e P P 8465 8352 2025.02.06 09:40:20.889 2025.02.06 09:40:29.354 2025.02.06 08:36:21.570 2025.02.06 08:36:29.922
31 5.0.2.1576 2024.12.17 646b0 P P 8858 6259 2024.12.24 09:23:26.918 2024.12.24 09:23:35.776 2024.12.24 08:19:35.329 2024.12.24 08:19:41.588
32 5.0.2.1575 2024.12.09 9af52 P P 5600 8936 2024.12.16 09:20:13.873 2024.12.16 09:20:19.473 2024.12.16 08:16:25.942 2024.12.16 08:16:34.878
33 5.0.2.1575 2024.12.08 63d39 P P 9642 6702 2024.12.09 15:09:30.131 2024.12.09 15:09:39.773 2024.12.09 14:10:46.779 2024.12.09 14:10:53.481
34 5.0.2.1571 2024.12.08 8d11a P P 6393 6092 2024.12.09 06:23:10.136 2024.12.09 06:23:16.529 2024.12.09 05:22:25.689 2024.12.09 05:22:31.781
35 5.0.2.1567 2024.12.07 b01a2 P P 9476 8359 2024.12.08 02:01:42.828 2024.12.08 02:01:52.304 2024.12.08 00:59:13.562 2024.12.08 00:59:21.921
36 5.0.2.1567 2024.12.02 6ae74 P P 6905 8870 2024.12.04 09:05:01.265 2024.12.04 09:05:08.170 2024.12.04 08:06:16.590 2024.12.04 08:06:25.460
37 5.0.2.1567 2024.11.26 56e63 P P 5584 9629 2024.11.30 09:11:12.851 2024.11.30 09:11:18.435 2024.11.30 08:07:58.730 2024.11.30 08:08:08.359
38 5.0.2.1567 2024.11.21 96f61 P P 9663 8412 2024.11.27 09:07:55.191 2024.11.27 09:08:04.854 2024.11.27 08:05:21.885 2024.11.27 08:05:30.297
39 5.0.2.1567 2024.11.18 e1289 P F 6548 2197 2024.11.21 09:26:20.692 2024.11.21 09:26:27.240 2024.11.21 08:21:37.088 2024.11.21 08:21:39.285
40 5.0.2.1533 2024.10.23 0ec43 P P 9343 9060 2024.11.18 09:02:10.059 2024.11.18 09:02:19.402 2024.11.18 07:58:50.952 2024.11.18 07:59:00.012
41 5.0.2.1533 2024.10.22 8af7a P P 6583 9405 2024.10.23 09:09:24.537 2024.10.23 09:09:31.120 2024.10.23 08:06:42.357 2024.10.23 08:06:51.762
42 5.0.2.1532 2024.10.15 36dc0 P P 5568 8544 2024.10.22 15:11:34.126 2024.10.22 15:11:39.694 2024.10.22 14:08:51.475 2024.10.22 14:09:00.019
43 5.0.2.1518 2024.10.04 259ba P P 8693 8657 2024.10.15 09:05:31.883 2024.10.15 09:05:40.576 2024.10.15 08:03:07.382 2024.10.15 08:03:16.039
44 5.0.2.1518 2024.09.26 703cd P P 8693 6093 2024.10.03 09:10:24.441 2024.10.03 09:10:33.134 2024.10.03 08:07:39.653 2024.10.03 08:07:45.746
45 5.0.2.1489 2024.08.31 994a6 P F 9650 2412 2024.09.26 09:29:30.189 2024.09.26 09:29:39.839 2024.09.26 08:24:12.191 2024.09.26 08:24:14.603
46 5.0.2.1476 2024.08.09 843ea P F 5612 2391 2024.09.01 09:18:32.340 2024.09.01 09:18:37.952 2024.09.01 08:11:15.524 2024.09.01 08:11:17.915
47 5.0.1.1454 2024.08.08 30f9f P P 9292 9517 2024.08.09 08:59:26.316 2024.08.09 08:59:35.608 2024.08.09 07:56:40.584 2024.08.09 07:56:50.101
48 5.0.1.1453 2024.08.07 ebbc3 P P 9061 9086 2024.08.08 20:13:48.339 2024.08.08 20:13:57.400 2024.08.08 19:10:30.340 2024.08.08 19:10:39.426
49 5.0.1.1453 2024.08.06 1b9d0 P P 8870 9419 2024.08.07 08:27:33.422 2024.08.07 08:27:42.292 2024.08.07 07:29:53.438 2024.08.07 07:30:02.857
50 5.0.1.1453 2024.07.30 48044 P P 6611 8353 2024.08.03 08:25:31.532 2024.08.03 08:25:38.143 2024.08.03 07:27:46.297 2024.08.03 07:27:54.650
51 5.0.1.1453 2024.07.28 8d956 P P 12215 8971 2024.07.30 08:06:11.780 2024.07.30 08:06:23.995 2024.07.30 07:10:09.754 2024.07.30 07:10:18.725
52 5.0.1.1429 2024.07.19 8ee90 P P 9243 8869 2024.07.27 08:04:51.615 2024.07.27 08:05:00.858 2024.07.27 07:09:16.025 2024.07.27 07:09:24.894
53 5.0.1.1428 2024.07.15 00392 P P 8612 8510 2024.07.19 08:00:19.440 2024.07.19 08:00:28.052 2024.07.19 07:04:46.622 2024.07.19 07:04:55.132
54 5.0.1.1428 2024.06.30 67a31 P P 11657 8768 2024.07.15 08:11:47.252 2024.07.15 08:11:58.909 2024.07.15 07:15:03.559 2024.07.15 07:15:12.327
55 5.0.1.1415 2024.06.12 f8731 P P 5528 9610 2024.06.22 05:10:16.082 2024.06.22 05:10:21.610 2024.06.22 04:15:12.585 2024.06.22 04:15:22.195
56 5.0.1.1415 2024.06.11 31d74 P P 6345 5797 2024.06.11 23:40:11.497 2024.06.11 23:40:17.842 2024.06.11 22:48:27.837 2024.06.11 22:48:33.634
57 5.0.1.1401 2024.06.05 f9b76 P P 6470 5469 2024.06.11 04:31:05.442 2024.06.11 04:31:11.912 2024.06.11 03:39:10.952 2024.06.11 03:39:16.421
58 5.0.1.1398 2024.05.10 5e3ce P P 6329 6516 2024.05.25 05:25:49.382 2024.05.25 05:25:55.711 2024.05.25 04:34:18.425 2024.05.25 04:34:24.941
59 5.0.1.1397 2024.05.09 ee2ef P P 6486 6532 2024.05.10 05:21:46.462 2024.05.10 05:21:52.948 2024.05.10 04:30:48.110 2024.05.10 04:30:54.642
60 5.0.1.1392 2024.04.29 7dbc2 P P 6407 5578 2024.05.09 17:11:30.052 2024.05.09 17:11:36.459 2024.05.09 16:20:20.096 2024.05.09 16:20:25.674
61 5.0.1.1386 2024.04.25 c0328 P P 8454 5579 2024.04.29 05:20:45.967 2024.04.29 05:20:54.421 2024.04.29 04:29:52.636 2024.04.29 04:29:58.215
62 5.0.1.1386 2024.04.20 80571 P P 9338 5610 2024.04.25 05:23:18.188 2024.04.25 05:23:27.526 2024.04.25 04:31:40.557 2024.04.25 04:31:46.167
63 5.0.1.1378 2024.04.07 5292b P F 6329 2172 2024.04.20 05:43:07.968 2024.04.20 05:43:14.297 2024.04.20 04:47:37.387 2024.04.20 04:47:39.559
64 5.0.1.1346 2024.03.16 fe320 P P 6016 6626 2024.04.07 03:41:32.386 2024.04.07 03:41:38.402 2024.04.07 02:54:58.606 2024.04.07 02:55:05.232
65 5.0.1.1346 2024.03.02 da408 P P 5937 6625 2024.03.25 22:29:09.887 2024.03.25 22:29:15.824 2024.03.25 21:42:42.412 2024.03.25 21:42:49.037
66 5.0.1.1340 2024.02.17 08a71 P P 5937 6609 2024.03.25 23:58:53.257 2024.03.25 23:58:59.194 2024.03.25 23:12:26.609 2024.03.25 23:12:33.218
67 5.0.1.1325 2024.02.06 c98fb P F 6203 2171 2024.03.26 02:30:20.535 2024.03.26 02:30:26.738 2024.03.26 01:40:27.891 2024.03.26 01:40:30.062
68 5.0.1.1325 2024.02.02 1d438 P F 5312 2311 2024.03.26 07:47:45.347 2024.03.26 07:47:50.659 2024.03.26 06:56:58.549 2024.03.26 06:57:00.860
69 5.0.1.1325 2024.01.26 cffb6 P F 5984 2171 2024.03.26 10:13:31.116 2024.03.26 10:13:37.100 2024.03.26 09:23:39.313 2024.03.26 09:23:41.484
70 5.0.1.1325 2024.01.26 d3810 P F 5906 2296 2024.03.26 12:05:12.928 2024.03.26 12:05:18.834 2024.03.26 11:15:28.666 2024.03.26 11:15:30.962
71 5.0.1.1318 2024.01.21 a7ca3 P P 6203 6499 2024.03.26 13:34:14.298 2024.03.26 13:34:20.501 2024.03.26 12:47:52.772 2024.03.26 12:47:59.271
72 5.0.1.1318 2024.01.21 d429d P P 6890 6500 2024.03.26 15:15:50.214 2024.03.26 15:15:57.104 2024.03.26 14:29:32.398 2024.03.26 14:29:38.898
73 5.0.1.1318 2024.01.21 f1ab5 P P 6125 6453 2024.03.26 17:31:50.371 2024.03.26 17:31:56.496 2024.03.26 16:45:28.515 2024.03.26 16:45:34.968
74 5.0.1.1318 2024.01.20 46722 P P 6265 6593 2024.03.26 18:58:47.716 2024.03.26 18:58:53.981 2024.03.26 18:12:33.625 2024.03.26 18:12:40.218

Elapsed time, ms. Chart for last 74 runs:

Last commits information (all timestamps in UTC):