Support Article
"Mutation of bytes is too large" Exception by apache-cassandra
SA-57571
Summary
Apache Cassandra discards mutations that are larger than a predetermined size.
Error Messages
java.lang.RuntimeException: java.lang.IllegalArgumentException: Mutation of xxxx bytes is too large for the maximum size of yyyy
at org.apache.cassandra.service.StorageProxy$HintRunnable.run(StorageProxy.java:2312) ~[apache-cassandra-2.1.14.jar:2.1.14]
Steps to Reproduce
Run the dataflow batch. Batch execution fails with timeout exception.
Root Cause
By design intent, the maximum allowed segment size is 50% of the configured commit_log_segment_size_in_mb. As the segment size exceeds 50% of the configured commit log segment size, the error displays and Cassandra discards the write.
Resolution
Perform the following local-change:
- Increase or set commit_log_segment_size_in_mb in cassandra.yaml file through prconfig.xml as <env name="dnode/yaml/commitlog_segment_size_in_mb" value="Value_in_mb"/>.
- Restart the server after applying the above modification.
Tags:
Published July 23, 2018 - Updated December 2, 2021
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.