phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ankit Singhal (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-4224) Automatic resending cache for HashJoin doesn't work when cache has expired on server side
Date Tue, 26 Sep 2017 04:12:00 GMT

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

Ankit Singhal commented on PHOENIX-4224:
----------------------------------------

bq. From the end user perspective that looks like the query fail by timeout or crash with
StackOverflow exception
It should not crash with StackOverflow exception as the number of retries/recursion is limited
to hashjoin.client.retries.number(default is 5).

Anyways, wasting even single retry for this particular case where the cache at the server
is expired is unnecessary overhead. +1 for the fix. 



> Automatic resending cache for HashJoin doesn't work when cache has expired on server
side 
> ------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-4224
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4224
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.12.0
>            Reporter: Sergey Soldatov
>            Assignee: Sergey Soldatov
>            Priority: Blocker
>             Fix For: 4.12.0
>
>         Attachments: PHOENIX-4224-1.patch
>
>
> The problem occurs when the cache has expired on server side and client want to resend
it. This problem has been introduced in PHOENIX-4010. Actual result in this case is that client
doesn't send the cache because of the following check:
> {noformat}
> 			if (cache.addServer(tableRegionLocation) ... )) {
> 				success = addServerCache(table, startkeyOfRegion, pTable, cacheId, cache.getCachePtr(),
cacheFactory, txState);
> 			}
> {noformat}
> Since the region location hasn't been changed, we actually don't send cache again, but
produce new scanner which will fail with the same error and client will fall to recursion.




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

Mime
View raw message