This is an automated email from the ASF dual-hosted git repository.
gavinchou pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 1062a765ec9 [fix](cloud) dup FDCache reset before FileCache dtor
causing crash (#48915)
1062a765ec9 is described below
commit 1062a765ec9796d0f7a335222a28c9b36a26471e
Author: zhengyu <[email protected]>
AuthorDate: Thu Mar 13 13:00:30 2025 +0800
[fix](cloud) dup FDCache reset before FileCache dtor causing crash (#48915)
There is another FDCache reset near line 788, and this previous dup one
deconstruct its mutex before BlockFileCache destory in FileCacheFactory
thus causing BE crash on following stack:
SIGSEGV address not mapped to object (@0x68) received by PID 222738 (TID
222917 OR 0x7505dc800640) from PID 104; stack trace: *** 0#
doris::signal::(anonymous namespace)::FailureSignalHandler(int,
siginfo_t*, void*) at
/mnt/disk3/pipeline/repo/selectdb-core_selectdb-second-branch/be/src/common/signal_handler.h:421
1# PosixSignals::chained_handler(int, siginfo*, void*) [clone .part.0]
in /home/qatest/jdk/java-17-openjdk-amd64/lib/server/libjvm.so 2#
JVM_handle_linux_signal in
/home/qatest/jdk/java-17-openjdk-amd64/lib/server/libjvm.so 3#
0x0000750666842520 in /lib/x86_64-linux-gnu/libc.so.6 4#
__pthread_rwlock_wrlock at ./nptl/pthread_rwlock_wrlock.c:26 5#
doris::io::FDCache::remove_file_reader(std::pair<doris::io::UInt128Wrapper,
unsigned long> const&) at
/mnt/disk3/pipeline/repo/selectdb-core_selectdb-second-branch/be/src/io/cache/fs_file_cache_storag
e.cpp:86
6# doris::io::FSFileCacheStorage::remove(doris::io::FileCacheKey const&)
at
/mnt/disk3/pipeline/repo/selectdb-core_selectdb-second-branch/be/src/io/cache/fs_file_cache_storage.cpp:203
---
be/src/runtime/exec_env_init.cpp | 1 -
1 file changed, 1 deletion(-)
diff --git a/be/src/runtime/exec_env_init.cpp b/be/src/runtime/exec_env_init.cpp
index 44aee2fde91..55f05a69ae2 100644
--- a/be/src/runtime/exec_env_init.cpp
+++ b/be/src/runtime/exec_env_init.cpp
@@ -720,7 +720,6 @@ void ExecEnv::destroy() {
_memtable_memory_limiter.reset();
_delta_writer_v2_pool.reset();
_load_stream_map_pool.reset();
- _file_cache_open_fd_cache.reset();
SAFE_STOP(_write_cooldown_meta_executors);
// StorageEngine must be destoried before _cache_manager destory
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]