/** * Collects the rows from a set of scan tokens. * * @param scanTokens the scan token builder * @return the rows */ private Set<Row> collectRows(KuduScanToken.KuduScanTokenBuilder scanTokens) throws Exception { Set<Row> rows = new HashSet<>(); for (KuduScanToken token : scanTokens.build()) { LOG.debug("Scanning token: {}", KuduScanToken.stringifySerializedToken(token.serialize(), client)); int existingCount = rows.size(); Set<Row> newRows = collectRows(token.intoScanner(client)); rows.addAll(newRows); assertEquals(existingCount + newRows.size(), rows.size()); } return rows; }
token.intoScanner(client); fail(); } catch (IllegalArgumentException e) { new ColumnSchema.ColumnSchemaBuilder("a", Type.STRING).nullable(true).build())); try { token.intoScanner(client); fail(); } catch (IllegalStateException e) { .nullable(true).build())); try { token.intoScanner(client); fail(); } catch (IllegalStateException e) { .nullable(false) .defaultValue(0L).build())); token.intoScanner(client);
KuduScanner scanner = tokens.get(0).intoScanner(client); assertEquals(0, scanner.nextRows().getNumRows());