You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Huon Wilson (JIRA)" <ji...@apache.org> on 2019/08/13 05:03:00 UTC
[jira] [Created] (HBASE-22841) TimeRange's factory functions do not
support ranges, only `allTime` and `at`
Huon Wilson created HBASE-22841:
-----------------------------------
Summary: 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.1.5, 2.2.0
Reporter: Huon Wilson
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)