risingwave_stream::executor::dml

Constant MAX_CHUNK_FOR_ATOMICITY

source
const MAX_CHUNK_FOR_ATOMICITY: usize = 32;
Expand description

If a transaction’s data is less than MAX_CHUNK_FOR_ATOMICITY * CHUNK_SIZE, we can provide atomicity. Otherwise, it is possible that part of transaction’s data is sent to the downstream without barrier boundaries. There are some cases that could cause non-atomicity for large transaction. 1. The system crashes. 2. Actor scale-in or migration. 3. Dml’s batch query error occurs at the middle of its execution. (e.g. Remove UDF function server become unavailable).