phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <>
Subject [jira] [Commented] (PHOENIX-3108) ImmutableIndexIT fails when run on its own
Date Thu, 21 Jul 2016 20:04:20 GMT


James Taylor commented on PHOENIX-3108:

Ah, I see - didn't notice that. That CreateIndexRegionObserver is some wacky code. What's
all that code for, [~rajeshbabu]?

As it's written, you're right, [~samarthjain] - we should move this code off to a new class
derived from BaseOwnClusterHBaseManagedTimeIT.

We should still create unique test names for the other test classes I mentioned, but I think
Prakul's change may cover that already.

> ImmutableIndexIT fails when run on its own
> ------------------------------------------
>                 Key: PHOENIX-3108
>                 URL:
>             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(
> 	at org.apache.phoenix.exception.SQLExceptionInfo.buildException(
> 	at org.apache.phoenix.iterate.BaseResultIterators.getIterators(
> 	at org.apache.phoenix.iterate.BaseResultIterators.getIterators(
> 	at org.apache.phoenix.iterate.ConcatResultIterator.getIterators(
> 	at org.apache.phoenix.iterate.ConcatResultIterator.currentIterator(
> 	at
> 	at org.apache.phoenix.compile.UpsertCompiler$2.execute(
> 	at org.apache.phoenix.jdbc.PhoenixStatement$
> 	at org.apache.phoenix.jdbc.PhoenixStatement$
> 	at
> 	at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(
> 	at org.apache.phoenix.jdbc.PhoenixStatement.execute(
> 	at org.apache.phoenix.end2end.index.ImmutableIndexIT.testCreateIndexDuringUpsertSelect(
> {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

View raw message