Gentoo Archives: gentoo-commits

From: Magnus Granberg <zorry@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] dev/zorry:master commit in: gobs/pym/querys/
Date: Fri, 29 Jul 2011 15:31:35
Message-Id: f5956b63f327681abd73e46eb72a192daacb323e.zorry@gentoo
1 commit: f5956b63f327681abd73e46eb72a192daacb323e
2 Author: Magnus Granberg <zorry <AT> gentoo <DOT> org>
3 AuthorDate: Fri Jul 29 15:26:17 2011 +0000
4 Commit: Magnus Granberg <zorry <AT> gentoo <DOT> org>
5 CommitDate: Fri Jul 29 15:26:17 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=dev/zorry.git;a=commit;h=f5956b63
7
8 Updated the pgsql
9
10 ---
11 gobs/pym/querys/pgsql.py | 338 ++++++++++++++++++++++++----------------------
12 1 files changed, 174 insertions(+), 164 deletions(-)
13
14 diff --git a/gobs/pym/querys/pgsql.py b/gobs/pym/querys/pgsql.py
15 index e1d2802..021c37f 100644
16 --- a/gobs/pym/querys/pgsql.py
17 +++ b/gobs/pym/querys/pgsql.py
18 @@ -1,4 +1,6 @@
19 #every function takes a connection as a parameter that is provided by the CM
20 +from __future__ import print_function
21 +
22 def get_default_config(connection):
23 cursor = connection.cursor()
24 sqlQ = 'SELECT id FROM configs WHERE default_config = True'
25 @@ -10,88 +12,76 @@ def get_profile_checksum(connection, config_profile):
26 sqlQ = "SELECT make_conf_checksum FROM configs WHERE active = 'True' AND id = %s AND updateing = 'False'"
27 cursor.execute(sqlQ, (config_profile,))
28 return cursor.fetchone()
29 -
30 -def get_package_to_build(connection, config_profile, queue_id, new):
31 +
32 +def get_packages_to_build(connection, config_profile):
33 cursor =connection.cursor()
34 - print "queue_id config_profile", queue_id, config_profile
35 - # get what to build
36 - if new is True:
37 - sqlQ1 = "SELECT ebuild_id, post_message FROM buildqueue WHERE config = %s AND queue_id = %s"
38 - else:
39 - sqlQ1 = "SELECT ebuild_id, post_message FROM buildqueue WHERE config = %s AND extract(epoch from (NOW()) - timestamp) > 7200 AND queue_id = %s"
40 + # no point in returning dead ebuilds, to just chuck em out later
41 + sqlQ1 = '''SELECT post_message, queue_id, ebuild_id FROM buildqueue WHERE config = %s AND extract(epoch from (NOW()) - timestamp) > 7200 ORDER BY queue_id LIMIT 1'''
42 +
43 + sqlQ2 ='''SELECT ebuild_id,category,package_name,ebuild_version,ebuild_checksum FROM ebuilds,buildqueue,packages
44 + WHERE buildqueue.ebuild_id=ebuilds.id AND ebuilds.package_id=packages.package_id AND queue_id = %s AND ebuilds.active = TRUE'''
45 +
46 # get use flags to use
47 - sqlQ2 = "SELECT useflag, enabled FROM ebuildqueuedwithuses WHERE queue_id = %s"
48 - # get ebuild version (v) and package id
49 - sqlQ3 = 'SELECT ebuild_version, package_id, ebuild_checksum FROM ebuilds WHERE id = %s'
50 - # get categoriy and package (c, p)
51 - sqlQ4 ='SELECT category, package_name FROM packages WHERE package_id = %s'
52 - build_dict = {}
53 - build_useflags_dict = {}
54 - cursor.execute(sqlQ1, (config_profile, queue_id))
55 + sqlQ3 = "SELECT useflag, enabled FROM ebuildqueuedwithuses WHERE queue_id = %s"
56 + cursor.execute(sqlQ1, (config_profile,))
57 + build_dict={}
58 entries = cursor.fetchone()
59 - print "sqlQ1", entries
60 if entries is None:
61 + return None
62 + if entries[2] is None:
63 build_dict['ebuild_id'] = None
64 - build_dict['post_message'] = None
65 + build_dict['queue_id'] = entries[1]
66 return build_dict
67 - build_dict['queue_id'] = queue_id
68 - ebuild_id = entries[0]
69 - build_dict['ebuild_id'] = ebuild_id
70 - build_dict['post_message'] = entries[1]
71 - cursor.execute(sqlQ2, (queue_id,))
72 - entries = cursor.fetchall()
73 - print 'build_useflags', entries
74 - if entries == []:
75 - build_useflags = None
76 - else:
77 - build_useflags = entries
78 - cursor.execute(sqlQ3, (ebuild_id,))
79 - entries = cursor.fetchall()[0]
80 - build_dict['ebuild_version'] = entries[0]
81 - build_dict['package_id'] = entries[1]
82 - build_dict['ebuild_checksum'] = entries[2]
83 - cursor.execute(sqlQ4, (entries[1],))
84 - entries = cursor.fetchall()[0]
85 - build_dict['categories'] = entries[0]
86 - build_dict['package'] = entries[1]
87 - if build_useflags is None:
88 - build_dict['build_useflags'] = None
89 - else:
90 - for x in build_useflags:
91 - build_useflags_dict[x[0]] = x[1]
92 - build_dict['build_useflags'] = build_useflags_dict
93 - print "build_dict", build_dict
94 + msg_list = []
95 + if not entries[0] is None:
96 + for msg in entries[0].split(" "):
97 + msg_list.append(msg)
98 + build_dict['post_message'] = msg_list
99 + build_dict['queue_id'] = entries[1]
100 + build_dict['ebuild_id']=entries[2]
101 + cursor.execute(sqlQ2, (build_dict['queue_id'],))
102 + #make a list that contains objects that haves ebuild_id and post_message +the lot as attributes
103 + entries = cursor.fetchone()
104 + if entries is None:
105 + build_dict['checksum']= None
106 + return build_dict
107 + build_dict['ebuild_id']=entries[0]
108 + build_dict['category']=entries[1]
109 + build_dict['package']=entries[2]
110 + build_dict['ebuild_version']=entries[3]
111 + build_dict['checksum']=entries[4]
112 +
113 + #add a enabled and disabled list to the objects in the item list
114 + cursor.execute(sqlQ3, (build_dict['queue_id'],))
115 + uses={}
116 + for row in cursor.fetchall():
117 + uses[ row[0] ] = row[1]
118 + build_dict['build_useflags']=uses
119 return build_dict
120
121 -def check_revision(connection, build_dict, config_profile, ebuild_version_checksum_tree):
122 +def check_revision(connection, build_dict):
123 cursor = connection.cursor()
124 - build_useflags = []
125 - sqlQ1 = 'SELECT id FROM ebuilds WHERE ebuild_version = %s AND ebuild_checksum = %s AND package_id = %s'
126 - sqlQ2 = 'SELECT queue_id FROM buildqueue WHERE ebuild_id = %s AND config = %s'
127 - sqlQ3 = "SELECT useflag FROM ebuildqueuedwithuses WHERE queue_id = %s AND enabled = 'True'"
128 - cursor.execute(sqlQ1, (build_dict['ebuild_version'], ebuild_version_checksum_tree, build_dict['package_id']))
129 - ebuild_id = cursor.fetchone()
130 - print "ebuild_id", ebuild_id
131 - if ebuild_id is None:
132 - return None
133 - cursor.execute(sqlQ2, (ebuild_id[0], config_profile))
134 + sqlQ1 = 'SELECT queue_id FROM buildqueue WHERE ebuild_id = %s AND config = %s'
135 + sqlQ2 = "SELECT useflag FROM ebuildqueuedwithuses WHERE queue_id = %s AND enabled = 'True'"
136 + cursor.execute(sqlQ1, (build_dict['ebuild_id'], build_dict['config_profile']))
137 queue_id_list = cursor.fetchall()
138 - print 'queue_id_list', queue_id_list
139 + print('queue_id_list', queue_id_list)
140 if queue_id_list == []:
141 return None
142 - for queue_id in queue_id_list[0]:
143 - print 'queue_id', queue_id
144 - cursor.execute(sqlQ3, (queue_id,))
145 + for queue_id in queue_id_list:
146 + print('queue_id after list', queue_id[0])
147 + cursor.execute(sqlQ2, (queue_id[0],))
148 entries = cursor.fetchall()
149 + build_useflags = []
150 if entries == []:
151 build_useflags = None
152 else:
153 for use_line in sorted(entries):
154 - build_useflags.append(unicode(use_line[0]))
155 - print "build_useflags build_dict['build_useflags']", build_useflags, build_dict['build_useflags']
156 + build_useflags.append(use_line[0])
157 + print("build_useflags build_dict['build_useflags']", build_useflags, build_dict['build_useflags'])
158 if build_useflags == build_dict['build_useflags']:
159 - print 'queue_id', queue_id
160 - return queue_id
161 + print('queue_id', queue_id[0])
162 + return queue_id[0]
163 return None
164
165 def get_config_list(connection):
166 @@ -261,18 +251,18 @@ def add_new_ebuild_sql(connection, packageDict, new_ebuild_list):
167 for k, v in packageDict.iteritems():
168 for x in new_ebuild_list:
169 if x == v['ebuild_version_tree']:
170 - params = [v['categories'], v['package'], v['ebuild_version_tree'], v['ebuild_version_revision'], v['ebuild_version_checksum_tree'],
171 - v['ebuild_version_text'], v['ebuild_version_metadata_tree'][0], v['ebuild_version_metadata_tree'][1],
172 - v['ebuild_version_metadata_tree'][12], v['ebuild_version_metadata_tree'][2], v['ebuild_version_metadata_tree'][3],
173 - v['ebuild_version_metadata_tree'][5],v['ebuild_version_metadata_tree'][6], v['ebuild_version_metadata_tree'][7],
174 - v['ebuild_version_metadata_tree'][9], v['ebuild_version_metadata_tree'][11],
175 - v['ebuild_version_metadata_tree'][13],v['ebuild_version_metadata_tree'][14], v['ebuild_version_metadata_tree'][15],
176 - v['ebuild_version_metadata_tree'][16]]
177 - cursor.execute(sqlQ, params)
178 - mid = cursor.fetchone()
179 - mid=mid[0]
180 - ebuild_id_list.append(mid[1])
181 - package_id_list.append(mid[0])
182 + params = [v['categories'], v['package'], v['ebuild_version_tree'], v['ebuild_version_revision'], v['ebuild_version_checksum_tree'],
183 + v['ebuild_version_text'], v['ebuild_version_metadata_tree'][0], v['ebuild_version_metadata_tree'][1],
184 + v['ebuild_version_metadata_tree'][12], v['ebuild_version_metadata_tree'][2], v['ebuild_version_metadata_tree'][3],
185 + v['ebuild_version_metadata_tree'][5],v['ebuild_version_metadata_tree'][6], v['ebuild_version_metadata_tree'][7],
186 + v['ebuild_version_metadata_tree'][9], v['ebuild_version_metadata_tree'][11],
187 + v['ebuild_version_metadata_tree'][13],v['ebuild_version_metadata_tree'][14], v['ebuild_version_metadata_tree'][15],
188 + v['ebuild_version_metadata_tree'][16]]
189 + cursor.execute(sqlQ, params)
190 + mid = cursor.fetchone()
191 + mid=mid[0]
192 + ebuild_id_list.append(mid[1])
193 + package_id_list.append(mid[0])
194 connection.commit()
195 # add_new_metadata(metadataDict)
196 return ebuild_id_list, package_id_list
197 @@ -295,10 +285,10 @@ def get_ebuild_id_db_checksum(connection, build_dict):
198 sqlQ = 'SELECT id FROM ebuilds WHERE ebuild_version = %s AND ebuild_checksum = %s AND package_id = %s'
199 cursor.execute(sqlQ, (build_dict['ebuild_version'], build_dict['checksum'], build_dict['package_id']))
200 ebuild_id = cursor.fetchone()
201 - print 'ebuild_id', ebuild_id
202 + print('ebuild_id', ebuild_id)
203 if ebuild_id is None:
204 return None
205 - return ebuild_id
206 + return ebuild_id[0]
207
208 def get_cpv_from_ebuild_id(connection, ebuild_id):
209 cursor = connection.cursor()
210 @@ -343,7 +333,7 @@ def add_new_package_buildqueue(connection, ebuild_id, config_id, iuse_flags_list
211 if not iuse_flags_list:
212 iuse_flags_list=None
213 use_enable=None
214 - params = ebuild_id, unicode(config_id), iuse_flags_list, use_enable, message
215 + params = ebuild_id, config_id, iuse_flags_list, use_enable, message
216 cursor.execute(sqlQ, params)
217 connection.commit()
218
219 @@ -397,17 +387,17 @@ def add_old_ebuild(connection, package_id, old_ebuild_list):
220 sqlQ4 = 'DELETE FROM ebuildqueuedwithuses WHERE queue_id = %s'
221 sqlQ5 = 'DELETE FROM buildqueue WHERE queue_id = %s'
222 for old_ebuild in old_ebuild_list:
223 - cursor.execute(sqlQ2, (package_id, old_ebuild[0]))
224 - ebuild_id_list = cursor.fetchall()
225 - if ebuild_id_list is not None:
226 - for ebuild_id in ebuild_id_list:
227 - cursor.execute(sqlQ3, (ebuild_id))
228 - queue_id_list = cursor.fetchall()
229 - if queue_id_list is not None:
230 - for queue_id in queue_id_list:
231 - cursor.execute(sqlQ4, (queue_id))
232 - cursor.execute(sqlQ5, (queue_id))
233 - cursor.execute(sqlQ1, (package_id, old_ebuild[0]))
234 + cursor.execute(sqlQ2, (package_id, old_ebuild[0]))
235 + ebuild_id_list = cursor.fetchall()
236 + if ebuild_id_list is not None:
237 + for ebuild_id in ebuild_id_list:
238 + cursor.execute(sqlQ3, (ebuild_id))
239 + queue_id_list = cursor.fetchall()
240 + if queue_id_list is not None:
241 + for queue_id in queue_id_list:
242 + cursor.execute(sqlQ4, (queue_id))
243 + cursor.execute(sqlQ5, (queue_id))
244 + cursor.execute(sqlQ1, (package_id, old_ebuild[0]))
245 connection.commit()
246
247 def cp_all_old_db(connection, old_package_id_list):
248 @@ -420,41 +410,51 @@ def cp_all_old_db(connection, old_package_id_list):
249 if entries is None:
250 old_package_list.append(old_package)
251 return old_package_list
252 -
253 +
254 +def del_old_queue(connection, queue_id):
255 + cursor = connection.cursor()
256 + sqlQ1 = 'DELETE FROM ebuildqueuedwithuses WHERE queue_id = %s'
257 + sqlQ2 = 'DELETE FROM temp_errors_queue_qa WHERE queue_id = %s'
258 + sqlQ3 = 'DELETE FROM buildqueue WHERE queue_id = %s'
259 + cursor.execute(sqlQ1, (queue_id,))
260 + cursor.execute(sqlQ2, (queue_id,))
261 + cursor.execute(sqlQ3, (queue_id,))
262 + connection.commit()
263 +
264 def del_old_ebuild(connection, ebuild_old_list_db):
265 - cursor = connection.cursor()
266 - sqlQ1 = 'SELECT build_id FROM buildlog WHERE ebuild_id = %s'
267 - sqlQ2 = 'DELETE FROM qa_problems WHERE build_id = %s'
268 - sqlQ3 = 'DELETE FROM repoman_problems WHERE build_id = %s'
269 - sqlQ4 = 'DELETE FROM ebuildbuildwithuses WHERE build_id = %s'
270 - sqlQ5 = 'DELETE FROM ebuildhaveskeywords WHERE ebuild_id = %s'
271 - sqlQ6 = 'DELETE FROM ebuildhavesiuses WHERE ebuild_id = %s'
272 - sqlQ7 = 'DELETE FROM ebuildhavesrestrictions WHERE ebuild_id = %s'
273 - sqlQ8 = 'DELETE FROM buildlog WHERE ebuild_id = %s'
274 - sqlQ9 = 'SELECT queue_id FROM buildqueue WHERE ebuild_id = %s'
275 - sqlQ10 = 'DELETE FROM ebuildqueuedwithuses WHERE queue_id = %s'
276 - sqlQ11 = 'DELETE FROM buildqueue WHERE ebuild_id = %s'
277 - sqlQ12 = 'DELETE FROM ebuilds WHERE id = %s'
278 - for ebuild_id in ebuild_old_list_db:
279 - cursor.execute(sqlQ1, (ebuild_id[0],))
280 - build_id_list = cursor.fetchall()
281 - if build_id_list != []:
282 - for build_id in build_id_list:
283 - cursor.execute(sqlQ2, (build_id[0],))
284 - cursor.execute(sqlQ3, (build_id[0],))
285 - cursor.execute(sqlQ4, (build_id[0],))
286 - cursor.execute(sqlQ9, (ebuild_id[0],))
287 - queue_id_list = cursor.fetchall()
288 - if queue_id_list != []:
289 - for queue_id in queue_id_list:
290 - cursor.execute(sqlQ10, (queue_id[0],))
291 - cursor.execute(sqlQ5, (ebuild_id[0],))
292 - cursor.execute(sqlQ6, (ebuild_id[0],))
293 - cursor.execute(sqlQ7, (ebuild_id[0],))
294 - cursor.execute(sqlQ8, (ebuild_id[0],))
295 - cursor.execute(sqlQ11, (ebuild_id[0],))
296 - cursor.execute(sqlQ12, (ebuild_id[0],))
297 - connection.commit()
298 + cursor = connection.cursor()
299 + sqlQ1 = 'SELECT build_id FROM buildlog WHERE ebuild_id = %s'
300 + sqlQ2 = 'DELETE FROM qa_problems WHERE build_id = %s'
301 + sqlQ3 = 'DELETE FROM repoman_problems WHERE build_id = %s'
302 + sqlQ4 = 'DELETE FROM ebuildbuildwithuses WHERE build_id = %s'
303 + sqlQ5 = 'DELETE FROM ebuildhaveskeywords WHERE ebuild_id = %s'
304 + sqlQ6 = 'DELETE FROM ebuildhavesiuses WHERE ebuild_id = %s'
305 + sqlQ7 = 'DELETE FROM ebuildhavesrestrictions WHERE ebuild_id = %s'
306 + sqlQ8 = 'DELETE FROM buildlog WHERE ebuild_id = %s'
307 + sqlQ9 = 'SELECT queue_id FROM buildqueue WHERE ebuild_id = %s'
308 + sqlQ10 = 'DELETE FROM ebuildqueuedwithuses WHERE queue_id = %s'
309 + sqlQ11 = 'DELETE FROM buildqueue WHERE ebuild_id = %s'
310 + sqlQ12 = 'DELETE FROM ebuilds WHERE id = %s'
311 + for ebuild_id in ebuild_old_list_db:
312 + cursor.execute(sqlQ1, (ebuild_id[0],))
313 + build_id_list = cursor.fetchall()
314 + if build_id_list != []:
315 + for build_id in build_id_list:
316 + cursor.execute(sqlQ2, (build_id[0],))
317 + cursor.execute(sqlQ3, (build_id[0],))
318 + cursor.execute(sqlQ4, (build_id[0],))
319 + cursor.execute(sqlQ9, (ebuild_id[0],))
320 + queue_id_list = cursor.fetchall()
321 + if queue_id_list != []:
322 + for queue_id in queue_id_list:
323 + cursor.execute(sqlQ10, (queue_id[0],))
324 + cursor.execute(sqlQ5, (ebuild_id[0],))
325 + cursor.execute(sqlQ6, (ebuild_id[0],))
326 + cursor.execute(sqlQ7, (ebuild_id[0],))
327 + cursor.execute(sqlQ8, (ebuild_id[0],))
328 + cursor.execute(sqlQ11, (ebuild_id[0],))
329 + cursor.execute(sqlQ12, (ebuild_id[0],))
330 + connection.commit()
331
332 def del_old_package(connection, package_id_list):
333 cursor = connection.cursor()
334 @@ -464,13 +464,13 @@ def del_old_package(connection, package_id_list):
335 sqlQ4 = 'DELETE FROM packages_meta WHERE package_id = %s'
336 sqlQ5 = 'DELETE FROM packages WHERE package_id = %s'
337 for package_id in package_id_list:
338 - cursor.execute(sqlQ1, package_id)
339 - ebuild_id_list = cursor.fetchall()
340 - del_old_ebuild(connection, ebuild_id_list)
341 - cursor.execute(sqlQ2, (package_id,))
342 - cursor.execute(sqlQ3, (package_id,))
343 - cursor.execute(sqlQ4, (package_id,))
344 - cursor.execute(sqlQ5, (package_id,))
345 + cursor.execute(sqlQ1, package_id)
346 + ebuild_id_list = cursor.fetchall()
347 + del_old_ebuild(connection, ebuild_id_list)
348 + cursor.execute(sqlQ2, (package_id,))
349 + cursor.execute(sqlQ3, (package_id,))
350 + cursor.execute(sqlQ4, (package_id,))
351 + cursor.execute(sqlQ5, (package_id,))
352 connection.commit()
353
354 def cp_list_db(connection, package_id):
355 @@ -485,14 +485,29 @@ def cp_list_old_db(connection, package_id):
356 cursor.execute(sqlQ, package_id)
357 return cursor.fetchall()
358
359 -def move_queru_buildlog(connection, queue_id, build_error, summary_error, logfilename, build_log_dict):
360 +def move_queru_buildlog(connection, queue_id, build_error, summary_error, build_log_dict):
361 cursor = connection.cursor()
362 - print 'queue_id', queue_id
363 - print 'build_log_dict', build_log_dict
364 + print('queue_id', queue_id)
365 + print('build_log_dict', build_log_dict)
366 repoman_error_list = build_log_dict['repoman_error_list']
367 qa_error_list = build_log_dict['qa_error_list']
368 sqlQ = 'SELECT make_buildlog( %s, %s, %s, %s, %s, %s)'
369 - cursor.execute(sqlQ, (queue_id, summary_error, build_error, logfilename, qa_error_list, repoman_error_list))
370 + cursor.execute(sqlQ, (queue_id, summary_error, build_error, build_log_dict['logfilename'], qa_error_list, repoman_error_list))
371 + entries = cursor.fetchone()
372 + connection.commit()
373 + return entries
374 +
375 +def add_new_buildlog(connection, build_dict, use_flags_list, use_enable_list, build_error, summary_error, build_log_dict):
376 + cursor = connection.cursor()
377 + repoman_error_list = build_log_dict['repoman_error_list']
378 + qa_error_list = build_log_dict['qa_error_list']
379 + if not use_flags_list:
380 + use_flags_list=None
381 + use_enable=None
382 + print('make_deplog', build_dict['ebuild_id'], build_dict['config_profile'], use_flags_list, use_enable_list, summary_error, build_error, build_log_dict['logfilename'], qa_error_list, repoman_error_list)
383 + sqlQ = 'SELECT make_deplog( %s, %s, %s, %s, %s, %s, %s, %s, %s)'
384 + params = (build_dict['ebuild_id'], build_dict['config_profile'], use_flags_list, use_enable_list, summary_error, build_error, build_log_dict['logfilename'], qa_error_list, repoman_error_list)
385 + cursor.execute(sqlQ, params)
386 entries = cursor.fetchone()
387 connection.commit()
388 return entries
389 @@ -505,24 +520,24 @@ def add_qa_repoman(connection, ebuild_id_list, qa_error, packageDict, config_id)
390 sqlQ = "INSERT INTO buildlog (ebuild_id, config, error_summary, timestamp, hash ) VALUES ( %s, %s, %s, now(), '1' ) RETURNING build_id"
391 if v['ebuild_error'] != [] or qa_error != []:
392 if v['ebuild_error'] != [] or qa_error == []:
393 - summary = "Repoman"
394 + summary = "Repoman"
395 elif v['ebuild_error'] == [] or qa_error != []:
396 - summary = "QA"
397 + summary = "QA"
398 else:
399 - summary = "QA:Repoman"
400 + summary = "QA:Repoman"
401 params = (ebuild_id, config_id, summary)
402 cursor.execute(sqlQ, params)
403 build_id = cursor.fetchone()
404 if v['ebuild_error'] != []:
405 - sqlQ = 'INSERT INTO repoman_problems (problem, build_id ) VALUES ( %s, %s )'
406 - for x in v['ebuild_error']:
407 - params = (x, build_id)
408 - cursor.execute(sqlQ, params)
409 + sqlQ = 'INSERT INTO repoman_problems (problem, build_id ) VALUES ( %s, %s )'
410 + for x in v['ebuild_error']:
411 + params = (x, build_id)
412 + cursor.execute(sqlQ, params)
413 if qa_error != []:
414 - sqlQ = 'INSERT INTO qa_problems (problem, build_id ) VALUES ( %s, %s )'
415 - for x in qa_error:
416 - params = (x, build_id)
417 - cursor.execute(sqlQ, params)
418 + sqlQ = 'INSERT INTO qa_problems (problem, build_id ) VALUES ( %s, %s )'
419 + for x in qa_error:
420 + params = (x, build_id)
421 + cursor.execute(sqlQ, params)
422 ebuild_i = ebuild_i +1
423 connection.commit()
424
425 @@ -553,33 +568,28 @@ def add_new_arch_db(connection, arch_list):
426 cursor.execute(sqlQ, (arch,))
427 connection.commit()
428
429 -def check_fail_times(connection, queue_id, what_error):
430 +def check_fail_times(connection, logDict):
431 + queue_id = logDict['queue_id']
432 + qa_error = logDict['qa_error_list'][0]
433 cursor = connection.cursor()
434 sqlQ = 'SELECT errors FROM temp_errors_queue_qa WHERE queue_id = %s AND what_error = %s'
435 - cursor.execute(sqlQ, (queue_id, what_error))
436 + cursor.execute(sqlQ, (queue_id, qa_error,))
437 return cursor.fetchone()
438
439 -def add_fail_times(connection, queue_id, what_error):
440 +def add_fail_times(connection, logDict):
441 + queue_id = logDict['queue_id']
442 + qa_error = logDict['qa_error_list'][0]
443 cursor = connection.cursor()
444 - x = 1
445 - sqlQ = 'INSERT INTO temp_errors_queue_qa (queue_id, what_error, errors) VALUES ( %s, %s, %s)'
446 - cursor.execute(sqlQ, (queue_id, what_error, x))
447 + sqlQ = 'INSERT INTO temp_errors_queue_qa (queue_id, what_error) VALUES ( %s, %s)'
448 + cursor.execute(sqlQ, (queue_id, qa_error,))
449 connection.commit()
450
451 -def update_fail_times(connection, queue_id, what_error, fail_times):
452 - cursor = connection.cursor()
453 - x = fail_times + 1
454 - sqlQ = 'UPDATE temp_errors_queue_qa SET errors = %s WHERE queue_id = %s AND what_error = %s'
455 - cursor.execute(sqlQ, (x, queue_id, what_error))
456 - connection.commit()
457 -def del_old_queue(connection, queue_id):
458 +def update_fail_times(connection, logDict):
459 + queue_id = logDict['queue_id']
460 + qa_error = logDict['qa_error_list'][0]
461 cursor = connection.cursor()
462 - sqlQ1 = 'DELETE FROM ebuildqueuedwithuses WHERE queue_id = %s'
463 - sqlQ2 = 'DELETE FROM temp_errors_queue_qa WHERE queue_id = %s'
464 - sqlQ3 = 'DELETE FROM buildqueue WHERE queue_id = %s'
465 + sqlQ1 = 'UPDATE buildqueue SET timestamp = NOW() WHERE queue_id = %s'
466 cursor.execute(sqlQ1, (queue_id,))
467 - cursor.execute(sqlQ2, (queue_id,))
468 - cursor.execute(sqlQ3, (queue_id,))
469 connection.commit()
470
471 def make_conf_error(connection,config_profile):