summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/prserv/db.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/prserv/db.py')
-rw-r--r--bitbake/lib/prserv/db.py16
1 files changed, 3 insertions, 13 deletions
diff --git a/bitbake/lib/prserv/db.py b/bitbake/lib/prserv/db.py
index 3fb2c34..5599355 100644
--- a/bitbake/lib/prserv/db.py
+++ b/bitbake/lib/prserv/db.py
@@ -52,11 +52,9 @@ class PRTable(object):
52 else: 52 else:
53 #no value found, try to insert 53 #no value found, try to insert
54 try: 54 try:
55 self._execute("BEGIN") 55 self._execute("INSERT INTO %s VALUES (?, ?, ?, (select ifnull(max(value)+1,0) from %s where version=? AND pkgarch=?));"
56 self._execute("INSERT OR ROLLBACK INTO %s VALUES (?, ?, ?, (select ifnull(max(value)+1,0) from %s where version=? AND pkgarch=?));"
57 % (self.table,self.table), 56 % (self.table,self.table),
58 (version,pkgarch, checksum,version, pkgarch)) 57 (version,pkgarch, checksum,version, pkgarch))
59 self.conn.commit()
60 except sqlite3.IntegrityError as exc: 58 except sqlite3.IntegrityError as exc:
61 logger.error(str(exc)) 59 logger.error(str(exc))
62 60
@@ -80,11 +78,9 @@ class PRTable(object):
80 else: 78 else:
81 #no value found, try to insert 79 #no value found, try to insert
82 try: 80 try:
83 self._execute("BEGIN")
84 self._execute("INSERT OR REPLACE INTO %s VALUES (?, ?, ?, (select ifnull(max(value)+1,0) from %s where version=? AND pkgarch=?));" 81 self._execute("INSERT OR REPLACE INTO %s VALUES (?, ?, ?, (select ifnull(max(value)+1,0) from %s where version=? AND pkgarch=?));"
85 % (self.table,self.table), 82 % (self.table,self.table),
86 (version, pkgarch, checksum, version, pkgarch)) 83 (version, pkgarch, checksum, version, pkgarch))
87 self.conn.commit()
88 except sqlite3.IntegrityError as exc: 84 except sqlite3.IntegrityError as exc:
89 logger.error(str(exc)) 85 logger.error(str(exc))
90 self.conn.rollback() 86 self.conn.rollback()
@@ -113,10 +109,8 @@ class PRTable(object):
113 else: 109 else:
114 #no value found, try to insert 110 #no value found, try to insert
115 try: 111 try:
116 self._execute("BEGIN") 112 self._execute("INSERT INTO %s VALUES (?, ?, ?, ?);" % (self.table),
117 self._execute("INSERT OR ROLLBACK INTO %s VALUES (?, ?, ?, ?);" % (self.table),
118 (version, pkgarch, checksum, value)) 113 (version, pkgarch, checksum, value))
119 self.conn.commit()
120 except sqlite3.IntegrityError as exc: 114 except sqlite3.IntegrityError as exc:
121 logger.error(str(exc)) 115 logger.error(str(exc))
122 116
@@ -130,18 +124,14 @@ class PRTable(object):
130 def _importNohist(self, version, pkgarch, checksum, value): 124 def _importNohist(self, version, pkgarch, checksum, value):
131 try: 125 try:
132 #try to insert 126 #try to insert
133 self._execute("BEGIN") 127 self._execute("INSERT INTO %s VALUES (?, ?, ?, ?);" % (self.table),
134 self._execute("INSERT OR ROLLBACK INTO %s VALUES (?, ?, ?, ?);" % (self.table),
135 (version, pkgarch, checksum,value)) 128 (version, pkgarch, checksum,value))
136 self.conn.commit()
137 except sqlite3.IntegrityError as exc: 129 except sqlite3.IntegrityError as exc:
138 #already have the record, try to update 130 #already have the record, try to update
139 try: 131 try:
140 self._execute("BEGIN")
141 self._execute("UPDATE %s SET value=? WHERE version=? AND pkgarch=? AND checksum=? AND value<?" 132 self._execute("UPDATE %s SET value=? WHERE version=? AND pkgarch=? AND checksum=? AND value<?"
142 % (self.table), 133 % (self.table),
143 (value,version,pkgarch,checksum,value)) 134 (value,version,pkgarch,checksum,value))
144 self.conn.commit()
145 except sqlite3.IntegrityError as exc: 135 except sqlite3.IntegrityError as exc:
146 logger.error(str(exc)) 136 logger.error(str(exc))
147 137