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

Ekaterina Dimitrova commented on CASSANDRA-17725:
-------------------------------------------------

As agreed on the Mailing list I went for error out in the old megabits int JMX 
methods.

Further to that, I realized that we better move the 4 properties to 
LongBytesBound internally so that we do not struggle internally with megabits 
to mebibytes and the opposite as the Rate Limiter is also getting bytes anyway. 
Also, this will help with another ticket (CASSANDRA-17677) where if we keep the 
mebibytes/s internally we should do a bunch of not needed calculations. CC 
[~frankgh] 

Now the issue that [CI reminded me 
of|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=test-bytes-4.1]
 is that JMX getters should not throw exceptions. (Please check the in-jvm 
failure - org.apache.cassandra.distributed.test.jmx.JMXGetterCheckTest.test, 
the other 2 were test issues that I already fixed) We can error out in nodetool 
I guess but tools as JConsole will just output Unavailable the attribute which 
is bad. :( 

So I guess what we can do is to add double version of those methods and 
deprecate the old ones? Nodetool I guess we can make to error out but the JMX 
methods - we will have to leave to round and put in bold everywhere a point 
about the rounding - the docs, the NEWS.txt, CHANGES.txt and we can even make a 
point on social media...

What do you think about that?

This is the new branch where the latest suggestion resides: 
[4.1|https://github.com/apache/cassandra/compare/trunk...ekaterinadimitrova2:cassandra:test-bytes-4.1]
 , the last two commits

> Add a flag for throughput in MiB/s for nodetool setstreamthroughput, 
> getstreamthroughput, setinterdcstreamthroughput and 
> getinterdcstreamthroughput 
> ----------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-17725
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17725
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tool/nodetool
>            Reporter: Ekaterina Dimitrova
>            Assignee: Ekaterina Dimitrova
>            Priority: Normal
>             Fix For: 4.1-beta, 4.x
>
>
> As we agreed not to add new JMX methods for the new config on the mailing 
> list, we need at least new flags for setstreamthroughput and 
> interdcstreamthroughput for the two 4.0 parameters to be set/get also in MiB, 
> not only in megabits.
> Thus we will have the option either to use the old version for those 2, or to 
> be able to set/get in MiB all 4 streaming parameters. As of 4.1 supported 
> units for DataRateSpec are MiB/s, B/s, KiB/s, megabit is only for legacy from 
> 4.0 - backward compatibility. 
> To be sure we satisfy the requirements around the latest discussions about 
> backward compatibility in tools, I will use this ticket also to make a final 
> pass on the unit changes done, to ensure the probe output is not affected.



--
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