Database Protocols Are Underwhelming
byroot.github.io
byroot.github.io
Even with the ability to detect that something is a retry, there are more wrinkles, like a query that involves NOW() which would be correct to run now-now [0], but would not accomplish the desired result if run 15 seconds later. Or uses of RAND(), unless there's some control over the seed.