use of com.hazelcast.jet.config.JobConfig in project hazelcast by hazelcast.
the class MapIndexScanPTest method test_fullScanDesc_sorted.
@Test
public void test_fullScanDesc_sorted() {
List<JetSqlRow> expected = new ArrayList<>();
for (int i = 0; i <= count; i++) {
map.put(i, new Person("value-" + i, i));
expected.add(jetRow((count - i), "value-" + (count - i), (count - i)));
}
IndexConfig indexConfig = new IndexConfig(IndexType.SORTED, "age").setName(randomName());
map.addIndex(indexConfig);
IndexFilter filter = new IndexRangeFilter(null, true, null, true);
MapIndexScanMetadata metadata = metadata(indexConfig.getName(), filter, 2, true);
TestSupport.verifyProcessor(adaptSupplier(MapIndexScanP.readMapIndexSupplier(metadata))).hazelcastInstance(instance()).jobConfig(new JobConfig().setArgument(SQL_ARGUMENTS_KEY_NAME, emptyList())).outputChecker(LENIENT_SAME_ITEMS_IN_ORDER).disableSnapshots().disableProgressAssertion().expectOutput(expected);
}
use of com.hazelcast.jet.config.JobConfig in project hazelcast by hazelcast.
the class MapIndexScanPTest method test_fullScanAsc_sorted.
@Test
public void test_fullScanAsc_sorted() {
List<JetSqlRow> expected = new ArrayList<>();
for (int i = count; i > 0; i--) {
map.put(i, new Person("value-" + i, i));
expected.add(jetRow((count - i + 1), "value-" + (count - i + 1), (count - i + 1)));
}
IndexConfig indexConfig = new IndexConfig(IndexType.SORTED, "age").setName(randomName());
map.addIndex(indexConfig);
IndexFilter filter = new IndexRangeFilter(null, true, null, true);
MapIndexScanMetadata metadata = metadata(indexConfig.getName(), filter, 2, false);
TestSupport.verifyProcessor(adaptSupplier(MapIndexScanP.readMapIndexSupplier(metadata))).hazelcastInstance(instance()).jobConfig(new JobConfig().setArgument(SQL_ARGUMENTS_KEY_NAME, emptyList())).outputChecker(LENIENT_SAME_ITEMS_IN_ORDER).disableSnapshots().disableProgressAssertion().expectOutput(expected);
}
use of com.hazelcast.jet.config.JobConfig in project hazelcast by hazelcast.
the class MapIndexScanPTest method test_whenBothFiltersAndSpecificProjectionExists_sorted.
@Test
public void test_whenBothFiltersAndSpecificProjectionExists_sorted() {
List<JetSqlRow> expected = new ArrayList<>();
for (int i = count; i > 0; i--) {
map.put(i, new Person("value-" + i, i));
if (i > count / 2) {
if (i % 2 == 1) {
expected.add(jetRow((count - i + 1), "value-" + (count - i + 1), (count - i + 1)));
}
}
}
IndexConfig indexConfig = new IndexConfig(IndexType.SORTED, "age").setName(randomName());
map.addIndex(indexConfig);
Expression<Boolean> remainingFilter = new FunctionalPredicateExpression(row -> {
int value = row.get(0);
return value % 2 == 0;
});
IndexFilter filter = new IndexRangeFilter(intValue(0), true, intValue(count / 2), true);
MapIndexScanMetadata metadata = metadata(indexConfig.getName(), filter, remainingFilter, 0, false);
TestSupport.verifyProcessor(adaptSupplier(MapIndexScanP.readMapIndexSupplier(metadata))).hazelcastInstance(instance()).jobConfig(new JobConfig().setArgument(SQL_ARGUMENTS_KEY_NAME, emptyList())).outputChecker(LENIENT_SAME_ITEMS_IN_ORDER).disableSnapshots().disableProgressAssertion().expectOutput(expected);
}
use of com.hazelcast.jet.config.JobConfig in project hazelcast by hazelcast.
the class SqlMetadataInJobConfigTest method test_createJobMetadata.
@Test
public void test_createJobMetadata() {
TestBatchSqlConnector.create(instance().getSql(), "src", 3);
createMapping("dest", Integer.class, String.class);
String sql = "CREATE JOB testJob AS INSERT INTO dest SELECT v * 2, 'value-' || v FROM src WHERE v < 2";
instance().getSql().execute(sql);
assertJobStatusEventually(instance().getJet().getJob("testJob"), COMPLETED);
List<Job> completedJobs = getJobsByStatus(COMPLETED);
assertEquals(1, completedJobs.size());
JobConfig config = completedJobs.get(0).getConfig();
assertEquals(sql, config.getArgument(KEY_SQL_QUERY_TEXT));
assertEquals(Boolean.FALSE, config.getArgument(KEY_SQL_UNBOUNDED));
}
use of com.hazelcast.jet.config.JobConfig in project hazelcast by hazelcast.
the class SqlMetadataInJobConfigTest method test_selectMetadata_client.
@Test
public void test_selectMetadata_client() {
String sql = "SELECT * FROM table(generate_stream(1))";
try (SqlResult ignored = client().getSql().execute(new SqlStatement(sql).setCursorBufferSize(1))) {
List<Job> runningJobs = getJobsByStatus(RUNNING);
assertEquals(1, runningJobs.size());
JobConfig config = runningJobs.get(0).getConfig();
assertEquals(sql, config.getArgument(KEY_SQL_QUERY_TEXT));
assertEquals(Boolean.TRUE, config.getArgument(KEY_SQL_UNBOUNDED));
}
}
Aggregations