[Collab-qa-commits] r1752 - udd/udd
Andreas Tille
tille at alioth.debian.org
Thu Jun 24 06:49:43 UTC 2010
Author: tille
Date: 2010-06-24 06:49:34 +0000 (Thu, 24 Jun 2010)
New Revision: 1752
Modified:
udd/udd/ddtp_gatherer.py
Log:
Work around a problem in some languages and make sure at least those languages were imported, where the problem does not exist.
Modified: udd/udd/ddtp_gatherer.py
===================================================================
--- udd/udd/ddtp_gatherer.py 2010-06-03 13:06:52 UTC (rev 1751)
+++ udd/udd/ddtp_gatherer.py 2010-06-24 06:49:34 UTC (rev 1752)
@@ -131,10 +131,13 @@
query = "EXECUTE ddtp_delete ('%s', '%s')" % (rel, lang)
cur.execute(query)
+ i18n_error_flag=0
descstring = 'Description-'+lang
g = gzip.GzipFile(dir + filename)
try:
for stanza in deb822.Sources.iter_paragraphs(g, shared_storage=False):
+ if i18n_error_flag == 1:
+ continue
self.pkg = ddtp(stanza['package'], rel, lang)
self.pkg.md5sum = stanza['Description-md5']
self.pkg.version = stanza['Version']
@@ -146,7 +149,12 @@
query = "EXECUTE ddtp_check_before_insert ('%s', '%s', '%s', '%s', '%s', '%s')" % \
(self.pkg.package, self.pkg.distribution, self.pkg.component, \
self.pkg.release, self.pkg.language, self.pkg.version)
- cur.execute(query)
+ try:
+ cur.execute(query)
+ except InternalError, err:
+ print >>stderr, "Encoding problem reading %s%s (%s)" % ( dir, filename, err)
+ i18n_error_flag=1
+ continue
if cur.fetchone()[0] > 0:
if debug > 0:
print >>stderr, "Just imported key in language %s: " % self.pkg.language, \
@@ -195,6 +203,8 @@
(self.pkg.package, self.pkg.version, self.pkg.description, self.pkg.md5sum)
except IOError, err:
print >>stderr, "Error reading %s (%s)" % (dir+filename, err)
+ # commit every successfully language to make sure we get any languages in an willnot be blocked by a single failing import
+ self.connection.commit()
cur.execute("DEALLOCATE ddtp_insert")
cur.execute("ANALYZE %s" % my_config['table'])
More information about the Collab-qa-commits
mailing list