You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "rajeshbabu (JIRA)" <ji...@apache.org> on 2014/06/22 20:12:24 UTC

[jira] [Created] (PHOENIX-1048) tables and sequences should be deleted at different times when scn set at BaseConnectedQueryIT#deletePriorTables

rajeshbabu created PHOENIX-1048:
-----------------------------------

             Summary: tables and sequences should be deleted at different times when scn set at BaseConnectedQueryIT#deletePriorTables
                 Key: PHOENIX-1048
                 URL: https://issues.apache.org/jira/browse/PHOENIX-1048
             Project: Phoenix
          Issue Type: Bug
            Reporter: rajeshbabu
            Assignee: rajeshbabu
            Priority: Minor
             Fix For: 5.0.0, 3.1, 4.1


Currently we are deleting tables and sequences with same scn at BaseConnectedQueryIT#deletePriorTables, this may cause some test case failures.
When we delete sequences of indexed table, we will set the same timestamp for delete. 
{code}
                        } else if (isDelete) {
                            // FIXME: the version of the Delete constructor without the lock args was introduced
                            // in 0.94.4, thus if we try to use it here we can no longer use the 0.94.2 version
                            // of the client.
                            Cell firstKV = results.get(0);
                            Delete delete = new Delete(firstKV.getRowArray(), firstKV.getRowOffset(), 
                                firstKV.getRowLength(),ts);
                            mutations.add(delete);
                        } else if (isUpsert) {
{code}
The same timestamp is getting used to set time range for scanning table. 
{code}
        PhoenixConnection connection = context.getConnection();
        Long scn = connection.getSCN();
        ScanUtil.setTimeRange(scan, scn == null ? context.getCurrentTime() : scn);
{code}
The max value in the time range is exclusive so reading sequence table may give deleted sequences. Some test cases may fail because of this.
{code}
org.apache.phoenix.exception.PhoenixParserException: ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "NAME", got "null" at line 1, column 27.
	at org.apache.phoenix.exception.PhoenixParserException.newException(PhoenixParserException.java:33)
	at org.apache.phoenix.parse.SQLParser.parseStatement(SQLParser.java:111)
	at org.apache.phoenix.jdbc.PhoenixStatement$PhoenixStatementParser.parseStatement(PhoenixStatement.java:777)
	at org.apache.phoenix.jdbc.PhoenixStatement.parseStatement(PhoenixStatement.java:858)
	at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:915)
	at org.apache.phoenix.end2end.BaseConnectedQueryIT.deletePriorSequences(BaseConnectedQueryIT.java:196)
	at org.apache.phoenix.end2end.BaseConnectedQueryIT.deletePriorTables(BaseConnectedQueryIT.java:143)
	at org.apache.phoenix.end2end.BaseConnectedQueryIT.deletePriorTables(BaseConnectedQueryIT.java:132)
	at org.apache.phoenix.end2end.BaseClientManagedTimeIT.doTestSetup(BaseClientManagedTimeIT.java:39)
{code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)