mirror of
https://github.com/openai/codex.git
synced 2026-10-20 17:38:45 +00:00
## Why Opening each local message-board handle created a separate SQLite pool for the same database. ## What changed - Cache one shared pool per canonical database path within the process, using weak references so the last handle can release it. - Serialize pool initialization with deletion and corruption recovery. Close and evict the cached pool before replacing a corrupt database, and block new handles until deletion tombstones are saved. ## Testing Enable library unit tests and add coverage for concurrent handles sharing a pool, releasing it after the last handle drops, and creating a new pool on reopen. GitOrigin-RevId: 4d4a5c9ea9f063733df85a2ac120d51099736520
36 lines
1.0 KiB
TOML
36 lines
1.0 KiB
TOML
[package]
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
name = "codex-agent-message-board-extension"
|
|
version.workspace = true
|
|
|
|
[lib]
|
|
name = "codex_agent_message_board_extension"
|
|
path = "src/lib.rs"
|
|
doctest = false
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
base64 = { workspace = true }
|
|
caseless = { workspace = true }
|
|
chrono = { workspace = true, features = ["serde"] }
|
|
codex-extension-api = { workspace = true }
|
|
codex-protocol = { workspace = true }
|
|
codex-state = { workspace = true }
|
|
codex-tools = { workspace = true }
|
|
futures = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
sqlx = { workspace = true }
|
|
tokio = { workspace = true, features = ["fs", "rt", "sync"] }
|
|
tracing = { workspace = true }
|
|
uuid = { workspace = true, features = ["serde", "v7"] }
|
|
|
|
[dev-dependencies]
|
|
codex-utils-output-truncation = { workspace = true }
|
|
pretty_assertions = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
|