Commit Graph
2 Commits
Author SHA1 Message Date
Simon Pinfold 1eac7422e5 test(db): drop the inert legacy-copy patch from the path preparation tests
prepare_file_db_path no longer copies the legacy database - that moved inside the process lock in _init_file_db - so patching copy_legacy_default_db here did nothing. Leaving it implied a side effect the function does not have, and would have masked one if it were reintroduced.
2026-09-17 19:47:36 -07:00
Constantineandguill 5f0c4e18cb Fix default database path for custom user directory (#14539)
* fix: respect user directory for default database

* refactor: use None default for --database-url instead of argv scan

Per review: default --database-url to None and treat a non-None value
as explicit at resolution time. Removes the sys.argv scan and the
database_url_explicit attribute. database_default_path now serves
directly as the legacy copy source. Adds regression tests for the
unchanged no-flag default path and explicit URLs at the legacy
location.

* refactor: rename legacy database to .bak after copy

Per review: after copying the legacy install-dir database to the
effective user directory, rename the original to comfyui.db.bak so a
later launch without --user-directory cannot silently fall back to a
diverged copy, while keeping the file around for recovery. Also hoist
the database_default_path import to module scope.

* fix: guard legacy migration on existing .bak and rename before copy

Per review: bail out of the legacy migration when comfyui.db.bak
already exists, so only the first run migrates and later launches with
a fresh --user-directory cannot grab a database another instance is
using. Rename before copy so os.replace fails fast if the legacy DB is
held open by a running instance.

---------

Co-authored-by: guill <jacob.e.segal@gmail.com>
2026-08-24 16:19:03 -07:00