Feature Request
Is your feature request related to a problem? Please describe:
For some tables with duplication enabled, blocking non-idempotent writes is not strictly required in production.
Duplication does not support non-idempotent write operations (INCR, CHECK_AND_SET, CHECK_AND_MUTATE)
In mutation_batch::add_mutation_if_valid, all non-idempotent writes are skipped:
if (!task_spec::get(update.code)->rpc_request_is_write_idempotent) {
continue;
}
In replica::need_reject_non_idempotent, non-idempotent writes are rejected:
return !spec->rpc_request_is_write_idempotent;
Describe the feature you'd like:
Support Duplication to send non-idempotent write operations (INCR, CHECK_AND_SET, CHECK_AND_MUTATE).
Feature Request
Is your feature request related to a problem? Please describe:
For some tables with duplication enabled, blocking non-idempotent writes is not strictly required in production.
Duplication does not support non-idempotent write operations (INCR, CHECK_AND_SET, CHECK_AND_MUTATE)
In
mutation_batch::add_mutation_if_valid, all non-idempotent writes are skipped:In replica::need_reject_non_idempotent, non-idempotent writes are rejected:
Describe the feature you'd like:
Support Duplication to send non-idempotent write operations (INCR, CHECK_AND_SET, CHECK_AND_MUTATE).