phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <>
Subject [jira] [Commented] (PHOENIX-4278) Implement pure client side transactional index maintenance
Date Tue, 06 Feb 2018 18:33:00 GMT


James Taylor commented on PHOENIX-4278:

What JVM are you using, [~ohads]? We're still stuck on JDK 7 since HBase 1.x releases are
still on it. If you're using JDK 8, it'd be worth trying 7 instead.

Of the list above, the only one that's a little of a concern is this one:
[*ERROR*]   AggregateIT.testAvgGroupByOrderPreservingWithStats:432 expected:<13> but
However, if you get the same error without your patch, I'm a bit less concerned. FYI, these
test pass in our Jenkins build:

> Implement pure client side transactional index maintenance
> ----------------------------------------------------------
>                 Key: PHOENIX-4278
>                 URL:
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: James Taylor
>            Assignee: Ohad Shacham
>            Priority: Major
> The index maintenance for transactions follows the same model as non transactional tables
- coprocessor based on data table updates that looks up previous row value to perform maintenance.
This is necessary for non transactional tables to ensure the rows are locked so that a consistent
view may be obtained. However, for transactional tables, the time stamp oracle ensures uniqueness
of time stamps (via transaction IDs) and the filtering handles a scan seeing the "true" last
committed value for a row. Thus, there's no hard dependency to perform this on the server
> Moving the index maintenance to the client side would prevent any RS->RS RPC calls
(which have proved to be troublesome for HBase). It would require returning more data to the
client (i.e. the prior row value), but this seems like a reasonable tradeoff.

This message was sent by Atlassian JIRA

View raw message