rocksdb/utilities
Peter Dillinger e466173d5c Print stack traces on frozen tests in CI (#10828)
Summary:
Instead of existing calls to ps from gnu_parallel, call a new wrapper that does ps, looks for unit test like processes, and uses pstack or gdb to print thread stack traces. Also, using `ps -wwf` instead of `ps -wf` ensures output is not cut off.

For security, CircleCI runs with security restrictions on ptrace (/proc/sys/kernel/yama/ptrace_scope = 1), and this change adds a work-around to `InstallStackTraceHandler()` (only used by testing tools) to allow any process from the same user to debug it. (I've also touched >100 files to ensure all the unit tests call this function.)

Pull Request resolved: https://github.com/facebook/rocksdb/pull/10828

Test Plan: local manual + temporary infinite loop in a unit test to observe in CircleCI

Reviewed By: hx235

Differential Revision: D40447634

Pulled By: pdillinger

fbshipit-source-id: 718a4c4a5b54fa0f9af2d01a446162b45e5e84e1
2022-10-18 00:35:35 -07:00
..
agg_merge Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
backup Allow manifest fix-up without requiring prior state (#10796) 2022-10-10 17:59:17 -07:00
blob_db Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
cassandra Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
checkpoint Fix race condition with WAL tracking and FlushWAL(true /* sync */) (#10185) 2022-06-17 16:45:28 -07:00
compaction_filters Make MergeOperator+CompactionFilter/Factory into Customizable Classes (#8481) 2021-08-06 08:27:25 -07:00
convenience Add a SystemClock class to capture the time functions of an Env (#7858) 2021-01-25 22:09:11 -08:00
leveldb_options Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433) 2020-02-20 12:09:57 -08:00
memory Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
merge_operators Remove using namespace (#9369) 2022-01-12 09:31:12 -08:00
option_change_migration Option migration tool to break down files for FIFO compaction (#10600) 2022-08-31 12:08:23 -07:00
options Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
persistent_cache Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
simulator_cache Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
table_properties_collectors Remove own ToString() (#9955) 2022-05-06 13:03:58 -07:00
trace Add rate limiter priority to ReadOptions (#9424) 2022-02-16 23:18:14 -08:00
transactions Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
ttl Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
write_batch_with_index Remove timestamp before inserting to WBWI's index (#10742) 2022-09-27 09:04:57 -07:00
cache_dump_load.cc Introduce a mechanism to dump out blocks from block cache and re-insert to secondary cache (#8912) 2021-10-07 11:42:31 -07:00
cache_dump_load_impl.cc Refactor to avoid confusing "raw block" (#10408) 2022-09-22 11:25:32 -07:00
cache_dump_load_impl.h Refactor to avoid confusing "raw block" (#10408) 2022-09-22 11:25:32 -07:00
compaction_filters.cc Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future (#9362) 2022-01-11 06:33:48 -08:00
counted_fs.cc Fix serious FSDirectory use-after-Close bug (missing fsync) (#10460) 2022-08-02 10:54:32 -07:00
counted_fs.h Explicitly closing all directory file descriptors (#10049) 2022-06-01 18:03:34 -07:00
debug.cc Skip swaths of range tombstone covered keys in merging iterator (2022 edition) (#10449) 2022-09-02 09:51:19 -07:00
env_mirror.cc Fix clang13 build error (#9374) 2022-01-11 10:36:22 -08:00
env_mirror_test.cc Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
env_timed.cc Make FileSystem a Customizable Class (#8649) 2021-11-02 09:07:11 -07:00
env_timed.h Make FileSystem a Customizable Class (#8649) 2021-11-02 09:07:11 -07:00
env_timed_test.cc Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
fault_injection_env.cc Explicitly closing all directory file descriptors (#10049) 2022-06-01 18:03:34 -07:00
fault_injection_env.h Explicitly closing all directory file descriptors (#10049) 2022-06-01 18:03:34 -07:00
fault_injection_fs.cc Add missing synchronization in TestFSWritableFile (#10544) 2022-08-22 15:50:22 -07:00
fault_injection_fs.h Add missing synchronization in TestFSWritableFile (#10544) 2022-08-22 15:50:22 -07:00
fault_injection_secondary_cache.cc Avoid recompressing cold block in CompressedSecondaryCache (#10527) 2022-09-07 19:00:27 -07:00
fault_injection_secondary_cache.h add SetCapacity and GetCapacity for secondary cache (#10712) 2022-09-29 19:15:04 -07:00
memory_allocators.h Make MemoryAllocator into a Customizable class (#8980) 2021-12-17 04:20:47 -08:00
merge_operators.cc Restore Regex support for ObjectLibrary::Register, rename new APIs to allow old one to be deprecated in the future (#9362) 2022-01-11 06:33:48 -08:00
merge_operators.h Make MergeOperator+CompactionFilter/Factory into Customizable Classes (#8481) 2021-08-06 08:27:25 -07:00
object_registry.cc Added GetFactoryCount/Names/Types to ObjectRegistry (#9358) 2022-05-16 09:44:43 -07:00
object_registry_test.cc Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
util_merge_operators_test.cc Print stack traces on frozen tests in CI (#10828) 2022-10-18 00:35:35 -07:00
wal_filter.cc Make WalFilter, SstPartitionerFactory, FileChecksumGenFactory, and TableProperties Customizable (#8638) 2021-09-28 05:32:02 -07:00