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

Sylvain Lebresne commented on CASSANDRA-14708:
----------------------------------------------

The duration time has been added primarily for doing aggregations over time, 
and if you want to aggregate things by months, you don't want that to be all 
messed up because you have to provide a time in nanoseconds which gives you no 
way to get proper month boundaries. Overall, we cannot use nanoseconds for 
duration in the way duration are currently implemented and used (including user 
visible duration values like {{3m2d5s}}).

I just don't think our duration type and the similarly-named Golang one have 
the same purpose. It might be a shame they have the same name, but well... 

I'll also note this all went in C* 3.10, so it's not like we can really change 
the goals of the duration type now even if we agreed this was a good idea (I 
don't).

 

> protocol v5 duration wire format is overly complex and awkward to implement 
> for clients
> ---------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-14708
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14708
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Chris Bannister
>            Priority: Major
>
> Protocol V5 defines the duration type to be on the wire as months, days and 
> nanoseconds. Days and months require a timezone to make sense of the duration 
> and varies depending on from which they are applied for.
>  
> Go defines a [duration|https://golang.org/pkg/time/#Duration] type as 
> nanoseconds in int64 which can represent ~290 years. Java 
> [duration|https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html] 
> does not have way to handle months.
>  
> I suggest that before 4.0 is release the duration format is converted to just 
> be represented as nanoseconds.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to