]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-136394: Fix race condition in test_zstd (GH-136432)
authorRogdham <3994389+Rogdham@users.noreply.github.com>
Thu, 10 Jul 2025 12:47:27 +0000 (14:47 +0200)
committerGitHub <noreply@github.com>
Thu, 10 Jul 2025 12:47:27 +0000 (08:47 -0400)
Lib/test/test_zstd.py

index 90b2adc9665480e3983c16576022e09b22abaee5..6358cc78739cd9deb409c8ca9d464b1a309cf56a 100644 (file)
@@ -2673,8 +2673,12 @@ class FreeThreadingMethodTests(unittest.TestCase):
         input = b'a'* (16*_1K)
         num_threads = 8
 
+        # gh-136394: the first output of .compress() includes the frame header
+        # we run the first .compress() call outside of the threaded portion
+        # to make the test order-independent
+
         comp = ZstdCompressor()
-        parts = []
+        parts = [comp.compress(input, ZstdCompressor.FLUSH_BLOCK)]
         for _ in range(num_threads):
             res = comp.compress(input, ZstdCompressor.FLUSH_BLOCK)
             if res:
@@ -2683,7 +2687,7 @@ class FreeThreadingMethodTests(unittest.TestCase):
         expected = b''.join(parts) + rest1
 
         comp = ZstdCompressor()
-        output = []
+        output = [comp.compress(input, ZstdCompressor.FLUSH_BLOCK)]
         def run_method(method, input_data, output_data):
             res = method(input_data, ZstdCompressor.FLUSH_BLOCK)
             if res: