[
https://issues.apache.org/jira/browse/CASSANDRA-18500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17721750#comment-17721750
]
Andres de la Peña commented on CASSANDRA-18500:
-----------------------------------------------
The proposed patch adds a new guardrail for partition size that is checked when
writing a sstable (flush, compaction, etc.):
||PR||CI||
|[trunk|https://github.com/apache/cassandra/pull/2321]|[j8|https://app.circleci.com/pipelines/github/adelapena/cassandra/2890/workflows/3702a648-179c-4536-b004-bd8297c34a53]
[j11|https://app.circleci.com/pipelines/github/adelapena/cassandra/2890/workflows/301bdae4-0683-40d1-8939-6a2d2ac0edcb]|
Triggering the failure threshold will emit an ERROR log message and a
diagnostic event, but it won't abort the sstable write operation.
This guardrail replaces the current
{{compaction_large_partition_warning_threshold}} property, which is now marked
as deprecated. Both checks will exist until we remove
{{compaction_large_partition_warning_threshold}} on the next major. The reason
for keeping both properties and not just renaming
{{compaction_large_partition_warning_threshold}} to
{{partition_size_warn_threshold}} is that the behaviour, log messages, etc. are
slightly different.
It's worth mentioning that the previously existing
{{compaction_large_partition_warning_threshold}}:
* Isn't actually triggered only on compaction, but on any sstable write.
* Cannot be dynamically updated.
* Doesn't emit any kind of diagnostic events.
The new guardrail uses standarized guardrail config, messages and JMX methods.
It can be dynamically updated and it emits diagnostic events on triggering.
> Add guardrail for partition size
> --------------------------------
>
> Key: CASSANDRA-18500
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18500
> Project: Cassandra
> Issue Type: New Feature
> Components: Feature/Guardrails
> Reporter: Andres de la Peña
> Assignee: Andres de la Peña
> Priority: Normal
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Add a guardrail for max partition size, for example:
> {code:java}
> partition_size_warn_threshold: 50MiB
> partition_size_fail_threshold: 100MiB
> {code}
> Most probably this guardrail would only be checked when writing a new sstable
> to disk (fush/compact). Triggering the guardrail on sstable write would emit
> a log message and a diagnostic event, but it wouldn't reject the write.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]