Hi Michael I have some fairly basic code which is moving data from one DB to another. I have trapped errors on inserts just in case there were unexpected duplicates. When I go to commit this transaction, MySQL correctly throws an IntegrityError exception: Duplicate Entry which I trap, and perform a rollback. However, the rollback ALSO receives an IntegrityError exception from MySQL for the same insert query??
File "C:\Documents and Settings\wprince\Desktop\PY CODE DEVELOPMENT\CESyncSQL\Sync_AU.py", line 1868, in SYNC_CustomersOUT session.rollback() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 586, in rollback self.transaction.rollback() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 324, in rollback self.close() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 351, in close self.session.begin() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 557, in begin self, nested=nested) File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 137, in __init__ self._take_snapshot() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 197, in _take_snapshot self.session.flush() File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 1473, in flush self._flush(objects) File "C:\Python27\lib\site-packages\sqlalchemy\orm\session.py", line 1542, in _flush flush_context.execute() File "C:\Python27\lib\site-packages\sqlalchemy\orm\unitofwork.py", line 327, in execute rec.execute(self) File "C:\Python27\lib\site-packages\sqlalchemy\orm\unitofwork.py", line 471, in execute uow File "C:\Python27\lib\site-packages\sqlalchemy\orm\mapper.py", line 2163, in _save_obj execute(statement, params) File "C:\Python27\lib\site-packages\sqlalchemy\engine\base.py", line 1358, in execute params) File "C:\Python27\lib\site-packages\sqlalchemy\engine\base.py", line 1491, in _execute_clauseelement compiled_sql, distilled_params File "C:\Python27\lib\site-packages\sqlalchemy\engine\base.py", line 1599, in _execute_context context) File "C:\Python27\lib\site-packages\sqlalchemy\engine\base.py", line 1592, in _execute_context context) File "C:\Python27\lib\site-packages\sqlalchemy\engine\default.py", line 325, in do_execute cursor.execute(statement, parameters) File "C:\Python27\lib\site-packages\mysql\connector\cursor.py", line 309, in execute res = self.db().protocol.cmd_query(stmt) File "C:\Python27\lib\site-packages\mysql\connector\protocol.py", line 136, in deco return func(*args, **kwargs) File "C:\Python27\lib\site-packages\mysql\connector\protocol.py", line 474, in cmd_query return self.handle_cmd_result(self._recv_packet()) File "C:\Python27\lib\site-packages\mysql\connector\protocol.py", line 173, in _recv_packet MySQLProtocol.raise_error(buf) File "C:\Python27\lib\site-packages\mysql\connector\protocol.py", line 167, in raise_error raise errors.get_mysql_exception(errno,errmsg) IntegrityError: (IntegrityError) 1062: Duplicate entry '1231-63565' for key 'userID' u'INSERT INTO customer_master bla.. Any ideas? This is 0.7.1 Cheers Warwick -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy?hl=en. For more options, visit https://groups.google.com/groups/opt_out.