Add regression test for bug 1824435
This adds a regression test in our post test hook. We are not able to do a similar test in the unit or functional tests because SQLite does not provide any isolation between transactions on the same database connection [1] and the bug can only be reproduced with the isolation that is present when using a real MySQL database. Related-Bug: #1824435 [1] https://www.sqlite.org/isolation.html Change-Id: I204361d6ff7c2323bc744878d8a9fa2d20a480b1
This commit is contained in:
parent
27818dd607
commit
7c41365f19
@ -22,7 +22,10 @@ function archive_deleted_rows {
|
||||
if [[ $RET -gt 1 ]]; then
|
||||
echo Archiving failed with result $RET
|
||||
return $RET
|
||||
elif [[ $RET -eq 0 ]]; then
|
||||
# When i = 1, we only archive cell0 (without --all-cells), so run at
|
||||
# least twice to ensure --all-cells are archived before considering
|
||||
# archiving complete.
|
||||
elif [[ $RET -eq 0 && $i -gt 1 ]]; then
|
||||
echo Archiving Complete
|
||||
break;
|
||||
fi
|
||||
@ -250,3 +253,26 @@ if [[ "$my_key" == "" ]]; then
|
||||
echo "During heal port allocation our extra key in the binding:profile was deleted."
|
||||
exit 2
|
||||
fi
|
||||
|
||||
echo "Verifying online_data_migrations idempotence"
|
||||
# We will re-use the server created earlier for this test. (A server needs to
|
||||
# be present during the run of online_data_migrations and archiving).
|
||||
|
||||
# Run the online data migrations before archiving.
|
||||
$MANAGE db online_data_migrations
|
||||
|
||||
# We need to archive the deleted marker instance used by the
|
||||
# fill_virtual_interface_list online data migration in order to trigger
|
||||
# creation of a new deleted marker instance.
|
||||
set +e
|
||||
archive_deleted_rows
|
||||
|
||||
# Verify whether online data migrations run after archiving will succeed.
|
||||
# See for more details: https://bugs.launchpad.net/nova/+bug/1824435
|
||||
$MANAGE db online_data_migrations
|
||||
rc=$?
|
||||
set -e
|
||||
if [[ $rc -ne 2 ]]; then
|
||||
echo "Expected return code 2 from online_data_migrations until bug 1824435 is fixed"
|
||||
exit 2
|
||||
fi
|
||||
|
Loading…
x
Reference in New Issue
Block a user