Wtimeout - What happens if it is exceeded, to the data written?

If we use the premise of catching the wtimeout issue in the appplication code, and retrying with an upsert using a unique key.

The problem that caused the wtimeout, may still be prevalant, at which point we may have written the data, or may not, but because the application doesn’t know even after a retry.

The application, can report to the user, that things are not working (Please try again later), but we have this piece of data which is potentially incomplete, from a processing point of view.

How would one manage this orphan data? Just accept, it is incomplete, and move on? Coding around the issue of incomplete data?

From my previous background, the process would have been one complete transaction, committed in it’s entirety at the end of the process (Depending on size of the transaction of course), using a before image if we had to roll back.

1 Like