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

Julian Hyde commented on CALCITE-1941:
--------------------------------------

[~maryannxue], Reviewing 
https://github.com/apache/calcite/pull/515/commits/68cdbab99bcbd719b8159833e4fe16718ec3a101:
* Can you please add more description of the proposed changes to this JIRA case;
* Should we also change {{Schema.contentsHaveChangedSince(long, long)}}?
* In SchemaVersion please state the partial order contract more explicitly: 
reflexive: if a.equals(b) then a.lessThanOrEqualTo(b); transitive: if a. 
lessThanOrEqualTo(b) and b. lessThanOrEqualTo(c) then a.lessThanOrEqualTo(c); 
anti-symmetric: if a.lessThanOrEqualTo(b) and !a.equals(b) then 
!b.lessThanOrEqualTo(a); also, implementations must override equals, hashCode 
and toString.
* I notice that distributed systems clocks e.g. [Lamport 
timestamps|https://en.wikipedia.org/wiki/Lamport_timestamps] typically use a 
*strict* partial order (i.e. {{!a.happensBefore(a)}}). Do you think ours be 
strict also?

> Refine interface Schema#snapshot()
> ----------------------------------
>
>                 Key: CALCITE-1941
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1941
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.13.0
>            Reporter: Maryann Xue
>            Assignee: Maryann Xue
>            Priority: Minor
>             Fix For: 1.14.0
>
>
> The current Schema#snapshot(long timestamp) interface is limited, for it 
> assumes that users only use timestamp for schema version control, thus we 
> need something new to replace the "timestamp" parameter.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to