[r=blake-rouse][bug=1458895][author=allenap] Use non-transactional advisory locks when starting the region and setting up the event-loop.
Previously locks were obtained after the transaction had begun. This meant that, once the lock was acquired, the transaction may be working with stale data, resulting in serialization failures at best.