For JDBC endpoints only, SAP Mobile Platform tests all UPDATE and DELETE operations for the number
of rows affected in the JDBC backend (This does not apply for JDBC UPDATE/DELETE
operations modeled with a stored procedure). If more than one row was affected for
an UPDATE or DELETE operation, SAP Mobile Platform
creates an error log entry for the client that simply indicates
"
com.sybase.vader.da.jdbc.MinCheckAffectedRowCountException" has
been encountered on SAP Mobile Server. The cause of
the exception is application-specific and could mean several things:
- The predicate definition of the UPDATE or DELETE operation
is invalid.
- The backend RDBMS no longer contains a row that matches the
predicate of the UPDATE or DELETE operation.
- The client application passes in an invalid parameter to the
UPDATE or DELETE operation and therefore the predicate of the UPDATE or
DELETE operation is failing.
For example, a client deletes a record and synchronizes, and a second client
attempts to update the deleted record and synchronizes. The second client correctly
receives a replay failure with an error log entry
"
com.sybase.vader.da.jdbc.MinCheckAffectedRowCountException:null",
and the information returned when the
onReplayFailure callback method is invoked for the entity is empty.
Since only the "surrogate" key is available and this fails to find a record, any
failure message itself is meaningless.