[
https://issues.apache.org/jira/browse/PHOENIX-3108?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15388895#comment-15388895
]
Rajeshbabu Chintaguntla commented on PHOENIX-3108:
--------------------------------------------------
[~jamestaylor]
bq. That CreateIndexRegionObserver is some wacky code. What's all that code
for, Rajeshbabu Chintaguntla?
I have no idea about the class. It's added as part of PHOENIX-2478(you have
added it :))
bq. My first guess is that the UPSERT SELECT running for building the local
index isn't setting timestamp correctly. This is probably causing the select
part to read the records that are being upserted.
It should use same timestamp of the row scanned from data table. Will check
once.
> ImmutableIndexIT fails when run on its own
> ------------------------------------------
>
> Key: PHOENIX-3108
> URL: https://issues.apache.org/jira/browse/PHOENIX-3108
> Project: Phoenix
> Issue Type: Bug
> Reporter: Samarth Jain
> Assignee: Thomas D'Silva
>
> [~prakul] and I noticed that when running ImmutableIndexIT on its own, the
> test testCreateIndexDuringUpsertSelect fails for parameters localIndex = true
> and transactional = false. The failure stacktrace is:
> {code}
> java.sql.SQLTimeoutException: Operation timed out.
> at
> org.apache.phoenix.exception.SQLExceptionCode$15.newException(SQLExceptionCode.java:376)
> at
> org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:145)
> at
> org.apache.phoenix.iterate.BaseResultIterators.getIterators(BaseResultIterators.java:805)
> at
> org.apache.phoenix.iterate.BaseResultIterators.getIterators(BaseResultIterators.java:719)
> at
> org.apache.phoenix.iterate.ConcatResultIterator.getIterators(ConcatResultIterator.java:50)
> at
> org.apache.phoenix.iterate.ConcatResultIterator.currentIterator(ConcatResultIterator.java:97)
> at
> org.apache.phoenix.iterate.ConcatResultIterator.next(ConcatResultIterator.java:117)
> at
> org.apache.phoenix.compile.UpsertCompiler$2.execute(UpsertCompiler.java:810)
> at
> org.apache.phoenix.jdbc.PhoenixStatement$3.call(PhoenixStatement.java:340)
> at
> org.apache.phoenix.jdbc.PhoenixStatement$3.call(PhoenixStatement.java:1)
> at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
> at
> org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:327)
> at
> org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1388)
> at
> org.apache.phoenix.end2end.index.ImmutableIndexIT.testCreateIndexDuringUpsertSelect(ImmutableIndexIT.java:180)
> {code}
> My first guess is that the UPSERT SELECT running for building the local index
> isn't setting timestamp correctly. This is probably causing the select part
> to read the records that are being upserted. FYI, [~rajeshbabu]. The reason
> we are not seeing this error in jenkins is because the co-processor
> CreateIndexRegionObserver isn't getting installed. Because the co-processor
> is a server side property, the test class needs to extend
> BaseOwnClusterHBaseManagedTimeIT and *not* BaseHBaseManagedTimeIT. This will
> make the test class run in its own mini-cluster. FYI, [~tdsilva] - it doesn't
> look like your race condition test is getting exercised when running test
> suite via maven.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)