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   
  - Parameter: param0, value is in HEX form.
  + Parameter: param0, value: "glbK(#x04#x12)
  + " - not in HEX form.
  - Parameter: param1, value is in HEX form.
  + Parameter: param1, value: "~#x18N@#x06#x16#x13#x06^0" - not in HEX form.
  - Parameter: param2, value is in HEX form.
  + Parameter: param2, value: "#x07v+B#x03#x12B" - not in HEX form.
  - Parameter: param3, value is in HEX form.
  + Parameter: param3, value: "i#x1F;M*qFm" - not in HEX form.

LOG DETAILS:

2025-02-14 12:51:13.824
2025-02-14 12:51:13.833 act = <firebird.qa.plugin.Action object at [hex]>
2025-02-14 12:51:13.845 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-02-14 12:51:13.854
2025-02-14 12:51:13.862 @pytest.mark.trace
2025-02-14 12:51:13.870 @pytest.mark.version('>=5.0.2')
2025-02-14 12:51:13.877 def test_1(act: Action, capsys):
2025-02-14 12:51:13.884
2025-02-14 12:51:13.889 with act.trace(db_events = trace_events_lst):
2025-02-14 12:51:13.895 act.reset()
2025-02-14 12:51:13.901 act.isql(switches = ['-q'], input = test_sql, combine_output = True)
2025-02-14 12:51:13.907
2025-02-14 12:51:13.914 # Process trace
2025-02-14 12:51:13.927 # BEFORE FIX: param0 = varchar(16), "<binary data here>"
2025-02-14 12:51:13.939 # AFTER FIX:  param0 = varbinary(16), "D0EC952EC11A4C209011CF95C1712D2F"
2025-02-14 12:51:13.946
2025-02-14 12:51:13.953 param_name_pattern = re.compile( r'\s?param\d+\s?=\s?(var)?(binary|char)\(\d+\)', re.IGNORECASE )
2025-02-14 12:51:13.961 # param_hexvalue_ptn = re.compile('')
2025-02-14 12:51:13.967
2025-02-14 12:51:13.975 for line in act.trace_log:
2025-02-14 12:51:13.985 if param_name_pattern.search(line.lower()):
2025-02-14 12:51:13.992 param_name = line.split("=")[0].strip()
2025-02-14 12:51:13.999 param_val = line.split('"')[1]
2025-02-14 12:51:14.008 try:
2025-02-14 12:51:14.017 _ = int(param_val, 16)
2025-02-14 12:51:14.030 print(f'Parameter: {param_name}, value is in HEX form.')
2025-02-14 12:51:14.040 except ValueError as e:
2025-02-14 12:51:14.050 print(f'Parameter: {param_name}, value: "{param_val}" - not in HEX form.')
2025-02-14 12:51:14.059
2025-02-14 12:51:14.068 act.expected_stdout = """
2025-02-14 12:51:14.075 Parameter: param0, value is in HEX form.
2025-02-14 12:51:14.081 Parameter: param1, value is in HEX form.
2025-02-14 12:51:14.088 Parameter: param2, value is in HEX form.
2025-02-14 12:51:14.094 Parameter: param3, value is in HEX form.
2025-02-14 12:51:14.102 """
2025-02-14 12:51:14.113 act.stdout = capsys.readouterr().out
2025-02-14 12:51:14.120 >       assert act.clean_stdout == act.clean_expected_stdout
2025-02-14 12:51:14.127 E       assert
2025-02-14 12:51:14.135 E         - Parameter: param0, value is in HEX form.
2025-02-14 12:51:14.147 E         + Parameter: param0, value: "glbK()
2025-02-14 12:51:14.156 E         + " - not in HEX form.
2025-02-14 12:51:14.163 E         - Parameter: param1, value is in HEX form.
2025-02-14 12:51:14.175 E         + Parameter: param1, value: "~N@^0" - not in HEX form.
2025-02-14 12:51:14.196 E         - Parameter: param2, value is in HEX form.
2025-02-14 12:51:14.216 E         + Parameter: param2, value: "v+BB" - not in HEX form.
2025-02-14 12:51:14.230 E         - Parameter: param3, value is in HEX form.
2025-02-14 12:51:14.252 E         + Parameter: param3, value: "i;M*qFm" - not in HEX form.
2025-02-14 12:51:14.276
2025-02-14 12:51:14.285 tests/bugs/gh_8356_test.py:88: AssertionError
2025-02-14 12:51:14.293 ---------------------------- Captured stdout setup -----------------------------
2025-02-14 12:51:14.300 Creating db: localhost:/var/tmp/qa_2024/test_11679/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.trace
    @pytest.mark.version('>=5.0.2')
    def test_1(act: Action, capsys):
    
        with act.trace(db_events = trace_events_lst):
            act.reset()
            act.isql(switches = ['-q'], input = test_sql, combine_output = True)
    
        # Process trace
        # BEFORE FIX: param0 = varchar(16), "<binary data here>"
        # AFTER FIX:  param0 = varbinary(16), "D0EC952EC11A4C209011CF95C1712D2F"
    
        param_name_pattern = re.compile( r'\s?param\d+\s?=\s?(var)?(binary|char)\(\d+\)', re.IGNORECASE )
        # param_hexvalue_ptn = re.compile('')
    
        for line in act.trace_log:
            if param_name_pattern.search(line.lower()):
                param_name = line.split("=")[0].strip()
                param_val = line.split('"')[1]
                try:
                   _ = int(param_val, 16)
                   print(f'Parameter: {param_name}, value is in HEX form.')
                except ValueError as e:
                   print(f'Parameter: {param_name}, value: "{param_val}" - not in HEX form.')
    
        act.expected_stdout = """
            Parameter: param0, value is in HEX form.
            Parameter: param1, value is in HEX form.
            Parameter: param2, value is in HEX form.
            Parameter: param3, value is in HEX form.
        """
        act.stdout = capsys.readouterr().out
>       assert act.clean_stdout == act.clean_expected_stdout
E       assert   
E         - Parameter: param0, value is in HEX form.
E         + Parameter: param0, value: "glbK(#x04#x12)
E         + " - not in HEX form.
E         - Parameter: param1, value is in HEX form.
E         + Parameter: param1, value: "~#x18N@#x06#x16#x13#x06^0" - not in HEX form.
E         - Parameter: param2, value is in HEX form.
E         + Parameter: param2, value: "#x07v+B#x03#x12B" - not in HEX form.
E         - Parameter: param3, value is in HEX form.
E         + Parameter: param3, value: "i#x1F;M*qFm" - not in HEX form.

tests/bugs/gh_8356_test.py:88: 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 3054 2632 2025.06.30 12:49:23.926 2025.06.30 12:49:26.980 2025.06.30 11:28:21.018 2025.06.30 11:28:23.650
2 5.0.3.1657 2025.06.19 4bd4c P P 3007 2664 2025.06.27 12:21:34.595 2025.06.27 12:21:37.602 2025.06.27 11:02:24.182 2025.06.27 11:02:26.846
3 5.0.3.1657 2025.06.11 dae6f P P 3066 2664 2025.06.17 07:26:40.060 2025.06.17 07:26:43.126 2025.06.17 06:06:16.656 2025.06.17 06:06:19.320
4 5.0.3.1657 2025.06.10 dbc92 P P 3058 2789 2025.06.11 12:17:10.901 2025.06.11 12:17:13.959 2025.06.11 10:48:05.232 2025.06.11 10:48:08.021
5 5.0.3.1656 2025.05.20 c4b11 P P 3103 2660 2025.06.10 12:10:57.309 2025.06.10 12:11:00.412 2025.06.10 10:46:32.210 2025.06.10 10:46:34.870
6 5.0.3.1652 2025.05.13 f51c6 P P 3076 2779 2025.05.20 05:15:14.106 2025.05.20 05:15:17.182 2025.05.20 03:38:52.008 2025.05.20 03:38:54.787
7 5.0.3.1651 2025.04.30 141ef P P 3197 2740 2025.05.13 12:13:16.097 2025.05.13 12:13:19.294 2025.05.13 10:35:50.588 2025.05.13 10:35:53.328
8 5.0.3.1650 2025.04.28 4cbff P P 3188 2748 2025.05.01 11:47:03.043 2025.05.01 11:47:06.231 2025.05.01 10:10:36.030 2025.05.01 10:10:38.778
9 5.0.3.1649 2025.04.21 5b2d0 P P 3158 2711 2025.04.28 05:44:49.211 2025.04.28 05:44:52.369 2025.04.28 04:10:15.568 2025.04.28 04:10:18.279
10 5.0.3.1648 2025.04.18 2f4c5 P P 3162 2629 2025.04.20 05:36:34.512 2025.04.20 05:36:37.674 2025.04.20 04:04:36.539 2025.04.20 04:04:39.168
11 5.0.3.1635 2025.03.31 22ec6 P P 3196 2691 2025.04.18 11:59:38.870 2025.04.18 11:59:42.066 2025.04.18 10:23:47.355 2025.04.18 10:23:50.046
12 5.0.3.1633 2025.03.28 3123a P P 3101 2696 2025.03.31 10:33:26.709 2025.03.31 10:33:29.810 2025.03.31 09:03:54.257 2025.03.31 09:03:56.953
13 5.0.3.1633 2025.03.27 e0fb8 P P 3136 2775 2025.03.28 11:08:48.265 2025.03.28 11:08:51.401 2025.03.28 09:36:30.955 2025.03.28 09:36:33.730
14 5.0.3.1631 2025.03.21 1925b P P 3120 2726 2025.03.27 10:56:34.166 2025.03.27 10:56:37.286 2025.03.27 09:25:07.240 2025.03.27 09:25:09.966
15 5.0.3.1628 2025.03.14 16d05 P P 828 427 2025.03.17 08:29:40.810 2025.03.17 08:29:41.638 2025.03.17 06:49:21.481 2025.03.17 06:49:21.908
16 5.0.3.1627 2025.02.26 4e218 P P 883 468 2025.03.14 11:44:03.242 2025.03.14 11:44:04.125 2025.03.14 10:02:40.452 2025.03.14 10:02:40.920
17 5.0.3.1624 2025.02.25 dc3b2 P P 791 438 2025.02.26 10:34:35.802 2025.02.26 10:34:36.593 2025.02.26 08:58:44.175 2025.02.26 08:58:44.613
18 5.0.2.1615 2025.02.20 4a726 P P 747 400 2025.02.25 11:01:57.669 2025.02.25 11:01:58.416 2025.02.25 09:24:18.181 2025.02.25 09:24:18.581
19 5.0.2.1615 2025.02.14 9cb76 P P 807 424 2025.02.20 07:51:10.935 2025.02.20 07:51:11.742 2025.02.20 06:17:14.302 2025.02.20 06:17:14.726
20 5.0.2.1577 2024.12.24 3c80e F F 898 432 2025.02.14 11:05:06.105 2025.02.14 11:05:07.003 2025.02.14 09:30:47.772 2025.02.14 09:30:48.204

Elapsed time, ms. Chart for last 20 runs:

Last commits information (all timestamps in UTC):