summaryrefslogtreecommitdiff
path: root/importpkg.py
diff options
context:
space:
mode:
authorHelmut Grohne <helmut@subdivi.de>2013-03-07 08:43:15 +0100
committerHelmut Grohne <helmut@subdivi.de>2013-03-07 08:43:15 +0100
commitac4c52c7a4501e90ed53f3ca5780bec4551a8c9f (patch)
treeb6d065fd8386b26ea1b642dfc79b086386a543b3 /importpkg.py
parentd6638c18872db382a8d1045b6de1f9438c8a25fa (diff)
downloaddebian-dedup-ac4c52c7a4501e90ed53f3ca5780bec4551a8c9f.tar.gz
enable enforcing foreign keys
Diffstat (limited to 'importpkg.py')
-rwxr-xr-ximportpkg.py5
1 files changed, 2 insertions, 3 deletions
diff --git a/importpkg.py b/importpkg.py
index ef368c2..aae9a7f 100755
--- a/importpkg.py
+++ b/importpkg.py
@@ -109,6 +109,7 @@ def get_hashes(tar):
def process_package(db, filelike):
cur = db.cursor()
+ cur.execute("PRAGMA foreign_keys = ON;")
af = ArReader(filelike)
af.read_magic()
state = "start"
@@ -144,11 +145,9 @@ def process_package(db, filelike):
if row and version_compare(row[0], version) > 0:
return # already seen a newer package
- cur.execute("DELETE FROM package WHERE package = ?;",
- (package,))
cur.execute("DELETE FROM content WHERE package = ?;",
(package,))
- cur.execute("INSERT INTO package (package, version, architecture, source) VALUES (?, ?, ?, ?);",
+ cur.execute("INSERT OR REPLACE INTO package (package, version, architecture, source) VALUES (?, ?, ?, ?);",
(package, version, architecture, source))
depends = control.relations.get("depends", [])
depends = set(dep[0]["name"].encode("ascii")