@Test public void testConcurrentCreationOfSameTable() { namesToIds.storeAsPending(table(1), 2); assertThat(tableIndices.getTableId(table(1))).isEqualTo(2); }
public SweepableCells( KeyValueService kvs, WriteInfoPartitioner partitioner, TargetedSweepMetrics metrics, TransactionService transactionService) { super(kvs, TargetedSweepTableFactory.of().getSweepableCellsTable(null).getTableRef(), partitioner, metrics); this.commitTsCache = CommitTsCache.create(transactionService); this.writeReferencePersister = new WriteReferencePersister(new SweepTableIndices(kvs)); }
@Test public void testSucceedsOnFirstAttempt() { assertThat(tableIndices.getTableId(table(1))).isEqualTo(1); assertThat(tableIndices.getTableReference(1)).isEqualTo(table(1)); }
@Test public void testThrowsIfUnknownTableId() { assertThatExceptionOfType(NoSuchElementException.class) .isThrownBy(() -> tableIndices.getTableReference(3)) .withMessage("Id 3 does not exist"); }
@Test public void testConcurrentCreationOfDifferentTable() { idsToNames.storeNewMapping(table(2), 1); assertThat(tableIndices.getTableId(table(1))).isEqualTo(2); }
public SweepableCells( KeyValueService kvs, WriteInfoPartitioner partitioner, TargetedSweepMetrics metrics, TransactionService transactionService) { super(kvs, TargetedSweepTableFactory.of().getSweepableCellsTable(null).getTableRef(), partitioner, metrics); this.commitTsCache = CommitTsCache.create(transactionService); this.writeReferencePersister = new WriteReferencePersister(new SweepTableIndices(kvs)); }
@Test public void testConcurrentCreationOfMultipleTables() { namesToIds.storeAsPending(table(1), 1); idsToNames.storeNewMapping(table(2), 1); assertThat(tableIndices.getTableId(table(1))).isEqualTo(2); }
public StoredWriteReference persist(WriteReference writeReference) { byte[] tableId = EncodingUtils.encodeUnsignedVarLong(tableIndices.getTableId(writeReference.tableRef())); byte[] row = EncodingUtils.encodeSizedBytes(writeReference.cell().getRowName()); byte[] column = EncodingUtils.encodeSizedBytes(writeReference.cell().getColumnName()); byte[] isTombstone = EncodingUtils.encodeUnsignedVarLong(writeReference.isTombstone() ? 1 : 0); return ImmutableStoredWriteReference.of(EncodingUtils.add(writePrefix, tableId, row, column, isTombstone)); } }
public StoredWriteReference persist(WriteReference writeReference) { byte[] tableId = EncodingUtils.encodeUnsignedVarLong(tableIndices.getTableId(writeReference.tableRef())); byte[] row = EncodingUtils.encodeSizedBytes(writeReference.cell().getRowName()); byte[] column = EncodingUtils.encodeSizedBytes(writeReference.cell().getColumnName()); byte[] isTombstone = EncodingUtils.encodeUnsignedVarLong(writeReference.isTombstone() ? 1 : 0); return ImmutableStoredWriteReference.of(EncodingUtils.add(writePrefix, tableId, row, column, isTombstone)); } }