@Override public Row<K, N, V> next() { Row<K, N, V> row = iterator.next(); startKey = row.getKey(); rows++; return row; }
@Override public Row<K, N, V> next() { Row<K, N, V> row = iterator.next(); startKey = row.getKey(); rows++; return row; }
@Override public boolean accept(Row<String, Integer, Integer> row) { return Integer.parseInt(row.getKey().replaceAll("^k", "")) < 10; } };
private void findNext(boolean fromRunQuery) { nextValue = null; if (rowsIterator == null) { return; } while (rowsIterator.hasNext() && nextValue == null) { Row<K, String, String> row = rowsIterator.next(); lastReadValue = row.getKey(); if (!row.getColumnSlice().getColumns().isEmpty()) { nextValue = lastReadValue; } } if (!rowsIterator.hasNext() && nextValue == null) { runQuery(lastReadValue, endKey); } }
@Override public K getKey() { return row.getKey(); } @Override
private void assertKeys(RangeSlicesQuery query, int expected, String start, String end, SliceFilter<Row<String, Integer, Integer>> filter) { RangeSlicesIterator<String, Integer, Integer> iterator = new RangeSlicesIterator<String, Integer, Integer>(query, start, end).setFilter(filter); int total = 0; while(iterator.hasNext()) { iterator.next().getKey(); total ++; } assertEquals(expected, total); } }
@Override public Row<K, N, V> next() { Row<K, N, V> row = iterator.next(); startKey = row.getKey(); rows++; return row; }
@Override public Row<K, N, V> next() { Row<K, N, V> row = iterator.next(); startKey = row.getKey(); rows++; return row; }
@Test public void testModificationIterator() { LinkedList<String> KEYS= new LinkedList<String>(); for (int j = 0; j < 100; j++) { KEYS.add(KEY+j); } Mutator mutator = HFactory.createMutator(keyspace, se); MultigetSliceIterator<String, UUID, String> it= new MultigetSliceIterator<String, UUID, String>(false,keyspace, se,us,se, CF, KEYS, null,null,1,10,1000);// Retrieve all columns from row -> 1000 Map<UUID, String> results = new HashMap<UUID, String>(); while (it.hasNext()) { Row<String,UUID, String> r = it.next(); for (HColumn<UUID, String> c : r.getColumnSlice().getColumns()) { results.put(c.getName(), c.getValue()); mutator.addDeletion(r.getKey(), CF, c.getName(), us); mutator.execute(); } } assertEquals(100*1000, results.size()); } @Test
@Test public void testKeysOnlyPredicate() { RangeSlicesQuery<String, String, Long> rangeSlicesQuery = HFactory.createRangeSlicesQuery(keyspace, se, se, le); QueryResult<OrderedRows<String, String, Long>> result = rangeSlicesQuery.setColumnFamily(cf).setKeys("", "").setReturnKeysOnly().execute(); OrderedRows<String, String, Long> orderedRows = result.get(); Row<String, String, Long> row = orderedRows.iterator().next(); assertNotNull(row.getKey()); assertEquals(0,row.getColumnSlice().getColumns().size()); result = rangeSlicesQuery.setColumnNames("birthyear","birthmonth").setRowCount(5).execute(); orderedRows = result.get(); row = orderedRows.iterator().next(); assertNotNull(row.getKey()); assertEquals(2,row.getColumnSlice().getColumns().size()); }
@Override public Row<K, N, V> next() { Row<K, N, V> row = iterator.next(); startKey = row.getKey(); rows++; return row; }
private void findNext(boolean fromRunQuery) { nextValue = null; if (rowsIterator == null) { return; } while (rowsIterator.hasNext() && nextValue == null) { Row<K, String, String> row = rowsIterator.next(); lastReadValue = row.getKey(); if (!row.getColumnSlice().getColumns().isEmpty()) { nextValue = lastReadValue; } } if (!rowsIterator.hasNext() && nextValue == null) { runQuery(lastReadValue, endKey); } }
Row<String, String, String> row = rows.getList().get(0); assertNotNull(row); assertEquals("testRangeSlicesQuery1", row.getKey()); ColumnSlice<String, String> slice = row.getColumnSlice(); assertNotNull(slice);
@Test public void testRangeSubSlicesQuery() { String cf = "Super1"; TestCleanupDescriptor cleanup = insertSuperColumns(cf, 4, "testRangeSubSlicesQuery", 3, "testRangeSubSlicesQuery"); // get value RangeSubSlicesQuery<String, String, String, String> q = createRangeSubSlicesQuery( ko, se, se, se, se); q.setColumnFamily(cf); q.setKeys("testRangeSubSlicesQuery2", "testRangeSubSlicesQuery3"); // try with column name first q.setSuperColumn("testRangeSubSlicesQuery1"); q.setColumnNames("c021", "c111"); QueryResult<OrderedRows<String, String, String>> r = q.execute(); assertNotNull(r); OrderedRows<String, String, String> rows = r.get(); assertNotNull(rows); assertEquals(2, rows.getCount()); Row<String, String, String> row = rows.getList().get(0); assertNotNull(row); assertEquals("testRangeSubSlicesQuery2", row.getKey()); ColumnSlice<String, String> slice = row.getColumnSlice(); assertNotNull(slice); // Test slice.getColumnByName assertEquals("v021", slice.getColumnByName("c021").getValue()); assertEquals("v121", slice.getColumnByName("c111").getValue()); assertNull(slice.getColumnByName("c033")); // Delete values deleteColumns(cleanup); }
Row<String, String, String> row = rows.getByKey("testMultigetSliceQuery1"); assertNotNull(row); assertEquals("testMultigetSliceQuery1", row.getKey()); ColumnSlice<String, String> slice = row.getColumnSlice(); assertNotNull(slice);
.getByKey("testMultigetSubSliceQuery0"); assertNotNull(row); assertEquals("testMultigetSubSliceQuery0", row.getKey()); ColumnSlice<String, String> slice = row.getColumnSlice(); assertNotNull(slice);
@Override public K getKey(final V value) throws DataAccessLayerException { RangeSlicesQuery<K, byte[], V> rq = HFactory.createRangeSlicesQuery( _keyspace, _serializer_k, BYTE_SERIALIZER, _serializer_v); rq.addEqualsExpression(COLUMN_NAME, value).setReturnKeysOnly() .setColumnFamily(_cf_name) .setColumnNames(COLUMN_NAME).setRowCount(1); final List<Row<K, byte[], V>> rows = rq.execute().get().getList(); return rows.isEmpty() ? null : _serializer_k.fromBytes((byte[])rows.get(0).getKey()); }
@Override public K getKey(final V value) throws DataAccessLayerException { RangeSlicesQuery<K, byte[], V> rq = HFactory.createRangeSlicesQuery( _keyspace, _serializer_k, BYTE_SERIALIZER, _serializer_v); rq.addEqualsExpression(COLUMN_NAME, value).setReturnKeysOnly() .setColumnFamily(_cf_name) .setColumnNames(COLUMN_NAME).setRowCount(1); final List<Row<K, byte[], V>> rows = rq.execute().get().getList(); return rows.isEmpty() ? null : _serializer_k.fromBytes((byte[])rows.get(0).getKey()); }
protected void removeLicenses( String projectVersionMetadataKey ) { QueryResult<OrderedRows<String, String, String>> result = HFactory.createRangeSlicesQuery( cassandraArchivaManager.getKeyspace(), ss, ss, ss ) // .setColumnFamily( cassandraArchivaManager.getLicenseFamilyName() ) // .setColumnNames( NAME.toString() ) // .setRowCount( Integer.MAX_VALUE ) // .addEqualsExpression( "projectVersionMetadataModel.key", projectVersionMetadataKey ) // .execute(); for ( Row<String, String, String> row : result.get() ) { this.licenseTemplate.deleteRow( row.getKey() ); } }
protected void removeDependencies( String projectVersionMetadataKey ) { QueryResult<OrderedRows<String, String, String>> result = HFactory.createRangeSlicesQuery( cassandraArchivaManager.getKeyspace(), ss, ss, ss ) // .setColumnFamily( cassandraArchivaManager.getDependencyFamilyName() ) // .setColumnNames( GROUP_ID.toString() ) // .setRowCount( Integer.MAX_VALUE ) // .addEqualsExpression( "projectVersionMetadataModel.key", projectVersionMetadataKey ) // .execute(); for ( Row<String, String, String> row : result.get() ) { this.dependencyTemplate.deleteRow( row.getKey() ); } }