You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Zheng Hu (JIRA)" <ji...@apache.org> on 2019/08/17 02:33:00 UTC

[jira] [Updated] (HBASE-22841) TimeRange's factory functions do not support ranges, only `allTime` and `at`

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

Zheng Hu updated HBASE-22841:
-----------------------------
    Fix Version/s: 2.1.6
                   2.2.1
                   2.0.6
                   2.3.0
                   3.0.0

> TimeRange's factory functions do not support ranges, only `allTime` and `at`
> ----------------------------------------------------------------------------
>
>                 Key: HBASE-22841
>                 URL: https://issues.apache.org/jira/browse/HBASE-22841
>             Project: HBase
>          Issue Type: Improvement
>          Components: Client
>    Affects Versions: 2.2.0, 2.1.5
>            Reporter: Huon Wilson
>            Assignee: Huon Wilson
>            Priority: Major
>             Fix For: 3.0.0, 2.3.0, 2.0.6, 2.2.1, 2.1.6
>
>
> The {{org.apache.hadoop.hbase.io.TimeRange}} is used in functions like {{org.apache.hadoop.hbase.client.Table.CheckAndMutateBuilder#timeRange}}.
> The current ways to create a {{TimeRange}} are:
> - factory functions: {{at}} (a single instant), {{allTime}} (all valid timestamps)
> - deprecated and {{@InterfaceAudience.Private}} constructors, which support more ranges, like {{[minStamp, maxStamp)}}, and {{[minStamp, MAX)}}
> This is insufficient for all but the simplest use of the {{CheckAndMutateBuilder#timeRange}} function.
> On user@hbase.apache.org, it was suggested that more factory functions could be added: https://lists.apache.org/thread.html/0ffc5e57c396873d56e49d7b02e823432b053fb98037ee6778d7c2ce@%3Cuser.hbase.apache.org%3E
> However, {{TimeRange}}'s documentation currently says:
> {code:java}
>  * Can be returned and read by clients.  Should not be directly created by clients.
>  * Thus, all constructors are purposely @InterfaceAudience.Private.
> {code}
> so another approach to making {{CheckAndMutateBuilder#timeRange}} useful may be required.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)