@Test public void testRoundtripQuery() throws IOException, SQLException { String[] argv = {}; runImport(getOutputArgvForQuery(true)); deleteTableData(); runExport(getExportArgvForQuery(true, 10, 10, newStrArray(argv, "-m", "" + 1))); checkFirstColumnSum(); }
@Test public void testRoundtrip() throws IOException, SQLException { String[] argv = {}; runImport(getOutputArgv(true)); deleteTableData(); runExport(getExportArgv(true, 10, 10, newStrArray(argv, "-m", "" + 1))); checkFirstColumnSum(); }
protected String [] getExportArgvForQuery(boolean includeHadoopFlags, int rowsPerStmt, int statementsPerTx, String... additionalArgv) { ArrayList<String> args = formatAdditionalArgs(additionalArgv); args.add("--table"); args.add(getTableName()); args.add("--export-dir"); args.add(getWarehouseDir() + "/query_result"); args.add("--connect"); args.add(getConnectString()); args.add("-m"); args.add("1"); LOG.debug("args:"); for (String a : args) { LOG.debug(" " + a); } return args.toArray(new String[0]); }
protected String [] getExportArgv(boolean includeHadoopFlags, int rowsPerStmt, int statementsPerTx, String... additionalArgv) { ArrayList<String> args = formatAdditionalArgs(additionalArgv); args.add("--table"); args.add(getTableName()); args.add("--export-dir"); args.add(getTablePath().toString()); args.add("--connect"); args.add(getConnectString()); args.add("-m"); args.add("1"); LOG.debug("args:"); for (String a : args) { LOG.debug(" " + a); } return args.toArray(new String[0]); }
private void deleteTableData() throws SQLException { Connection conn = getConnection(); PreparedStatement statement = conn.prepareStatement( "DELETE FROM " + getTableName(), ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); try { statement.executeUpdate(); conn.commit(); } finally { statement.close(); } }
private void checkFirstColumnSum() throws SQLException { Connection conn = getConnection(); PreparedStatement statement = conn.prepareStatement( "SELECT SUM(INTFIELD1) FROM " + getTableName(), ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); int actualVal = 0; try { ResultSet rs = statement.executeQuery(); try { rs.next(); actualVal = rs.getInt(1); } finally { rs.close(); } } finally { statement.close(); } assertEquals("First column column sum", HsqldbTestServer.getFirstColSum(), actualVal); } }