You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "James Taylor (JIRA)" <ji...@apache.org> on 2014/03/05 00:37:42 UTC
[jira] [Updated] (PHOENIX-106) NPE when adding dynamic columns to a
salted table
[ https://issues.apache.org/jira/browse/PHOENIX-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James Taylor updated PHOENIX-106:
---------------------------------
Attachment: patch.diff
> NPE when adding dynamic columns to a salted table
> -------------------------------------------------
>
> Key: PHOENIX-106
> URL: https://issues.apache.org/jira/browse/PHOENIX-106
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 3.0.0
> Reporter: James Taylor
> Assignee: James Taylor
> Fix For: 3.0.0
>
> Attachments: patch.diff
>
>
> Thanks for the test, [~samarthjain].
> @Test
> public void testDynamicUpsertSelect() throws Exception {
> Connection conn = DriverManager.getConnection(getUrl());
> String cursorDDL = " CREATE TABLE IF NOT EXISTS CURSOR (ORGANIZATION_ID VARCHAR(15) NOT NULL, \n"
> + "QUERY_ID VARCHAR(15) NOT NULL, \n"
> + "CURSOR_ORDER UNSIGNED_LONG NOT NULL, \n"
> + "CONSTRAINT API_HBASE_CURSOR_STORAGE_PK PRIMARY KEY (ORGANIZATION_ID, QUERY_ID, CURSOR_ORDER))\n"
> + "SALT_BUCKETS = 4";
> conn.createStatement().execute(cursorDDL);
>
> String dataTableDDL = "CREATE TABLE IF NOT EXISTS PLINYTEST" +
> "(" +
> "ORGANIZATION_ID CHAR(15) NOT NULL, " +
> "PLINY_ID CHAR(15) NOT NULL, " +
> "CREATED_DATE DATE NOT NULL, " +
> "TEXT VARCHAR, " +
> "CONSTRAINT PK PRIMARY KEY " +
> "(" +
> "ORGANIZATION_ID, " +
> "PLINY_ID, " +
> "CREATED_DATE" +
> ")" +
> ")";
>
> conn.createStatement().execute(dataTableDDL);
> PreparedStatement stmt = null;
> String upsert = "UPSERT INTO PLINYTEST VALUES (?, ?, ?, ?)";
> stmt = conn.prepareStatement(upsert);
> stmt.setString(1, getOrganizationId());
> stmt.setString(2, "aaaaaaaaaaaaaaa");
> stmt.setDate(3, new Date(System.currentTimeMillis()));
> stmt.setString(4, "text");
> stmt.executeUpdate();
> conn.commit();
>
> String upsertSelect = "UPSERT INTO CURSOR (ORGANIZATION_ID, QUERY_ID, CURSOR_ORDER, PLINY_ID CHAR(15),CREATED_DATE DATE) SELECT ?, ?, ?, PLINY_ID, CREATED_DATE FROM PLINYTEST WHERE ORGANIZATION_ID = ?";
> stmt = conn.prepareStatement(upsertSelect);
> String orgId = getOrganizationId();
> stmt.setString(1, orgId);
> stmt.setString(2, "queryqueryquery");
> stmt.setInt(3, 1);
> stmt.setString(4, orgId);
> stmt.executeUpdate();
> conn.commit();
> }
--
This message was sent by Atlassian JIRA
(v6.2#6252)