The verify_batch_size() check was applied to all batches before determining mutate_atomic, causing unnecessary failures for batches that never touch system.batchlog. Only logged multi-partition batches (mutate_atomic=true) are stored as blobs in system.batchlog and require size validation.
Changed:
* Moved verify_batch_size() call in execute_without_conditions() directly
into the logged multi-partition branch for clearer intent
* The check is now placed exactly where mutate_atomic=true, making the
code more intuitive
Result:
Batch Type Single-Partition Size Check
LOGGED false YES
LOGGED true NO
UNLOGGED N/A NO
Tests:
* test_unlogged_batch_size_not_checked: Unlogged batch >1024KB succeeds
* test_logged_multi_partition_batch_size_checked: Logged multi-partition batch >1024KB fails
* test_logged_single_partition_batch_size_not_checked: Logged single-partition batch >1024KB succeeds
Fixes#27605
Co-authored-by: mykaul <yaniv.kaul@scylladb.com>