hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicolas Liochon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13271) Table#puts(List<Put>) operation is indeterminate; remove!
Date Wed, 18 Mar 2015 21:15:40 GMT

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

Nicolas Liochon commented on HBASE-13271:
-----------------------------------------

[Mar-17 9:21 AM] Lars George: Say out of 5 the third is broken, then the put() call returns
with a local exception (say empty Put) and then you have 2 that are in the buffer
[Mar-17 9:21 AM] Lars George: but how to you force commit them?
[Mar-17 9:22 AM] Lars George: In the past you would call flushCache(), but that is "gone"
now

If they failed the first time, why would they succeed the second time?
Why are they still in the buffer if it failed?
Why flushCache is not available? flushing the commit should be available to be end user, no?

> Table#puts(List<Put>) operation is indeterminate; remove!
> ---------------------------------------------------------
>
>                 Key: HBASE-13271
>                 URL: https://issues.apache.org/jira/browse/HBASE-13271
>             Project: HBase
>          Issue Type: Improvement
>          Components: API
>    Affects Versions: 1.0.0
>            Reporter: stack
>
> Another API issue found by [~larsgeorge]:
> "Table.put(List<Put) is questionable after the API change."
> {code}
> [Mar-17 9:21 AM] Lars George: Table.put(List<Put>) is weird since you cannot flush
partial lists
> [Mar-17 9:21 AM] Lars George: Say out of 5 the third is broken, then the put() call returns
with a local exception (say empty Put) and then you have 2 that are in the buffer
> [Mar-17 9:21 AM] Lars George: but how to you force commit them?
> [Mar-17 9:22 AM] Lars George: In the past you would call flushCache(), but that is "gone"
now
> [Mar-17 9:22 AM] Lars George: and flush() is not available on a Table
> [Mar-17 9:22 AM] Lars George: And you cannot access the underlying BufferedMutation neither
> [Mar-17 9:23 AM] Lars George: You can *only* add more Puts if you can, or call close()
> [Mar-17 9:23 AM] Lars George: that is just weird to explain
> {code}
> So, Table needs to get flush back or we deprecate this method or it flushes immediately
and does not return until complete in the implementation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message