-
Notifications
You must be signed in to change notification settings - Fork 8.3k
Logical error: 'false' with Parquet reader v3 #87078
Copy link
Copy link
Closed
Labels
bugConfirmed user-visible misbehaviour in official releaseConfirmed user-visible misbehaviour in official releasecomp-datalakeData lake table formats (Iceberg/Delta/Hudi) integration.Data lake table formats (Iceberg/Delta/Hudi) integration.fuzzProblem found by one of the fuzzersProblem found by one of the fuzzers
Description
Describe the bug
Not sure if the issue is related to Iceberg, but it only happens with the new Parquet reader
How to reproduce
Use spark.py to create the Iceberg data with Spark, then run:
SET input_format_parquet_use_native_reader_v3 = 1;
CREATE TABLE t0 ENGINE = IcebergLocal(local, path = '/var/lib/clickhouse/user_files/t0/test/t0', format = 'Parquet');
INSERT INTO TABLE t0 (c0) VALUES (TRUE);
SELECT t0.c0 FROM t0 WHERE c0 = 3 AND c0 >= 5;Error message and/or stacktrace
Stack trace:
<Fatal> : Logical error: 'false'.
<Fatal> : Stack trace (when copying this message, always include the lines below):
0. src/Common/StackTrace.cpp:395: StackTrace::StackTrace() @ 0x0000000014653f24
1. src/Common/Exception.cpp:56: DB::abortOnFailedAssertion(String const&) @ 0x00000000145ae055
2. src/Processors/Formats/Impl/Parquet/Decoding.cpp:1101: DB::Parquet::IntConverter::convertField(std::span<char const, 18446744073709551615ul>, bool, DB::Field&) const @ 0x000000001fc49870
3. src/Processors/Formats/Impl/Parquet/Reader.cpp:251: DB::Parquet::Reader::getHyperrectangleForRowGroup(parquet::format::RowGroup const*, std::vector<DB::Range, std::allocator<DB::Range>>&) const @ 0x000000001fc5508f
4. src/Processors/Formats/Impl/Parquet/Reader.cpp:319: DB::Parquet::Reader::prefilterAndInitRowGroups() @ 0x000000001fc55dd9
5. src/Processors/Formats/Impl/Parquet/ReadManager.cpp:45: DB::Parquet::ReadManager::init(std::shared_ptr<DB::FormatParserSharedResources>) @ 0x000000001fc403a5
6. src/Processors/Formats/Impl/ParquetV3BlockInputFormat.cpp:84: DB::ParquetV3BlockInputFormat::initializeIfNeeded() @ 0x000000001f6d64df
7. src/Processors/Formats/Impl/ParquetV3BlockInputFormat.cpp:107: DB::ParquetV3BlockInputFormat::read() @ 0x000000001f6d661b
8. src/Processors/Formats/IInputFormat.cpp:18: DB::IInputFormat::generate() @ 0x000000001f523fd6
9. src/Processors/ISource.cpp:144: DB::ISource::tryGenerate() @ 0x000000001f4f8d65
10. src/Processors/ISource.cpp:110: DB::ISource::work() @ 0x000000001f4f8a42
11. src/Processors/Executors/ExecutionThreadContext.cpp:53: DB::ExecutionThreadContext::executeTask() @ 0x000000001f515a90
12. src/Processors/Executors/PipelineExecutor.cpp:350: DB::PipelineExecutor::executeStepImpl(unsigned long, DB::IAcquiredSlot*, std::atomic<bool>*) @ 0x000000001f5083c5
13. src/Processors/Executors/PipelineExecutor.cpp:179: DB::PipelineExecutor::executeStep(std::atomic<bool>*) @ 0x000000001f507b0e
14. src/Processors/Executors/PullingPipelineExecutor.cpp:59: DB::PullingPipelineExecutor::pull(DB::Chunk&) @ 0x000000001f51eb34
15. src/Storages/ObjectStorage/StorageObjectStorageSource.cpp:286: DB::StorageObjectStorageSource::generate() @ 0x0000000019b4def7
16. src/Processors/ISource.cpp:144: DB::ISource::tryGenerate() @ 0x000000001f4f8d65
17. src/Processors/ISource.cpp:110: DB::ISource::work() @ 0x000000001f4f8a42
18. src/Processors/Executors/ExecutionThreadContext.cpp:53: DB::ExecutionThreadContext::executeTask() @ 0x000000001f515a90
19. src/Processors/Executors/PipelineExecutor.cpp:350: DB::PipelineExecutor::executeStepImpl(unsigned long, DB::IAcquiredSlot*, std::atomic<bool>*) @ 0x000000001f5083c5
20. src/Processors/Executors/PipelineExecutor.cpp:278: DB::PipelineExecutor::executeSingleThread(unsigned long, DB::IAcquiredSlot*) @ 0x000000001f508929
21. src/Processors/Executors/PipelineExecutor.cpp:561: void std::__function::__policy_invoker<void ()>::__call_impl[abi:se190107]<std::__function::__default_alloc_func<DB::PipelineExecutor::spawnThreads(std::shared_ptr<DB::IAcquiredSlot>)::$_0, void ()>>(std::__function::__policy_storage const*) @ 0x000000001f509343
22. contrib/llvm-project/libcxx/include/__functional/function.h:716: ? @ 0x00000000146f5c53
23. contrib/llvm-project/libcxx/include/__type_traits/invoke.h:117: ThreadFromGlobalPoolImpl<false, true>::ThreadFromGlobalPoolImpl<void (ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool::*)(), ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool*>(void (ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool::*&&)(), ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool*&&)::'lambda'()::operator()() @ 0x00000000146fc326
24. contrib/llvm-project/libcxx/include/__functional/function.h:716: ? @ 0x00000000146f30e6
25. contrib/llvm-project/libcxx/include/__type_traits/invoke.h:117: void* std::__thread_proxy[abi:se190107]<std::tuple<std::unique_ptr<std::__thread_struct, std::default_delete<std::__thread_struct>>, void (ThreadPoolImpl<std::thread>::ThreadFromThreadPool::*)(), ThreadPoolImpl<std::thread>::ThreadFromThreadPool*>>(void*) @ 0x00000000146f9b00
26. start_thread @ 0x00000000000a27f1
27. __clone3 @ 0x0000000000133c9c
Reactions are currently unavailable
Metadata
Metadata
Labels
bugConfirmed user-visible misbehaviour in official releaseConfirmed user-visible misbehaviour in official releasecomp-datalakeData lake table formats (Iceberg/Delta/Hudi) integration.Data lake table formats (Iceberg/Delta/Hudi) integration.fuzzProblem found by one of the fuzzersProblem found by one of the fuzzers