Skip to content

Population fails from duplicate assay #11

@cthoyt

Description

@cthoyt
$ bio2bel_excape populate --reset
Deleting the previous instance of the database
Creating new models
2019-03-02 11:22:31,882 - bio2bel.downloading - INFO - downloading https://zenodo.org/record/173258/files/pubchem.chembl.dataset4publication_inchi_smiles.tsv.xz?download=1 to /Users/cthoyt/.bio2bel/excape/pubchem.chembl.dataset4publication_inchi_smiles.tsv.xz
35it [55:24, 98.78s/it]                                                                                                                            Traceback (most recent call last):                                                                                                                   
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1236, in _execute_context
    cursor, statement, parameters, context
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 536, in do_execute
    cursor.execute(statement, parameters)
psycopg2.IntegrityError: duplicate key value violates unique constraint "excape_interaction_chemical_id_target_id_db_assay_id_key"
DETAIL:  Key (chemical_id, target_id, db, assay_id)=(50238, 16, chembl20, 845169) already exists.


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/manager/abstract_manager.py", line 38, in populate_wrapped
    cls._populate_original(self, *populate_args, **populate_kwargs)
  File "/Users/cthoyt/dev/excape/src/bio2bel_excape/manager.py", line 71, in populate
    self.session.commit()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/scoping.py", line 162, in do
    return getattr(self.registry(), name)(*args, **kwargs)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 1023, in commit
    self.transaction.commit()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 487, in commit
    self._prepare_impl()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 466, in _prepare_impl
    self.session.flush()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 2446, in flush
    self._flush(objects)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 2584, in _flush
    transaction.rollback(_capture_exception=True)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/util/langhelpers.py", line 67, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 277, in reraise
    raise value
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 2544, in _flush
    flush_context.execute()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/unitofwork.py", line 416, in execute
    rec.execute(self)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/unitofwork.py", line 583, in execute
    uow,
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/persistence.py", line 245, in save_obj
    insert,
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/persistence.py", line 1116, in _emit_insert_statements
    statement, params
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 980, in execute
    return meth(self, multiparams, params)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/sql/elements.py", line 273, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1099, in _execute_clauseelement
    distilled_params,
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1240, in _execute_context
    e, statement, parameters, cursor, context
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1458, in _handle_dbapi_exception
    util.raise_from_cause(sqlalchemy_exception, exc_info)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 296, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 276, in reraise
    raise value.with_traceback(tb)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1236, in _execute_context
    cursor, statement, parameters, context
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 536, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.IntegrityError: (psycopg2.IntegrityError) duplicate key value violates unique constraint "excape_interaction_chemical_id_target_id_db_assay_id_key"
DETAIL:  Key (chemical_id, target_id, db, assay_id)=(50238, 16, chembl20, 845169) already exists.
 [SQL: 'INSERT INTO excape_interaction (chemical_id, target_id, db, assay_id, pxc50, activity_flag) VALUES (%(chemical_id)s, %(target_id)s, %(db)s, %(assay_id)s, %(pxc50)s, %(activity_flag)s) RETURNING excape_interaction.id'] [parameters: {'chemical_id': 50238, 'target_id': 16, 'db': 'chembl20', 'assay_id': 845169, 'pxc50': 5.99, 'activity_flag': 'A'}] (Background on this error at: http://sqlalche.me/e/gkpj)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/cthoyt/.virtualenvs/hbp/bin/bio2bel_excape", line 11, in <module>
    load_entry_point('bio2bel-excape', 'console_scripts', 'bio2bel_excape')()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/click/decorators.py", line 27, in new_func
    return f(get_current_context().obj, *args, **kwargs)
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/manager/abstract_manager.py", line 320, in populate
    manager.populate()
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/manager/abstract_manager.py", line 40, in populate_wrapped
    self._store_populate_failed()
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/manager/connection_manager.py", line 93, in _store_populate_failed
    Action.store_populate_failed(self.module_name, session=self.session)
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/models.py", line 95, in store_populate_failed
    _store_helper(action, session=session)
  File "/Users/cthoyt/dev/bio2bel/src/bio2bel/models.py", line 140, in _store_helper
    session.commit()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/scoping.py", line 162, in do
    return getattr(self.registry(), name)(*args, **kwargs)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 1023, in commit
    self.transaction.commit()
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 485, in commit
    self._assert_active(prepared_ok=True)
  File "/Users/cthoyt/.virtualenvs/hbp/lib/python3.7/site-packages/sqlalchemy/orm/session.py", line 288, in _assert_active
    % self._rollback_exception
sqlalchemy.exc.InvalidRequestError: This Session's transaction has been rolled back due to a previous exception during flush. To begin a new transaction with this Session, first issue Session.rollback(). Original exception was: (psycopg2.IntegrityError) duplicate key value violates unique constraint "excape_interaction_chemical_id_target_id_db_assay_id_key"
DETAIL:  Key (chemical_id, target_id, db, assay_id)=(50238, 16, chembl20, 845169) already exists.
 [SQL: 'INSERT INTO excape_interaction (chemical_id, target_id, db, assay_id, pxc50, activity_flag) VALUES (%(chemical_id)s, %(target_id)s, %(db)s, %(assay_id)s, %(pxc50)s, %(activity_flag)s) RETURNING excape_interaction.id'] [parameters: {'chemical_id': 50238, 'target_id': 16, 'db': 'chembl20', 'assay_id': 845169, 'pxc50': 5.99, 'activity_flag': 'A'}] (Background on this error at: http://sqlalche.me/e/gkpj)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions