docs(rag): correct the duckdb concurrency note in the driver prompt

The driver picker still told users a duckdb RAG can only be open in one Coyote
process at a time. That stopped being true once the store began opening
read-only for queries: any number of processes can now query it concurrently.

The restriction that remains is narrower and only bites while writing, so the
prompt now states that instead — several processes can query at once, but an
ingest or rebuild locks the others out until it finishes.
This commit is contained in:
2026-08-11 16:38:55 -06:00
parent e006e29ff1
commit 912e00a627
+5 -3
View File
@@ -274,15 +274,17 @@ impl Rag {
let driver = if prompt_for_driver { let driver = if prompt_for_driver {
let options = vec![ let options = vec![
"yaml — portable, in-memory HNSW; usable from several Coyote processes at once (default)", "yaml — portable, in-memory HNSW; usable from several Coyote processes at once (default)",
"duckdb — persistent on-disk store; vectors and content survive restarts; HNSW approximate search. Can only be open in ONE Coyote process at a time, and its driver cannot be changed later without recreating the RAG", "duckdb — persistent on-disk store; vectors and content survive restarts; HNSW approximate search. Several Coyote processes can query it at once, but ingesting or rebuilding it locks the others out until that finishes, and its driver cannot be changed later without recreating the RAG",
]; ];
let sel = Select::new("RAG storage driver:", options) let sel = Select::new("RAG storage driver:", options)
.with_starting_cursor(0) .with_starting_cursor(0)
.prompt()?; .prompt()?;
if sel.starts_with("duckdb") { if sel.starts_with("duckdb") {
println!( println!(
"Note: a duckdb RAG can only be open in one Coyote process at a time, \ "Note: several Coyote processes can query a duckdb RAG at the same time, \
and changing its driver later means deleting and recreating the RAG." but while one process is ingesting or rebuilding it the others cannot \
read it until that finishes. Changing its driver later means deleting \
and recreating the RAG."
); );
"duckdb" "duckdb"
} else { } else {