Add mapper documentation on partial update of UDTs

Description

NullSavingStrategy.DO_NOT_SET relies on a protocol feature that transparently indicates to the server that any bound variable that is not present in the EXECUTE message should be considered "unset", see CASSANDRA-7304. The mapper uses this feature to be able to prepare one single statement per DAO method, and be able to execute that same prepared statement regardless of the fact that the actual bound variables can be null/unset.

This applies to bound variables, which means that, at least for queries that the mapper can generate automatically, it can only apply to columns in a table, not to UDTs or tuples.

However there might be a workaround: use a Query method and specify different bound variables to each UDT field you want to update:

Then use NullSavingStrategy.DO_NOT_SET as you normally would and each field will only be updated if the corresponding bound variable is non-null.

Document this in our mapper documentation.

Environment

None

Pull Requests

None

Assignee

Unassigned

Reporter

Maxim Kislekov

Labels

PM Priority

None

Affects versions

Fix versions

Pull Request

None

Doc Impact

None

Size

None

External issue ID

None

External issue ID

None

Priority

Minor
Configure