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

Benedict Elliott Smith commented on CASSANDRA-15234:
----------------------------------------------------

Thanks Caleb for the reminder.  I've pushed another approach, that groups 
options by the reason the operator cares about them, namely: {{cluster}}-wide 
settings (partitioner, token etc), {{disk}} options that specify strategy, 
throttle throughput etc, {{memory}} options that allocate heap or direct memory 
resources, {{concurrency}} that constrain the number of operations or threads 
committed to tasks, {{internode}} and {{client}} networking options, 
{{feature}} options and {{log}} options for our warning thresholds etc.  It was 
taking a while, and it might not be well received, so I only went about 90% of 
the way so that the approach can receive some feedback.  Obviously, this would 
necessitate a different approach to the headline comments, wherein we might 
want to list the parameters users might care about in prose alongside 
explanations for why they might care.

I personally would like to propose we also introduce a dual system for updating 
properties, wherein we can accept the nested namespace versions, as well as 
e.g. dot-delimited versions.  e.g. {{disk.throttle.compaction: 10MiB/s}}

[~e.dimitrova]: in going through the yaml, I noticed that you have used mbps in 
many places, but I thought we had previously agreed that any {{bps}} was 
ambiguous, since it can mean bits or bytes?  I thought we had settled on MiB/s 
so that there could be no ambiguity?  (Since MB/s is also ambiguous - 
technically meaning 1000s, but often meaning powers of 2)?

> Standardise config and JVM parameters
> -------------------------------------
>
>                 Key: CASSANDRA-15234
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15234
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local/Config
>            Reporter: Benedict Elliott Smith
>            Assignee: Ekaterina Dimitrova
>            Priority: Normal
>             Fix For: 4.0-beta
>
>         Attachments: CASSANDRA-15234-3-DTests-JAVA8.txt
>
>
> We have a bunch of inconsistent names and config patterns in the codebase, 
> both from the yams and JVM properties.  It would be nice to standardise the 
> naming (such as otc_ vs internode_) as well as the provision of values with 
> units - while maintaining perpetual backwards compatibility with the old 
> parameter names, of course.
> For temporal units, I would propose parsing strings with suffixes of:
> {{code}}
> u|micros(econds?)?
> ms|millis(econds?)?
> s(econds?)?
> m(inutes?)?
> h(ours?)?
> d(ays?)?
> mo(nths?)?
> {{code}}
> For rate units, I would propose parsing any of the standard {{B/s, KiB/s, 
> MiB/s, GiB/s, TiB/s}}.
> Perhaps for avoiding ambiguity we could not accept bauds {{bs, Mbps}} or 
> powers of 1000 such as {{KB/s}}, given these are regularly used for either 
> their old or new definition e.g. {{KiB/s}}, or we could support them and 
> simply log the value in bytes/s.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to