summaryrefslogtreecommitdiff
path: root/readyaml.py
diff options
context:
space:
mode:
authorHelmut Grohne <helmut@subdivi.de>2013-06-11 23:22:10 +0200
committerHelmut Grohne <helmut@subdivi.de>2013-06-11 23:22:10 +0200
commitf652c17f242fb743a167041521e9618039ae7296 (patch)
tree6e88fd70726bd636af375f67d4e9f5caa83db7ee /readyaml.py
parentee63a5ca909065a4317931eed6be2140fc48754c (diff)
downloaddebian-dedup-f652c17f242fb743a167041521e9618039ae7296.tar.gz
autoimport: don't fork for readyaml
This appears to be a huge performance boost.
Diffstat (limited to 'readyaml.py')
-rwxr-xr-xreadyaml.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/readyaml.py b/readyaml.py
index b66c7f3..e2f3bb3 100755
--- a/readyaml.py
+++ b/readyaml.py
@@ -8,11 +8,10 @@ import sys
from debian.debian_support import version_compare
import yaml
-def main():
- db = sqlite3.connect("test.sqlite3")
+def readyaml(db, stream):
cur = db.cursor()
cur.execute("PRAGMA foreign_keys = ON;")
- gen = yaml.safe_load_all(sys.stdin)
+ gen = yaml.safe_load_all(stream)
metadata = next(gen)
package = metadata["package"]
cur.execute("SELECT version FROM package WHERE package = ?;",
@@ -44,5 +43,9 @@ def main():
for func, hexhash in entry["hashes"].items()))
raise ValueError("missing commit block")
+def main():
+ db = sqlite3.connect("test.sqlite3")
+ readyaml(db, sys.stdin)
+
if __name__ == "__main__":
main()