I don't know if it matters much, but this is a regression in the way errors are handled and returned to the user. The ``error_message`` parameter is widely used to make sure we return descriptive error messages when something wrong happens. I am a bit concerned that it won't be the case anymore. Can't we add a ``try`` around the transaction to catch errors?