[ https://issues.apache.org/jira/browse/CASSANDRA-17147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17451450#comment-17451450 ]
David Capwell commented on CASSANDRA-17147: ------------------------------------------- {code} # Guardrail to warn or fail when creating more user tables than threshold. Defaults to -1 to disable. tables: warn_threshold: -1 fail_threshold: -1 # Guardrail to warn or fail when creating more columns per table than threshold. Defaults to -1 to disable. columns_per_table: warn_threshold: -1 fail_threshold: -1 # Guardrail to warn or fail when creating more secondary indexes per table than threshold. Defaults to -1 to disable. secondary_indexes_per_table: warn_threshold: -1 fail_threshold: -1 # Guardrail to warn or fail when creating more materialized views per table than threshold. Defaults to -1 to disable. materialized_views_per_table: warn_threshold: -1 fail_threshold: -1 # Guardrail to ignore or reject properties when creating tables. By default all properties are allowed. table_properties: ignored_values: [] disallowed_values: [] {code} LGTM; though would drop "_values" in table_properties {code} validate("guardrails.materialized_views_per_table") {code} we did the same for TrackWarnings; LGTM. If we assume the nested convo doesn't get flat out rejected (mostly people are positive to it) then CASSANDRA-17166 can fix your concerns for getter/setters; I know that the yaml will be interesting with your patch, but prefer CASSANDRA-17166 fixes those issues rather than you dealing with it in this patch (your getter/setters are currently exposed as camel case in yaml; found the same bug in TrackWarnings). Once you merge into the PR can view whole patch together; think we are close! > Guardrails prototype > -------------------- > > Key: CASSANDRA-17147 > URL: https://issues.apache.org/jira/browse/CASSANDRA-17147 > Project: Cassandra > Issue Type: New Feature > Components: Feature/Guardrails > Reporter: Andres de la Peña > Assignee: Andres de la Peña > Priority: Normal > Fix For: 4.x > > Time Spent: 14h 50m > Remaining Estimate: 0h > > The purpose of this ticket is creating an initial implementation of the > guardrails framework, as well as adding a few simple guardrails using this > framework. > To keep things easy, this initial implementation would only support > guardrails that are triggered on the coordinator, and they would be > dynamically updatable only through JMX. > Once we have this initial framework ready in a feature branch we can have > multiple tickets addressing all the things that would have been left out of > the scope of this ticket, such as: > * Dynamic updates through virtual tables > * Being able to notify about guardrails triggered on replicas > * Using custom exceptions other than {{InvalidRequestException}}. > * Porting existing limits to use the new guardrails framework > * Adding new guardrails beyond the initial ones > The reason for having this simpler prototype is that it will give us a common > ground to parallelize work on the parts mentioned above. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org