I just ran into this issue :
I registered a new user manually. Due to a bug in some code I was
testing, the image did not get created.
So I fixed the code and re-tried - using the same username again.
Guess what ?
a) Firstly, the AJAX check that used to be there where it would tell us
'Valid username' or not seems to have disappeared.
b) The operation failed with Duplicate Key exception, claiming that the
user already exists. This even though, the previous operation had
clearly failed.
I know Akara fixed up the transactions such that we first add the
database row, then add the uploaded files and finally go back and modify
the database to fix the URLs for the images. All of this is obviously
not being done within one database transaction.
If we do want to use multiple transactions for performance reasons, then
don't we need to ensure that any failure after anything is added to
the database undoes that change ?
Shanti