Package org.apache.drill.exec.rpc.user

Examples of org.apache.drill.exec.rpc.user.QueryResultBatch


      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());
      int recordCount = 0;

      assertEquals(3, results.size());

      QueryResultBatch batch = results.get(1);
      assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));
      batchLoader.load(batch.getHeader().getDef(), batch.getData());
      ValueVector.Accessor output = batchLoader.getValueAccessorById(NullableBigIntVector.class,
          batchLoader.getValueVectorId(
              new SchemaPath(new PathSegment.NameSegment("output"))).getFieldIds()[0]
      ).getValueVector().getAccessor();
      ValueVector.Accessor sum = batchLoader.getValueAccessorById(
          BigIntVector.class,
          batchLoader.getValueVectorId(
              new SchemaPath(new PathSegment.NameSegment("sum"))).getFieldIds()[0]
      ).getValueVector().getAccessor();
      ValueVector.Accessor cnt = batchLoader.getValueAccessorById(
          BigIntVector.class,
          batchLoader.getValueVectorId(
              new SchemaPath(new PathSegment.NameSegment("cnt"))).getFieldIds()[0]
      ).getValueVector().getAccessor();
      int lastGroup = -1;
      long groupCounter = 0;
      long s = 0;
      for (int r = 1; r <= batchLoader.getRecordCount(); r++) {
        recordCount++;
        int group = r / 4;
        if(lastGroup != group) {
          lastGroup = group;
          groupCounter = 1;
          s = 0;
        } else {
          groupCounter++;
        }

        s += group * 8 + r % 4;

        assertEquals("Count, Row " + r, groupCounter, cnt.getObject(r - 1));
        assertEquals("Sum, Row " + r, s, sum.getObject(r - 1));
        assertEquals("Output, Row " + r, s, output.getObject(r - 1));
      }
      batchLoader.clear();
      batch.release();

      assertEquals(1000, recordCount);
    }
  }
View Full Code Here


      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());
      int recordCount = 0;

      assertEquals(3, results.size());

      QueryResultBatch batch = results.get(1);
      assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));
      batchLoader.load(batch.getHeader().getDef(), batch.getData());

      for (int r = 0; r < batchLoader.getRecordCount(); r++) {
        recordCount++;
        VectorWrapper<?> wrapper = batchLoader.getValueAccessorById(
            BigIntVector.class,
            batchLoader.getValueVectorId(new SchemaPath(new PathSegment.NameSegment("cnt"))).getFieldIds()[0]
        );
        assertEquals(cntArr[r], wrapper.getValueVector().getAccessor().getObject(r));
        wrapper = batchLoader.getValueAccessorById(
            NullableBigIntVector.class,
            batchLoader.getValueVectorId(new SchemaPath(new PathSegment.NameSegment("sum"))).getFieldIds()[0]
        );
        assertEquals(sumArr[r], wrapper.getValueVector().getAccessor().getObject(r));
      }
      batchLoader.clear();
      batch.release();

      assertEquals(8, recordCount);
    }
  }
View Full Code Here

      client.connect();
      List<QueryResultBatch> results = client.runQuery(org.apache.drill.exec.proto.UserBitShared.QueryType.PHYSICAL,
          Files.toString(FileUtils.getResourceAsFile("/functions/cast/testCastVarCharNull.json"), Charsets.UTF_8).replace("#{TEST_FILE}", "/jsoninput/input1.json"));

      QueryResultBatch batch = results.get(1);

      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());
      batchLoader.load(batch.getHeader().getDef(), batch.getData());

      Object [][] result = getRunResult(batchLoader);

      Object [][] expected = new Object[2][2];
View Full Code Here

                      .replace("#{TEST_FILE_1}", FileUtils.getResourceAsFile("/build_side_input.json").toURI().toString())
                      .replace("#{TEST_FILE_2}", FileUtils.getResourceAsFile("/probe_side_input.json").toURI().toString()));

      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());

      QueryResultBatch batch = results.get(1);
      assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));

      Iterator<VectorWrapper<?>> itr = batchLoader.iterator();

      // Just test the join key
      long colA[] = {1, 1, 2, 2, 1, 1};
View Full Code Here

                      .replace("#{TEST_FILE_1}", FileUtils.getResourceAsFile("/build_side_input.json").toURI().toString())
                      .replace("#{TEST_FILE_2}", FileUtils.getResourceAsFile("/probe_side_input.json").toURI().toString()));

      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());

      QueryResultBatch batch = results.get(1);
      assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));

      Iterator<VectorWrapper<?>> itr = batchLoader.iterator();

      // Just test the join key
      long colA[] = {1, 2, 1};
View Full Code Here

    if (currentRecord+1 < currentBatch.getRecordCount()) {
      currentRecord++;
      return true;
    } else {
      try {
        QueryResultBatch qrb = listener.getNext();
        recordBatchCount++;
        while (qrb != null && qrb.getHeader().getRowCount() == 0 && !first) {
          qrb.release();
          qrb = listener.getNext();
          recordBatchCount++;
        }

        first = false;

        if (qrb == null) {
          finished = true;
          return false;
        } else {
          currentRecord = 0;
          boolean changed = currentBatch.load(qrb.getHeader().getDef(), qrb.getData());
          schema = currentBatch.getSchema();
          if (changed) {
            updateColumns();
          }
          if (redoFirstNext && currentBatch.getRecordCount() == 0) {
View Full Code Here

  protected void query(final String query, final Function<RecordBatchLoader> testBody) throws Exception {
    List<QueryResultBatch> batches = testSqlWithResults(query);
    RecordBatchLoader loader = new RecordBatchLoader(client.getAllocator());
    try {
      QueryResultBatch batch = batches.get(0);
      loader.load(batch.getHeader().getDef(), batch.getData());

      testBody.apply(loader);

    } finally {
      for (QueryResultBatch batch:batches) {
        batch.release();
      }
      loader.clear();
    }
  }
View Full Code Here

  public void readComplexWithStar() throws Exception {
    List<QueryResultBatch> results = testSqlWithResults("select * from cp.`/store/json/test_complex_read_with_star.json`");
    assertEquals(3, results.size());

    RecordBatchLoader batchLoader = new RecordBatchLoader(getAllocator());
    QueryResultBatch batch = results.get(1);

    assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));
    assertEquals(3, batchLoader.getSchema().getFieldCount());
    testExistentColumns(batchLoader, batch);

    batch.release();
    batchLoader.clear();
  }
View Full Code Here

    List<QueryResultBatch> results = testPhysicalWithResults(queries[0]);
    assertEquals(3, results.size());
    // "`field_1`", "`field_3`.`inner_1`", "`field_3`.`inner_2`", "`field_4`.`inner_1`"

    RecordBatchLoader batchLoader = new RecordBatchLoader(getAllocator());
    QueryResultBatch batch = results.get(1);
    assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));
    assertEquals(5, batchLoader.getSchema().getFieldCount());
    testExistentColumns(batchLoader, batch);

    VectorWrapper vw = batchLoader.getValueAccessorById(
        NullableIntVector.class, //
        batchLoader.getValueVectorId(SchemaPath.getCompoundPath("non_existent_at_root")).getFieldIds() //
    );
    assertNull(vw.getValueVector().getAccessor().getObject(0));
    assertNull(vw.getValueVector().getAccessor().getObject(1));
    assertNull(vw.getValueVector().getAccessor().getObject(2));

    vw = batchLoader.getValueAccessorById(
        NullableIntVector.class, //
        batchLoader.getValueVectorId(SchemaPath.getCompoundPath("non_existent", "nested","field")).getFieldIds() //
    );
    assertNull(vw.getValueVector().getAccessor().getObject(0));
    assertNull(vw.getValueVector().getAccessor().getObject(1));
    assertNull(vw.getValueVector().getAccessor().getObject(2));

    vw.getValueVector().clear();
    batch.release();
    batchLoader.clear();
  }
View Full Code Here

      List<QueryResultBatch> results = client.runQuery(QueryType.PHYSICAL,
              Files.toString(FileUtils.getResourceAsFile(planPath), Charsets.UTF_8).replace("#{TEST_FILE}", dataPath));

      RecordBatchLoader batchLoader = new RecordBatchLoader(bit.getContext().getAllocator());

      QueryResultBatch batch = results.get(1);
      assertTrue(batchLoader.load(batch.getHeader().getDef(), batch.getData()));

      int i = 0;
      for (VectorWrapper<?> v : batchLoader) {
        ValueVector.Accessor accessor = v.getValueVector().getAccessor();
        assertEquals(values[i++], (accessor.getObject(0)));
View Full Code Here

TOP

Related Classes of org.apache.drill.exec.rpc.user.QueryResultBatch

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.