[ 
https://issues.apache.org/jira/browse/CASSANDRA-17212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17478000#comment-17478000
 ] 

Andres de la Peña commented on CASSANDRA-17212:
-----------------------------------------------

I understand that guardrails would perfectly map to the sections 
{{limits.warn}} and {{limits.fail}} of that config, and it would be quite easy 
to add something equivalent to {{limits.info}} into guardrails. Those sections 
are mostly a transposed version of what guardrails would look like once we have 
CASSANDRA-15234 ready and if we rename them to {{{}limits{}}}:
{code:java}
limits:
  enabled: true
  gc_pause:
    info: 200ms
    warn: 1000ms
  large_partition:
    warn: 100mb
  tombstones:
    warn: 1000
    fail: 100000 
  batch_size:
    warn: 5kb 
    fail: 50kb 
  partitions_in_unlogged_batch:
    warn: 10
  corrupt_value_size:
    fail: 256mb
{code}
Indeed, if we decide to go for that format, the current guardrails would make 
the transition easier. We would simply transpose the current yaml format to the 
suggested one, and we would move the other specific limits 
({{{}concurrency{}}}, {{{}throughput{}}}, etc.) into the {{limits}} key/class. 
I think that the internal components of the guardrails framework would remain 
mostly unchanged. Those internal reusable components are IMO the most useful 
part of guardrails, since they allow us to add new limits in an easy and 
consistent way, independently on how we organize the yaml.

Then there is the question on whether we want some of those limits to be 
globally enabled/disabled, and whether they apply to super users and/or 
internal queries, and if we are going explicitly show that in the yaml, maybe 
with separate sections in the yaml (for example {{limits}} and 
{{{}safety_limits{}}}, or {{system_limit}} and {{{}user_limits{}}}, or etc.).

> Migrate threshold for minimum keyspace replication factor to guardrails
> -----------------------------------------------------------------------
>
>                 Key: CASSANDRA-17212
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17212
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Feature/Guardrails
>            Reporter: Andres de la Peña
>            Priority: Normal
>
> The config property 
> [{{minimum_keyspace_rf}}|https://github.com/apache/cassandra/blob/5fdadb25f95099b8945d9d9ee11d3e380d3867f4/conf/cassandra.yaml]
>  that was added by CASSANDRA-14557 can be migrated to guardrails, for example:
> {code}
> guardrails:
>     ...
>     replication_factor:
>         warn_threshold: 2
>         abort_threshold: 3
> {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to