Revision 5450
Added by Aaron Marcuse-Kubitza over 12 years ago
lib/sql_io.py | ||
---|---|---|
642 | 642 |
# supported |
643 | 643 |
assert not join_cols |
644 | 644 |
|
645 |
if e.cond != None: ignore_cond(e.cond, e, passed=True) |
|
646 |
|
|
645 | 647 |
join_cols.update(util.dict_subset_right_join(mapping, e.cols)) |
646 | 648 |
log_debug('Ignoring existing rows, comparing on these columns:\n' |
647 | 649 |
+strings.as_inline_table(join_cols, ustr=col_ustr)) |
Also available in: Unified diff
sql_io.py: put_table(): DuplicateKeyException: Fixed bug where indexes with conditions needed to have the input rows filtered by the condition, to prevent trying to retrieve an existing/inserted row using a join on the index columns when the index in fact does not apply. This fixes a bug in the import of taxonconcept where the taxonconcept_0_unique_identifying_name unique index has a condition which was not satisfied for input rows with no identifyingtaxonomicname, causing any input row with NULL in this column to match all taxonconcepts with a NULL identifyingtaxonomicname. This uses ignore_cond()'s new support for constraints that did not fail at least once.