go-ethereum/core/rawdb
rayoo 5af5510b1e
core/rawdb: fix file descriptor leak in freezer error paths (#34735)
In openFreezerFileForAppend, if Seek fails after the file is
successfully opened, the file handle is not closed, leaking a
descriptor.

Similarly in newTable, if opening the meta file fails, the
already-opened index file is not closed. And if newMetadata fails, both
the index and meta files are leaked.

Under repeated error conditions (e.g., corrupted filesystem), these
leaks accumulate and may exhaust the OS file descriptor limit, causing
cascading failures.
2026-04-20 11:06:17 +08:00
..
ancienttest core/rawdb, triedb/pathdb: enable trienode history alongside existing data (#33934) 2026-03-12 09:21:54 +08:00
eradb
testdata
accessors_chain.go core/rawdb: BAL storage layer (#34064) 2026-03-31 15:05:31 +08:00
accessors_chain_test.go core/rawdb: BAL storage layer (#34064) 2026-03-31 15:05:31 +08:00
accessors_history.go
accessors_indexes.go
accessors_indexes_test.go
accessors_metadata.go
accessors_overlay.go
accessors_snapshot.go
accessors_state.go
accessors_sync.go
accessors_trie.go
ancient_scheme.go
ancient_utils.go
chain_freezer.go
chain_iterator.go
chain_iterator_test.go
database.go core/rawdb: BAL storage layer (#34064) 2026-03-31 15:05:31 +08:00
freezer.go core/rawdb, triedb/pathdb: enable trienode history alongside existing data (#33934) 2026-03-12 09:21:54 +08:00
freezer_batch.go
freezer_memory.go core/rawdb, triedb/pathdb: enable trienode history alongside existing data (#33934) 2026-03-12 09:21:54 +08:00
freezer_memory_test.go
freezer_meta.go
freezer_meta_test.go
freezer_resettable.go
freezer_resettable_test.go
freezer_table.go core/rawdb: fix file descriptor leak in freezer error paths (#34735) 2026-04-20 11:06:17 +08:00
freezer_table_test.go core/rawdb, triedb/pathdb: enable trienode history alongside existing data (#33934) 2026-03-12 09:21:54 +08:00
freezer_test.go
freezer_utils.go core/rawdb: fix file descriptor leak in freezer error paths (#34735) 2026-04-20 11:06:17 +08:00
freezer_utils_test.go
freezer_utils_unix.go core/rawdb: fix freezer dir.Sync() failure on Windows (#34115) 2026-03-30 15:34:23 +08:00
freezer_utils_windows.go core/rawdb: fix freezer dir.Sync() failure on Windows (#34115) 2026-03-30 15:34:23 +08:00
key_length_iterator.go
key_length_iterator_test.go
schema.go core/rawdb: BAL storage layer (#34064) 2026-03-31 15:05:31 +08:00
table.go core, ethdb, triedb: add batch close (#33708) 2026-03-04 11:17:47 +01:00
table_test.go