This is an automated email from the ASF dual-hosted git repository.

caiconghui pushed a commit to branch orc-2.1
in repository https://gitbox.apache.org/repos/asf/doris-thirdparty.git


The following commit(s) were added to refs/heads/orc-2.1 by this push:
     new 01b80dade93 [fix](cherry-pick) fix the decompression unit test fail
01b80dade93 is described below

commit 01b80dade93e4ea425fb8bebc56d993cc42c1af0
Author: caokaihua1 <[email protected]>
AuthorDate: Thu Jun 26 16:14:52 2025 +0800

    [fix](cherry-pick) fix the decompression unit test fail
---
 c++/test/TestDecompression.cc | 30 ++++++++++++++++++++++++------
 1 file changed, 24 insertions(+), 6 deletions(-)

diff --git a/c++/test/TestDecompression.cc b/c++/test/TestDecompression.cc
index c90801d72c5..91ba7cf5913 100644
--- a/c++/test/TestDecompression.cc
+++ b/c++/test/TestDecompression.cc
@@ -456,12 +456,19 @@ namespace orc {
   }
 
   TEST(Zlib, testCreateZlib) {
-    const unsigned char buffer[] = {0x0b, 0x0, 0x0, 0x0, 0x1, 0x2, 0x3, 0x4};
+    // ORC format: 3-byte header + deflate compressed data
+    // Header: 0x0e = 14 in binary, bit 0 = 0 (compressed), length = 14 >> 1 = 
7 (compressed size)
+    // Deflate compressed data for {0, 1, 2, 3, 4}: {0x63, 0x60, 0x64, 0x62, 
0x66, 0x01, 0x00}
+    const unsigned char buffer[] = {0x0e, 0x0, 0x0, 0x63, 0x60, 0x64, 0x62, 
0x66, 0x01, 0x00};
     std::unique_ptr<SeekableInputStream> result =
         createDecompressor(CompressionKind_ZLIB,
                            std::make_unique<SeekableArrayInputStream>(buffer, 
ARRAY_SIZE(buffer)),
                            32768, *getDefaultPool(), 
getDefaultReaderMetrics());
-    EXPECT_EQ("zlib(SeekableArrayInputStream 0 of 8)", result->getName());
+#if defined(__x86_64__) || defined(_M_X64) || defined(i386) || 
defined(__i386__) || defined(__i386) || defined(_M_IX86)
+    EXPECT_EQ("ZlibDecompressionStreamByLibDeflate(SeekableArrayInputStream 0 
of 10)", result->getName());
+#else
+    EXPECT_EQ("zlib(SeekableArrayInputStream 0 of 10)", result->getName());
+#endif
     const void* ptr;
     int length;
     ASSERT_EQ(true, result->Next(&ptr, &length));
@@ -469,7 +476,11 @@ namespace orc {
     for (unsigned int i = 0; i < 5; ++i) {
       EXPECT_EQ(static_cast<char>(i), static_cast<const char*>(ptr)[i]);
     }
-    EXPECT_EQ("zlib(SeekableArrayInputStream 8 of 8)", result->getName());
+#if defined(__x86_64__) || defined(_M_X64) || defined(i386) || 
defined(__i386__) || defined(__i386) || defined(_M_IX86)
+    EXPECT_EQ("ZlibDecompressionStreamByLibDeflate(SeekableArrayInputStream 10 
of 10)", result->getName());
+#else
+    EXPECT_EQ("zlib(SeekableArrayInputStream 10 of 10)", result->getName());
+#endif
     EXPECT_EQ(5, result->ByteCount());
     result->BackUp(3);
     EXPECT_EQ(2, result->ByteCount());
@@ -481,13 +492,20 @@ namespace orc {
   }
 
   TEST(Zlib, testLiteralBlocks) {
-    const unsigned char buffer[] = {0x19, 0x0, 0x0, 0x0, 0x1, 0x2, 0x3, 0x4, 
0x5, 0x6, 0x7, 0x8,
-                                    0x9,  0xa, 0xb, 0xb, 0x0, 0x0, 0xc, 0xd, 
0xe, 0xf, 0x10};
+    // ORC format: 3-byte header + deflate compressed data
+    // Header: 0x26 = 38 in binary, bit 0 = 0 (compressed), length = 38 >> 1 = 
19 (compressed size)
+    // Deflate compressed data for {0, 1, 2, ..., 16}: 19 bytes
+    const unsigned char buffer[] = {0x26, 0x0, 0x0, 0x63, 0x60, 0x64, 0x62, 
0x66, 0x61, 0x65, 0x63,
+                                    0xe7, 0xe0, 0xe4, 0xe2, 0xe6, 0xe1, 0xe5, 
0xe3, 0x17, 0x00, 0x00};
     std::unique_ptr<SeekableInputStream> result = createDecompressor(
         CompressionKind_ZLIB,
         std::make_unique<SeekableArrayInputStream>(buffer, ARRAY_SIZE(buffer), 
5), 5,
         *getDefaultPool(), getDefaultReaderMetrics());
-    EXPECT_EQ("zlib(SeekableArrayInputStream 0 of 23)", result->getName());
+#if defined(__x86_64__) || defined(_M_X64) || defined(i386) || 
defined(__i386__) || defined(__i386) || defined(_M_IX86)
+    EXPECT_EQ("ZlibDecompressionStreamByLibDeflate(SeekableArrayInputStream 0 
of 22)", result->getName());
+#else
+    EXPECT_EQ("zlib(SeekableArrayInputStream 0 of 22)", result->getName());
+#endif
     const void* ptr;
     int length;
     ASSERT_EQ(true, result->Next(&ptr, &length));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to