Why it can't? It can raise exception.
Yeah, I understand that it need to run in finally, and you can just run them in safety order
```
        finally:
            msg.ack()
            db().expire_all()
```