~psycopg/psycopg/2.0.x

« back to all changes in this revision

Viewing changes to ZPsycopgDA/db.py

  • Committer: Federico Di Gregorio
  • Date: 2005-01-20 05:49:40 UTC
  • Revision ID: fog-7e871bddd10637cd35a35849556d0b49b4be53b4
License changes. Fixes. Added register_adapter().

Show diffs side-by-side

added added

removed removed

Lines of Context:
162
162
                    if self.encoding:
163
163
                        qs = qs.encode(self.encoding)
164
164
                try:
165
 
                    if (query_data):
 
165
                    if query_data:
166
166
                        c.execute(qs, query_data)
167
167
                    else:
168
168
                        c.execute(qs)
169
 
                except (psycopg.ProgrammingError, psycopg.IntegrityError), e:
 
169
                except OperationalError, e:
 
170
                    try:
 
171
                        self.close()
 
172
                    except:
 
173
                        pass
 
174
                    self.open()
 
175
                    try:
 
176
                        if   query_data:
 
177
                            c.execute(qs, query_data)
 
178
                        else:
 
179
                            c.execute(qs)
 
180
                    except (psycopg.ProgrammingError,psycopg.IntegrityError),e:
 
181
                        if e.args[0].find("concurrent update") > -1:
 
182
                            raise ConflictError
 
183
                        raise e
 
184
                except (psycopg.ProgrammingError,psycopg.IntegrityError), e:
170
185
                    if e.args[0].find("concurrent update") > -1:
171
186
                        raise ConflictError
172
187
                    raise e