Example usage for org.apache.cassandra.db ConsistencyLevel ONE

List of usage examples for org.apache.cassandra.db ConsistencyLevel ONE

Introduction

In this page you can find the example usage for org.apache.cassandra.db ConsistencyLevel ONE.

Prototype

ConsistencyLevel ONE

To view the source code for org.apache.cassandra.db ConsistencyLevel ONE.

Click Source Link

Usage

From source file:ClientOnlyExample.java

License:Apache License

private static void testWriting() throws Exception {
    // do some writing.
    for (int i = 0; i < 100; i++) {
        RowMutation change = new RowMutation(KEYSPACE, ByteBuffer.wrap(("key" + i).getBytes()));
        ColumnPath cp = new ColumnPath(COLUMN_FAMILY).setColumn(("colb").getBytes());
        change.add(new QueryPath(cp), ByteBuffer.wrap(("value" + i).getBytes()), 0);

        // don't call change.apply().  The reason is that is makes a static call into Table, which will perform
        // local storage initialization, which creates local directories.
        // change.apply();

        StorageProxy.mutate(Arrays.asList(change), ConsistencyLevel.ONE);
        System.out.println("wrote key" + i);
    }/*from  w w  w  .  j a v a  2  s.  c  o m*/
    System.out.println("Done writing.");
}

From source file:ClientOnlyExample.java

License:Apache License

private static void testReading() throws Exception {
    // do some queries.
    Collection<ByteBuffer> cols = new ArrayList<ByteBuffer>() {
        {//ww  w .  ja  v a 2  s.  c  om
            add(ByteBufferUtil.bytes("colb"));
        }
    };
    for (int i = 0; i < 100; i++) {
        List<ReadCommand> commands = new ArrayList<ReadCommand>();
        SliceByNamesReadCommand readCommand = new SliceByNamesReadCommand(KEYSPACE,
                ByteBuffer.wrap(("key" + i).getBytes()), new QueryPath(COLUMN_FAMILY, null, null), cols);
        readCommand.setDigestQuery(false);
        commands.add(readCommand);
        List<Row> rows = StorageProxy.read(commands, ConsistencyLevel.ONE);
        assert rows.size() == 1;
        Row row = rows.get(0);
        ColumnFamily cf = row.cf;
        if (cf != null) {
            for (IColumn col : cf.getSortedColumns()) {
                System.out
                        .println(ByteBufferUtil.string(col.name()) + ", " + ByteBufferUtil.string(col.value()));
            }
        } else
            System.err.println("This output indicates that nothing was read.");
    }
}

From source file:com.datastax.brisk.BriskServer.java

License:Apache License

private LocalOrRemoteBlock getRemoteSubBlock(ByteBuffer blockId, ByteBuffer sblockId, int offset,
        ColumnParent subBlockDataPath)/*from w ww. j a  v  a2  s.c  o m*/
        throws TimedOutException, UnavailableException, InvalidRequestException, NotFoundException {
    // The column name is the SubBlock id (UUID)
    ReadCommand rc = new SliceByNamesReadCommand(cfsKeyspace, blockId, subBlockDataPath,
            Arrays.asList(sblockId));

    try {
        // CL=ONE as there are NOT multiple versions of the blocks.
        List<Row> rows = StorageProxy.read(Arrays.asList(rc), ConsistencyLevel.ONE);

        IColumn col = null;
        try {
            col = validateAndGetColumn(rows, sblockId);
        } catch (NotFoundException e) {
            // This is a best effort to get the value. Sometimes due to the size of
            // the sublocks, the normal replication may time out leaving a replicate without
            // the piece of data. Hence we re try with higher CL.
            rows = StorageProxy.read(Arrays.asList(rc), ConsistencyLevel.QUORUM);
        }

        col = validateAndGetColumn(rows, sblockId);

        ByteBuffer value = col.value();

        if (value.remaining() < offset)
            throw new InvalidRequestException("Invalid offset for block of size: " + value.remaining());

        LocalOrRemoteBlock block = new LocalOrRemoteBlock();
        if (offset > 0) {
            ByteBuffer offsetBlock = value.duplicate();
            offsetBlock.position(offsetBlock.position() + offset);
            block.setRemote_block(offsetBlock);
        } else {
            block.setRemote_block(value);
        }

        return block;
    } catch (IOException e) {
        throw new RuntimeException(e);
    } catch (TimeoutException e) {
        throw new TimedOutException();
    }
}

From source file:org.elassandra.cluster.InternalCassandraClusterService.java

License:Apache License

public static ConsistencyLevel consistencyLevelFromString(String value) {
    switch (value.toUpperCase(Locale.ROOT)) {
    case "ANY":
        return ConsistencyLevel.ANY;
    case "ONE":
        return ConsistencyLevel.ONE;
    case "TWO":
        return ConsistencyLevel.TWO;
    case "THREE":
        return ConsistencyLevel.THREE;
    case "QUORUM":
        return ConsistencyLevel.QUORUM;
    case "ALL":
        return ConsistencyLevel.ALL;
    case "LOCAL_QUORUM":
        return ConsistencyLevel.LOCAL_QUORUM;
    case "EACH_QUORUM":
        return ConsistencyLevel.EACH_QUORUM;
    case "SERIAL":
        return ConsistencyLevel.SERIAL;
    case "LOCAL_SERIAL":
        return ConsistencyLevel.LOCAL_SERIAL;
    case "LOCAL_ONE":
        return ConsistencyLevel.LOCAL_ONE;
    default:/* w  w w  .java 2 s  .c om*/
        throw new IllegalArgumentException("No write consistency match [" + value + "]");
    }
}

From source file:org.elassandra.cluster.InternalCassandraClusterService.java

License:Apache License

/**
 * Try to read fresher metadata from cassandra.
 * @param version extected version//  w  w  w .j  av a  2 s . c  om
 * @return
 */
@Override
public MetaData checkForNewMetaData(Long expectedVersion) throws NoPersistedMetaDataException {
    MetaData localMetaData = readMetaDataAsRow(ConsistencyLevel.ONE);
    if (localMetaData != null && localMetaData.version() >= expectedVersion) {
        return localMetaData;
    }
    if (localMetaData == null) {
        throw new NoPersistedMetaDataException("No cluster metadata in " + this.elasticAdminKeyspaceName);
    }
    MetaData quorumMetaData = readMetaDataAsRow(this.metadataReadCL);
    if (quorumMetaData.version() >= expectedVersion) {
        return quorumMetaData;
    }
    return null;
}

From source file:org.elassandra.CompactionTests.java

License:Apache License

@Test
public void basicCompactionTest() throws Exception {
    createIndex("test");
    ensureGreen("test");

    process(ConsistencyLevel.ONE, "CREATE TABLE IF NOT EXISTS test.t1 ( a int,b text, primary key (a) ) WITH "
            + "compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}");
    assertAcked(client().admin().indices().preparePutMapping("test").setType("t1")
            .setSource("{ \"t1\" : { \"discover\" : \".*\" }}").get());

    Map<String, Gauge> gauges = CassandraMetricsRegistry.Metrics.getGauges(new MetricFilter() {
        @Override//from w  ww  .ja  v  a 2 s. c o  m
        public boolean matches(String name, Metric metric) {
            return name.endsWith("t1");
        }
    });

    int i = 0;
    for (int j = 0; j < 1000; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(1000L));
    StorageService.instance.forceKeyspaceFlush("test", "t1");

    for (String s : gauges.keySet())
        System.out.println(s + "=" + gauges.get(s).getValue());
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    for (int j = 0; j < 1000; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2000L));
    StorageService.instance.forceKeyspaceFlush("test", "t1");
    Thread.sleep(2000);
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(2));

    for (int j = 0; j < 1000; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3000L));
    StorageService.instance.forceKeyspaceFlush("test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(3));

    // force compaction
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3000L));
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    for (String s : gauges.keySet())
        System.out.println(s + "=" + gauges.get(s).getValue());

    // overwrite 1000 docs
    for (int j = 0; j < 1000; j++)
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", 1000 + j, "y");
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3000L));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(1000L));

    StorageService.instance.forceKeyspaceFlush("test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(2));
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3000L));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(1000L));

    // remove 1000 docs
    for (int j = 0; j < 1000; j++)
        process(ConsistencyLevel.ONE, "delete from test.t1 WHERE a = ?", 1000 + j);
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2000L));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(0L));

    StorageService.instance.forceKeyspaceFlush("test");
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2000L));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(00L));
}

From source file:org.elassandra.CompactionTests.java

License:Apache License

@Test
public void expiredTtlCompactionTest() throws Exception {
    createIndex("test", Settings.builder().put(IndexMetaData.SETTING_INDEX_ON_COMPACTION, true).build());
    ensureGreen("test");

    long N = 10;/*from   ww  w. jav a  2s . c  o  m*/

    process(ConsistencyLevel.ONE, "CREATE TABLE IF NOT EXISTS test.t1 ( a int,b text, primary key (a) ) WITH "
            + "gc_grace_seconds = 15 "
            + " AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}");
    assertAcked(client().admin().indices().preparePutMapping("test").setType("t1")
            .setSource("{ \"t1\" : { \"discover\" : \".*\", \"_meta\": { \"index_on_compaction\":true } }}")
            .get());

    Map<String, Gauge> gauges = CassandraMetricsRegistry.Metrics.getGauges(new MetricFilter() {
        @Override
        public boolean matches(String name, Metric metric) {
            return name.endsWith("t1");
        }
    });

    int i = 0;
    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(N));
    StorageService.instance.forceKeyspaceFlush("test", "t1");

    for (String s : gauges.keySet())
        System.out.println(s + "=" + gauges.get(s).getValue());
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?) USING TTL 15", i, "y");
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(N));
    StorageService.instance.forceKeyspaceFlush("test", "t1");
    Thread.sleep(2000);
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(2));

    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(N));
    StorageService.instance.forceKeyspaceFlush("test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(3));

    // force compaction
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(N));
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    for (String s : gauges.keySet())
        System.out.println(s + "=" + gauges.get(s).getValue());

    Thread.sleep(15 * 1000); // wait TTL expiration
    Thread.sleep(20 * 1000); // wait gc_grace_seconds expiration
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(3 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(N));

    StorageService.instance.forceKeyspaceFlush("test");
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    UntypedResultSet rs = process(ConsistencyLevel.ONE, "SELECT * FROM test.t1");
    System.out.println("t1.count = " + rs.size());
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:y")).get().getHits().getTotalHits(),
            equalTo(0L));
}

From source file:org.elassandra.CompactionTests.java

License:Apache License

@Test
public void expiredTtlColumnCompactionTest() throws Exception {
    createIndex("test", Settings.builder().put(IndexMetaData.SETTING_INDEX_ON_COMPACTION, true).build());
    ensureGreen("test");

    long N = 10;//  w  w w  .j av a 2s.c o m

    process(ConsistencyLevel.ONE,
            "CREATE TABLE IF NOT EXISTS test.t1 ( a int,b text, c text, primary key (a) ) WITH "
                    + "gc_grace_seconds = 15 "
                    + " AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}");
    assertAcked(client().admin().indices().preparePutMapping("test").setType("t1")
            .setSource("{ \"t1\" : { \"discover\" : \".*\" }}").get());

    Map<String, Gauge> gauges = CassandraMetricsRegistry.Metrics.getGauges(new MetricFilter() {
        @Override
        public boolean matches(String name, Metric metric) {
            return name.endsWith("t1");
        }
    });

    int i = 0;
    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b,c) VALUES (?,?,?)", i, "b" + i, "c" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(N));
    StorageService.instance.forceKeyspaceFlush("test", "t1");

    for (String s : gauges.keySet())
        System.out.println(s + "=" + gauges.get(s).getValue());
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,c) VALUES (?,?) ", i, "c" + i);
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?) USING TTL 15", i, "b" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:*")).get().getHits().getTotalHits(),
            equalTo(2 * N));
    StorageService.instance.forceKeyspaceFlush("test", "t1");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(2));

    // force compaction
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:*")).get().getHits().getTotalHits(),
            equalTo(2 * N));
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    Thread.sleep(15 * 1000); // wait TTL expiration
    Thread.sleep(20 * 1000); // wait gc_grace_seconds expiration
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("c:*")).get().getHits().getTotalHits(),
            equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:*")).get().getHits().getTotalHits(),
            equalTo(2 * N));

    StorageService.instance.forceKeyspaceFlush("test");
    StorageService.instance.forceKeyspaceCompaction(true, "test");
    assertThat(gauges.get("org.apache.cassandra.metrics.Table.LiveSSTableCount.test.t1").getValue(),
            equalTo(1));

    UntypedResultSet rs = process(ConsistencyLevel.ONE, "SELECT * FROM test.t1");
    System.out.println("t1.count = " + rs.size());
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("c:*")).get().getHits().getTotalHits(),
            equalTo(2 * N));
    assertThat(
            client().prepareSearch().setIndices("test").setTypes("t1")
                    .setQuery(QueryBuilders.queryStringQuery("b:*")).get().getHits().getTotalHits(),
            equalTo(N));
}

From source file:org.elassandra.IndexBuildTests.java

License:Apache License

public void indexRebuild(int numThread) throws Exception {
    createIndex("test");
    ensureGreen("test");

    process(ConsistencyLevel.ONE, "CREATE TABLE IF NOT EXISTS test.t1 ( a int,b text, primary key (a) )");
    assertAcked(client().admin().indices().preparePutMapping("test").setType("t1")
            .setSource("{ \"t1\" : { \"discover\" : \".*\" }}").get());

    int i = 0;/*from www.j  a v  a 2s.  com*/
    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(N));

    // close index
    assertAcked(client().admin().indices().prepareClose("test").get());

    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    StorageService.instance.forceKeyspaceFlush("test", "t1");

    // open index
    assertAcked(client().admin().indices().prepareOpen("test").get());
    ensureGreen("test");

    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(N));

    // rebuild_index
    //StorageService.instance.rebuildSecondaryIndex(numThread, "test", "t1", "elastic_t1_b_idx");
    assertThat(client().admin().indices().prepareRebuild("test").setNumThreads(2).get().getFailedShards(),
            equalTo(0));
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(2 * N));
}

From source file:org.elassandra.IndexBuildTests.java

License:Apache License

@Test
public void indexFirstBuildTest() throws Exception {
    createIndex("test");
    ensureGreen("test");

    process(ConsistencyLevel.ONE, "CREATE TABLE IF NOT EXISTS test.t1 ( a int,b text, primary key (a) )");
    int i = 0;/*from w  w w . j  av a 2 s  . com*/
    for (int j = 0; j < N; j++) {
        i++;
        process(ConsistencyLevel.ONE, "insert into test.t1 (a,b) VALUES (?,?)", i, "x" + i);
    }
    StorageService.instance.forceKeyspaceFlush("test", "t1");

    assertAcked(client().admin().indices().preparePutMapping("test").setType("t1")
            .setSource("{ \"t1\" : { \"discover\" : \".*\" }}").get());
    Thread.sleep(2000);
    assertThat(client().prepareSearch().setIndices("test").setTypes("t1")
            .setQuery(QueryBuilders.matchAllQuery()).get().getHits().getTotalHits(), equalTo(N));
}