[ 
https://issues.apache.org/jira/browse/CASSANDRA-21179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stefan Miklosovic updated CASSANDRA-21179:
------------------------------------------
    Description: 
After CASSANDRA-21178 where we introduced created_at column to dict table, we 
can move forward with the check which ensures that a user is not over-training, 
or they can not train / import at all. 

1) by default, there would be a minimum time between training / importing is 
enabled
2) Default would be, for example, 1 hour, and it would be configurable
3) The configuration would be done CQL level in compression parameters, that 
way all nodes would see same values due to TCM schema propagation, so this can 
not be attacked by "round-robin" training, node by node
4) If we want to disable training / importing completely, we would set minimum 
training frequency to "0" (0h, 0s ...). This means that if we want to allow 
training again, an operator would need to raise this value, then the last 
training would still need to occur at least so and so time back to be able to 
train again. 

It would be better if "no training allowed" is represented by high value, like 
100 years, (36500 days) instead of 0. Setting it to 0 seems like an exception / 
corner case which is not intuitive to follow, as one would say that 0 means 
that we can train whenever we want. 0 should be the default. Not 1 hour. 

  was:
After CASSANDRA-21178 where we introduced created_at column to dict table, we 
can move forward with the check which ensures that a user is not over-training, 
or they can not train / import at all. 

1) by default, there would be a minimum time between training / importing is 
enabled
2) Default would be, for example, 1 hour, and it would be configurable
3) The configuration would be done CQL level in compression parameters, that 
way all nodes would see same values due to TCM schema propagation, so this can 
not be attacked by "round-robin" training, node by node
4) If we want to disable training / importing completely, we would set minimum 
training frequency to "0" (0h, 0s ...). This means that if we want to allow 
training again, an operator would need to raise this value, then the last 
training would still need to occur at least so and so time back to be able to 
train again. 


> Introduce a check for minimum time passed before importing / training of a 
> compression dictionary is allowed
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-21179
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-21179
>             Project: Apache Cassandra
>          Issue Type: Improvement
>          Components: Feature/Compression
>            Reporter: Stefan Miklosovic
>            Assignee: Stefan Miklosovic
>            Priority: Normal
>             Fix For: 5.x
>
>
> After CASSANDRA-21178 where we introduced created_at column to dict table, we 
> can move forward with the check which ensures that a user is not 
> over-training, or they can not train / import at all. 
> 1) by default, there would be a minimum time between training / importing is 
> enabled
> 2) Default would be, for example, 1 hour, and it would be configurable
> 3) The configuration would be done CQL level in compression parameters, that 
> way all nodes would see same values due to TCM schema propagation, so this 
> can not be attacked by "round-robin" training, node by node
> 4) If we want to disable training / importing completely, we would set 
> minimum training frequency to "0" (0h, 0s ...). This means that if we want to 
> allow training again, an operator would need to raise this value, then the 
> last training would still need to occur at least so and so time back to be 
> able to train again. 
> It would be better if "no training allowed" is represented by high value, 
> like 100 years, (36500 days) instead of 0. Setting it to 0 seems like an 
> exception / corner case which is not intuitive to follow, as one would say 
> that 0 means that we can train whenever we want. 0 should be the default. Not 
> 1 hour. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to