Skip to content

Commit cd31cb4

Browse files
authored
Ensure db directories exist (#8512)
2 parents 18535e4 + 26af12a commit cd31cb4

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

src/tribler/core/database/store.py

+1
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@ def on_connect(_: Database, connection: Connection) -> None:
192192
create_db = True
193193
db_path_string = ":memory:"
194194
else:
195+
Path(db_filename).parent.mkdir(exist_ok=True)
195196
create_db = not Path(db_filename).exists()
196197
db_path_string = str(db_filename)
197198

src/tribler/core/recommender/manager.py

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ def __init__(self, db_filename: str) -> None:
2727
create_db = True
2828
db_path_string = ":memory:"
2929
else:
30+
Path(db_filename).parent.mkdir(exist_ok=True)
3031
create_db = not Path(db_filename).exists()
3132
db_path_string = str(db_filename)
3233

src/tribler/core/rendezvous/database.py

+7-2
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,13 @@ def __init__(self, db_path: PathLike) -> None:
2626
"""
2727
Create a new database.
2828
"""
29-
create_db = db_path == ":memory:" or not Path(db_path).exists()
30-
db_path_string = ":memory:" if db_path == ":memory:" else str(db_path)
29+
if db_path == ":memory:":
30+
create_db = True
31+
db_path_string = ":memory:"
32+
else:
33+
Path(db_path).parent.mkdir(exist_ok=True)
34+
create_db = not Path(db_path).exists()
35+
db_path_string = str(db_path)
3136

3237
self.database = Database()
3338
self.Certificate = certificate.define_binding(self.database)

0 commit comments

Comments
 (0)