any kind of error will abort the insert