Activity log for bug #1727266

Date Who What changed Old value New value Message
2017-10-25 10:04:20 Belmiro Moreira bug added bug
2017-10-25 10:04:28 Belmiro Moreira nova: assignee Belmiro Moreira (moreira-belmiro-email-lists)
2017-10-25 11:33:31 Belmiro Moreira description Description =========== Archive deleted instances first moves deleted rows to the shadow tables and then deletes the rows from the original tables. However, because it does 2 different selects (to get the rows to insert and to delete) we can have the case that a row is not inserted in the shadow table but removed from the original. This can happen when there are new deleted rows between the insert and delete. Shouldn't we deleted explicitly only the IDs that were inserted? See: insert = shadow_table.insert(inline=True).\ from_select(columns, sql.select([table], deleted_column != deleted_column.default.arg). order_by(column).limit(max_rows)) query_delete = sql.select([column], deleted_column != deleted_column.default.arg).\ order_by(column).limit(max_rows) delete_statement = DeleteFromSelect(table, query_delete, column) (...) conn.execute(insert) result_delete = conn.execute(delete_statement) Description =========== Archive deleted instances first moves deleted rows to the shadow tables and then deletes the rows from the original tables. However, because it does 2 different selects (to get the rows to insert and to delete) we can have the case that a row is not inserted in the shadow table but removed from the original. This can happen when there are new deleted rows between the insert and delete. Shouldn't we delete explicitly only the IDs that were inserted? See:     insert = shadow_table.insert(inline=True).\         from_select(columns,                     sql.select([table],                                deleted_column != deleted_column.default.arg).                     order_by(column).limit(max_rows))     query_delete = sql.select([column],                           deleted_column != deleted_column.default.arg).\                           order_by(column).limit(max_rows)     delete_statement = DeleteFromSelect(table, query_delete, column) (...)             conn.execute(insert)             result_delete = conn.execute(delete_statement)
2017-10-25 13:14:26 Surya Seetharaman bug added subscriber Surya Seetharaman
2017-10-26 04:21:53 Takashi Natsume tags db
2017-10-26 04:22:21 Takashi Natsume tags db db nova-manage
2017-10-26 04:23:13 Takashi Natsume nova: status New In Progress
2017-10-30 14:14:31 Surya Seetharaman nova: assignee Belmiro Moreira (moreira-belmiro-email-lists) Surya Seetharaman (tssurya)
2017-12-07 21:12:20 melanie witt nova: importance Undecided Medium
2018-01-17 00:20:29 OpenStack Infra nova: status In Progress Fix Released