When running the import script against current production database, it failed with this error:
$ python c2corg_api/scripts/migration/migrate.py
Importing users
Total: 46021 rows
1 of 46021
4004 of 46021
7007 of 46021
10530 of 46021
13013 of 46021
Traceback (most recent call last):
File "c2corg_api/scripts/migration/migrate.py", line 65, in <module>
main()
File "c2corg_api/scripts/migration/migrate.py", line 54, in main
MigrateUsers(connection_source, session, batch_size).migrate()
File "/usr/src/v6_api/c2corg_api/scripts/migration/users.py", line 70, in migrate
email_validated=id not in pending
File "/usr/src/v6_api/c2corg_api/scripts/migration/batch.py", line 52, in add
self.flush_or_not()
File "/usr/src/v6_api/c2corg_api/scripts/migration/batch.py", line 14, in flush_or_not
self.flush()
File "/usr/src/v6_api/c2corg_api/scripts/migration/batch.py", line 59, in flush
self.session.bulk_insert_mappings(self.model, self.entities)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2280, in bulk_insert_mappings
mapper, mappings, False, False, return_defaults, False)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2351, in _bulk_save_mappings
transaction.rollback(_capture_exception=True)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 60, in __exit__
compat.reraise(exc_type, exc_value, exc_tb)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2346, in _bulk_save_mappings
mapper, mappings, transaction, isstates, return_defaults)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 67, in _bulk_insert
bookkeeping=return_defaults)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 752, in _emit_insert_statements
execute(statement, multiparams)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 914, in execute
return meth(self, multiparams, params)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 323, in _execute_on_connection
return connection._execute_clauseelement(self, multiparams, params)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1010, in _execute_clauseelement
compiled_sql, distilled_params
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1146, in _execute_context
context)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1341, in _handle_dbapi_exception
exc_info
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 199, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1116, in _execute_context
context)
File "/usr/src/v6_api/.build/venv/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 447, in do_executemany
cursor.executemany(statement, parameters)
sqlalchemy.exc.IntegrityError: (psycopg2.IntegrityError) duplicate key value violates unique constraint "user_email_key"
DETAIL: Key (email)=(<redacted>) already exists.