MAYBE I LIKE IT WHEN THE STACK IS THAT DEEP
make transaction boundary and locks as short as possible.