AO race condition leads to AO deadlock on DB migration

Description

When we migrate between DBs, we first create AO promises:

Then we almost immediately kill the executor:

In effect, we end up with promises that never get executed and the instance blocks when it needs to use AO.
Rather than using ThreadPoolExecutor#shutdownNow we should use ThreadPoolExecutor#shutdown.

Environment

None

Testing Notes

Add notes...

Assignee

Kamil Cichy

Reporter

Kamil Cichy

Labels

None

Add-on Type

None

Team

None

CC

None

Risk factor

None

QA Kickoff Status

None

QA Demo Status

None

Affects versions

Priority

Minor
Configure