use of org.apache.drill.test.ClusterFixtureBuilder in project drill by apache.
the class TestRestJson method setup.
@BeforeClass
public static void setup() throws Exception {
ClusterFixtureBuilder builder = new ClusterFixtureBuilder(dirTestWatcher).configProperty(ExecConstants.HTTP_ENABLE, true).configProperty(ExecConstants.HTTP_PORT_HUNT, true);
startCluster(builder);
portNumber = cluster.drillbit().getWebServerPort();
// Set up CSV storage plugin using headers.
TextFormatConfig csvFormat = new TextFormatConfig(null, // line delimiter
null, // field delimiter
null, // quote
null, // escape
null, // comment
null, // skipFirstLine,
false, // extractHeader
true);
testDir = cluster.makeDataDir("data", "csv", csvFormat);
}
use of org.apache.drill.test.ClusterFixtureBuilder in project drill by apache.
the class TestConfigLinkage method testSessionOption.
/* Test if session option takes precedence */
@Test
public void testSessionOption() throws Exception {
ClusterFixtureBuilder builder = ClusterFixture.builder(dirTestWatcher).sessionOption(ExecConstants.SLICE_TARGET, 10);
try (ClusterFixture cluster = builder.build();
ClientFixture client = cluster.clientFixture()) {
String slice_target = client.queryBuilder().sql("SELECT val FROM sys.%s where name='planner.slice_target' and optionScope = 'SESSION'", SystemTable.OPTIONS.getTableName()).singletonString();
assertEquals(slice_target, "10");
}
}
use of org.apache.drill.test.ClusterFixtureBuilder in project drill by apache.
the class TestConfigLinkage method testSystemOption.
/* Test if system option takes precedence over the boot option */
@Test
public void testSystemOption() throws Exception {
ClusterFixtureBuilder builder = ClusterFixture.builder(dirTestWatcher).systemOption(ExecConstants.SLICE_TARGET, 10000);
try (ClusterFixture cluster = builder.build();
ClientFixture client = cluster.clientFixture()) {
String slice_target = client.queryBuilder().sql("SELECT val FROM sys.%s where name='planner.slice_target' and optionScope = 'SYSTEM'", SystemTable.OPTIONS.getTableName()).singletonString();
assertEquals(slice_target, "10000");
}
}
use of org.apache.drill.test.ClusterFixtureBuilder in project drill by apache.
the class TestConfigLinkage method testScopeAlterSession.
/* Test if the option is altered at SESSION scope and the scope is actually SESSION */
@Test
public void testScopeAlterSession() throws Exception {
ClusterFixtureBuilder builder = ClusterFixture.bareBuilder(dirTestWatcher);
try (ClusterFixture cluster = builder.build();
ClientFixture client = cluster.clientFixture()) {
client.queryBuilder().sql("ALTER SESSION set `planner.slice_target`= 10000").run();
String scope = client.queryBuilder().sql("SELECT optionScope from sys.%s where name='planner.slice_target'", SystemTable.OPTIONS.getTableName()).singletonString();
Assert.assertEquals("SESSION", scope);
}
}
use of org.apache.drill.test.ClusterFixtureBuilder in project drill by apache.
the class TestConfigLinkage method testAlterInternalSystemOption.
@Test
public void testAlterInternalSystemOption() throws Exception {
OptionDefinition optionDefinition = createMockPropOptionDefinition();
ClusterFixtureBuilder builder = ClusterFixture.builder(dirTestWatcher).configProperty(ExecConstants.bootDefaultFor(MOCK_PROPERTY), "a").putDefinition(optionDefinition);
try (ClusterFixture cluster = builder.build();
ClientFixture client = cluster.clientFixture()) {
client.queryBuilder().sql("ALTER SYSTEM SET `%s` = 'bleh'", MOCK_PROPERTY).run();
client.queryBuilder().sql("SELECT * FROM sys.%s", SystemTable.INTERNAL_OPTIONS_OLD.getTableName()).logCsv();
client.queryBuilder().sql("SELECT * FROM sys.%s", SystemTable.INTERNAL_OPTIONS.getTableName()).logCsv();
String mockProp = client.queryBuilder().sql("SELECT string_val FROM sys.%s where name='%s'", SystemTable.INTERNAL_OPTIONS_OLD, MOCK_PROPERTY).singletonString();
String mockProp2 = client.queryBuilder().sql("SELECT val FROM sys.%s where name='%s'", SystemTable.INTERNAL_OPTIONS, MOCK_PROPERTY).singletonString();
assertEquals("bleh", mockProp);
assertEquals("bleh", mockProp2);
}
}
Aggregations