public class org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT extends org.apache.drill.test.ClusterTest
{
private static final java.lang.String DOCKER_IMAGE_MARIADB;
private static org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer;
public void <init>()
{
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
specialinvoke v.<org.apache.drill.test.ClusterTest: void <init>()>();
return;
}
public static void initMysql() throws java.lang.Exception
{
org.apache.drill.test.BaseDirTestWatcher v;
org.testcontainers.utility.DockerImageName v, v;
java.lang.Integer v;
org.apache.drill.exec.store.jdbc.JdbcStorageConfig v, v;
boolean v, v;
org.apache.drill.common.logical.security.PlainCredentialsProvider v;
org.apache.drill.common.logical.StoragePluginConfig$AuthMode v, v;
org.apache.drill.test.ClusterFixtureBuilder v;
java.lang.Integer[] v;
java.util.HashMap v;
org.testcontainers.jdbc.JdbcDatabaseDelegate v;
org.testcontainers.containers.JdbcDatabaseContainer v, v, v, v, v, v, v, v;
java.lang.Boolean v, v;
org.testcontainers.containers.GenericContainer v;
java.lang.String v, v, v, v, v, v, v;
org.apache.drill.test.ClusterFixture v, v;
org.testcontainers.containers.MySQLContainer v, v, v, v, v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.BaseDirTestWatcher dirTestWatcher>;
v = staticinvoke <org.apache.drill.test.ClusterFixture: org.apache.drill.test.ClusterFixtureBuilder builder(org.apache.drill.test.BaseDirTestWatcher)>(v);
staticinvoke <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: void startCluster(org.apache.drill.test.ClusterFixtureBuilder)>(v);
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("os.name");
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = staticinvoke <org.testcontainers.utility.DockerImageName: org.testcontainers.utility.DockerImageName parse(java.lang.String)>("mariadb:10.6.0");
v = virtualinvoke v.<org.testcontainers.utility.DockerImageName: org.testcontainers.utility.DockerImageName asCompatibleSubstituteFor(java.lang.String)>("mysql");
v = new org.testcontainers.containers.MySQLContainer;
specialinvoke v.<org.testcontainers.containers.MySQLContainer: void <init>(org.testcontainers.utility.DockerImageName)>(v);
v = newarray (java.lang.Integer)[1];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3306);
v[0] = v;
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.GenericContainer withExposedPorts(java.lang.Integer[])>(v);
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.MySQLContainer withConfigurationOverride(java.lang.String)>("mysql_config_override");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.MySQLContainer withUsername(java.lang.String)>("mysqlUser");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.MySQLContainer withPassword(java.lang.String)>("mysqlPass");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.MySQLContainer withDatabaseName(java.lang.String)>("drill_mysql_test");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.JdbcDatabaseContainer withUrlParam(java.lang.String,java.lang.String)>("serverTimezone", "UTC");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.JdbcDatabaseContainer withUrlParam(java.lang.String,java.lang.String)>("useJDBCCompliantTimezoneShift", "true");
v = virtualinvoke v.<org.testcontainers.containers.MySQLContainer: org.testcontainers.containers.JdbcDatabaseContainer withInitScript(java.lang.String)>("mysql-test-data.sql");
<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer> = v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: void start()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("linux");
if v == 0 goto label;
v = new org.testcontainers.jdbc.JdbcDatabaseDelegate;
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
specialinvoke v.<org.testcontainers.jdbc.JdbcDatabaseDelegate: void <init>(org.testcontainers.containers.JdbcDatabaseContainer,java.lang.String)>(v, "");
staticinvoke <org.testcontainers.ext.ScriptUtils: void runInitScript(org.testcontainers.delegate.DatabaseDelegate,java.lang.String)>(v, "mysql-test-data-linux.sql");
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getUsername()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("username", v);
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getPassword()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("password", v);
v = new org.apache.drill.common.logical.security.PlainCredentialsProvider;
specialinvoke v.<org.apache.drill.common.logical.security.PlainCredentialsProvider: void <init>(java.util.Map)>(v);
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getJdbcUrl()>();
v = new org.apache.drill.exec.store.jdbc.JdbcStorageConfig;
v = <org.apache.drill.common.logical.StoragePluginConfig$AuthMode: org.apache.drill.common.logical.StoragePluginConfig$AuthMode SHARED_USER>;
v = virtualinvoke v.<org.apache.drill.common.logical.StoragePluginConfig$AuthMode: java.lang.String name()>();
specialinvoke v.<org.apache.drill.exec.store.jdbc.JdbcStorageConfig: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,boolean,boolean,java.util.Map,org.apache.drill.common.logical.security.CredentialsProvider,java.lang.String,int)>("com.mysql.cj.jdbc.Driver", v, null, null, 0, 0, null, v, v, 10000);
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
virtualinvoke v.<org.apache.drill.exec.store.jdbc.JdbcStorageConfig: void setEnabled(java.lang.Boolean)>(v);
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.ClusterFixture cluster>;
virtualinvoke v.<org.apache.drill.test.ClusterFixture: void defineStoragePlugin(java.lang.String,org.apache.drill.common.logical.StoragePluginConfig)>("mysql", v);
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("linux");
if v == 0 goto label;
v = new org.apache.drill.exec.store.jdbc.JdbcStorageConfig;
v = <org.apache.drill.common.logical.StoragePluginConfig$AuthMode: org.apache.drill.common.logical.StoragePluginConfig$AuthMode SHARED_USER>;
v = virtualinvoke v.<org.apache.drill.common.logical.StoragePluginConfig$AuthMode: java.lang.String name()>();
specialinvoke v.<org.apache.drill.exec.store.jdbc.JdbcStorageConfig: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,boolean,boolean,java.util.Map,org.apache.drill.common.logical.security.CredentialsProvider,java.lang.String,int)>("com.mysql.cj.jdbc.Driver", v, null, null, 1, 0, null, v, v, 10000);
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
virtualinvoke v.<org.apache.drill.exec.store.jdbc.JdbcStorageConfig: void setEnabled(java.lang.Boolean)>(v);
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.ClusterFixture cluster>;
virtualinvoke v.<org.apache.drill.test.ClusterFixture: void defineStoragePlugin(java.lang.String,org.apache.drill.common.logical.StoragePluginConfig)>("mysqlCaseInsensitive", v);
label:
return;
}
public static void stopMysql()
{
org.testcontainers.containers.JdbcDatabaseContainer v, v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
if v == null goto label;
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: void stop()>();
label:
return;
}
public void validateResult() throws java.lang.Exception
{
byte[] v, v, v;
java.lang.Integer v, v, v, v, v, v, v, v, v, v;
java.math.BigDecimal v, v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v, v, v, v;
java.lang.Long v, v, v;
java.lang.Object[] v, v, v, v;
java.lang.Double v, v, v, v, v, v, v, v, v;
java.time.LocalDateTime v, v, v;
java.lang.String v, v, v;
java.time.LocalTime v, v, v;
java.time.LocalDate v, v, v, v, v, v;
java.lang.String[] v;
java.nio.charset.Charset v, v, v;
int v;
java.lang.Boolean v, v, v, v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select person_id, first_name, last_name, address, city, state, zip, bigint_field, smallint_field, numeric_field, boolean_field, double_field, float_field, real_field, date_field, datetime_field, year_field, time_field, json, text_field, tiny_text_field, medium_text_field, long_text_field, blob_field, bit_field, enum_field from mysql.`drill_mysql_test`.person");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder ordered()>();
v = newarray (java.lang.String)[26];
v[0] = "person_id";
v[1] = "first_name";
v[2] = "last_name";
v[3] = "address";
v[4] = "city";
v[5] = "state";
v[6] = "zip";
v[7] = "bigint_field";
v[8] = "smallint_field";
v[9] = "numeric_field";
v[10] = "boolean_field";
v[11] = "double_field";
v[12] = "float_field";
v[13] = "real_field";
v[14] = "date_field";
v[15] = "datetime_field";
v[16] = "year_field";
v[17] = "time_field";
v[18] = "json";
v[19] = "text_field";
v[20] = "tiny_text_field";
v[21] = "medium_text_field";
v[22] = "long_text_field";
v[23] = "blob_field";
v[24] = "bit_field";
v[25] = "enum_field";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[26];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[0] = v;
v[1] = "first_name_1";
v[2] = "last_name_1";
v[3] = "1401 John F Kennedy Blvd";
v[4] = "Philadelphia";
v[5] = "PA";
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(19107);
v[6] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(123456789L);
v[7] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[8] = v;
v = new java.math.BigDecimal;
specialinvoke v.<java.math.BigDecimal: void <init>(java.lang.String)>("10.01");
v[9] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
v[10] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(1.0);
v[11] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(1.1);
v[12] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(1.2);
v[13] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("2012-02-29");
v[14] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDateTime parseLocalDateTime(java.lang.String)>("2012-02-29 13:00:01.0");
v[15] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("2015-01-01");
v[16] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalTime parseLocalTime(java.lang.String)>("13:00:01.0");
v[17] = v;
v[18] = "{ a : 5, b : 6 }";
v[19] = "It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout";
v[20] = "xxx";
v[21] = "a medium piece of text";
v[22] = "a longer piece of text this is going on.....";
v = "this is a test";
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
v[23] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
v[24] = v;
v[25] = "XXX";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[26];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(2);
v[0] = v;
v[1] = "first_name_2";
v[2] = "last_name_2";
v[3] = "One Ferry Building";
v[4] = "San Francisco";
v[5] = "CA";
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(94111);
v[6] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(45456767L);
v[7] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3);
v[8] = v;
v = new java.math.BigDecimal;
specialinvoke v.<java.math.BigDecimal: void <init>(java.lang.String)>("30.04");
v[9] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
v[10] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(3.0);
v[11] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(3.1);
v[12] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(3.2);
v[13] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("2011-10-30");
v[14] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDateTime parseLocalDateTime(java.lang.String)>("2011-10-30 11:34:21.0");
v[15] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("2015-01-01");
v[16] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalTime parseLocalTime(java.lang.String)>("11:34:21.0");
v[17] = v;
v[18] = "{ z : [ 1, 2, 3 ] }";
v[19] = "It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout";
v[20] = "abc";
v[21] = "a medium piece of text 2";
v[22] = "somewhat more text";
v = "this is a test 2";
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
v[23] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
v[24] = v;
v[25] = "YYY";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[26];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3);
v[0] = v;
v[1] = "first_name_3";
v[2] = "last_name_3";
v[3] = "176 Bowery";
v[4] = "New York";
v[5] = "NY";
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(10012);
v[6] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(123090L);
v[7] = v;
v = (int) -3;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[8] = v;
v = new java.math.BigDecimal;
specialinvoke v.<java.math.BigDecimal: void <init>(java.lang.String)>("55.12");
v[9] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
v[10] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(5.0);
v[11] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(5.1);
v[12] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(5.55);
v[13] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("2015-06-01");
v[14] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDateTime parseLocalDateTime(java.lang.String)>("2015-09-22 15:46:10.0");
v[15] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalDate parseLocalDate(java.lang.String)>("1901-01-01");
v[16] = v;
v = staticinvoke <org.apache.drill.exec.expr.fn.impl.DateUtility: java.time.LocalTime parseLocalTime(java.lang.String)>("16:00:01.0");
v[17] = v;
v[18] = "{ [ a, b, c ] }";
v[19] = "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit";
v[20] = "abc";
v[21] = "a medium piece of text 3";
v[22] = "somewhat more text";
v = "this is a test 3";
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
v[23] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
v[24] = v;
v[25] = "ZZZ";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[26];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5);
v[0] = v;
v[1] = null;
v[2] = null;
v[3] = null;
v[4] = null;
v[5] = null;
v[6] = null;
v[7] = null;
v[8] = null;
v[9] = null;
v[10] = null;
v[11] = null;
v[12] = null;
v[13] = null;
v[14] = null;
v[15] = null;
v[16] = null;
v[17] = null;
v[18] = null;
v[19] = null;
v[20] = null;
v[21] = null;
v[22] = null;
v[23] = null;
v[24] = null;
v[25] = "XXX";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void pushDownJoin() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v;
java.lang.String[] v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select x.person_id from (select person_id from mysql.`drill_mysql_test`.person) x join (select person_id from mysql.`drill_mysql_test`.person) y on x.person_id = y.person_id");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Join";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void pushDownJoinAndFilterPushDown() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v;
java.lang.String[] v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select * from mysql.`drill_mysql_test`.person e INNER JOIN mysql.`drill_mysql_test`.person s ON e.first_name = s.first_name WHERE e.last_name > \'hello\'");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[2];
v[0] = "Join";
v[1] = "Filter";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void pushDownAggWithDecimal() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
java.lang.Object[] v;
org.apache.drill.exec.physical.rowSet.RowSet$SingleRowSet v;
java.lang.Double v;
org.apache.drill.exec.record.metadata.SchemaBuilder v, v;
org.apache.drill.exec.physical.rowSet.RowSetBuilder v, v;
org.apache.drill.exec.record.metadata.TupleMetadata v;
org.apache.drill.common.types.TypeProtos$MinorType v;
org.apache.drill.exec.physical.rowSet.DirectRowSet v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
org.apache.drill.test.ClientFixture v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("SELECT sum(decimal_field * smallint_field) AS `order_total`\nFROM mysql.`drill_mysql_test`.person e");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.exec.physical.rowSet.DirectRowSet rowSet()>();
v = new org.apache.drill.exec.record.metadata.SchemaBuilder;
specialinvoke v.<org.apache.drill.exec.record.metadata.SchemaBuilder: void <init>()>();
v = <org.apache.drill.common.types.TypeProtos$MinorType: org.apache.drill.common.types.TypeProtos$MinorType VARDECIMAL>;
v = virtualinvoke v.<org.apache.drill.exec.record.metadata.SchemaBuilder: org.apache.drill.exec.record.metadata.SchemaBuilder addNullable(java.lang.String,org.apache.drill.common.types.TypeProtos$MinorType,int,int)>("order_total", v, 38, 2);
v = virtualinvoke v.<org.apache.drill.exec.record.metadata.SchemaBuilder: org.apache.drill.exec.record.metadata.TupleMetadata buildSchema()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.ClientFixture client>;
v = virtualinvoke v.<org.apache.drill.test.ClientFixture: org.apache.drill.exec.physical.rowSet.RowSetBuilder rowSetBuilder(org.apache.drill.exec.record.metadata.TupleMetadata)>(v);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(123.32);
v[0] = v;
v = virtualinvoke v.<org.apache.drill.exec.physical.rowSet.RowSetBuilder: org.apache.drill.exec.physical.rowSet.RowSetBuilder addRow(java.lang.Object[])>(v);
v = virtualinvoke v.<org.apache.drill.exec.physical.rowSet.RowSetBuilder: org.apache.drill.exec.physical.rowSet.RowSet$SingleRowSet build()>();
staticinvoke <org.apache.drill.test.rowSet.RowSetUtilities: void verify(org.apache.drill.exec.physical.rowSet.RowSet,org.apache.drill.exec.physical.rowSet.RowSet)>(v, v);
return;
}
public void testPhysicalPlanSubmission() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v, v, v;
long v;
org.apache.drill.test.QueryBuilder$QuerySummary v;
java.lang.String v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select * from mysql.`drill_mysql_test`.person");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: java.lang.String explainJson()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder physical(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$QuerySummary: long recordCount()>();
staticinvoke <org.junit.Assert: void assertEquals(long,long)>(4L, v);
return;
}
public void emptyOutput()
{
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
org.apache.drill.test.TestBuilder v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select * from mysql.`drill_mysql_test`.person e limit 0");
virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder expectsEmptyResultSet()>();
return;
}
public void testCaseSensitiveTableNames() throws java.lang.Exception
{
java.lang.Object[] v, v;
long v, v, v, v;
java.lang.String v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
boolean v;
org.apache.drill.test.QueryBuilder v, v, v, v, v, v, v, v;
org.apache.drill.test.QueryBuilder$QuerySummary v, v, v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("os.name");
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("linux");
staticinvoke <org.junit.Assume: void assumeTrue(java.lang.String,boolean)>("Skip tests for non-linux systems due to table names case-insensitivity problems on Windows and MacOS", v);
v = newarray (java.lang.Object)[0];
staticinvoke <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: void run(java.lang.String,java.lang.Object[])>("use mysqlCaseInsensitive.`drill_mysql_test`", v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("show tables like \'caseSensitiveTable\'");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$QuerySummary: long recordCount()>();
staticinvoke <org.junit.Assert: void assertEquals(long,long)>(2L, v);
v = newarray (java.lang.Object)[0];
staticinvoke <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: void run(java.lang.String,java.lang.Object[])>("use mysql.`drill_mysql_test`", v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("show tables like \'caseSensitiveTable\'");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$QuerySummary: long recordCount()>();
staticinvoke <org.junit.Assert: void assertEquals(long,long)>(1L, v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("describe caseSensitiveTable");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$QuerySummary: long recordCount()>();
staticinvoke <org.junit.Assert: void assertEquals(long,long)>(1L, v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("describe CASESENSITIVETABLE");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$QuerySummary: long recordCount()>();
staticinvoke <org.junit.Assert: void assertEquals(long,long)>(2L, v);
return;
}
public void testExpressionsWithoutAlias() throws java.lang.Exception
{
java.lang.Object[] v;
java.lang.String[] v;
java.lang.Integer v;
java.math.BigDecimal v;
org.apache.drill.test.TestBuilder v, v, v, v, v;
java.lang.Long v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select count(*), 1+1+2+3+5+8+13+21+34, (1+sqrt(5))/2\nfrom mysql.`drill_mysql_test`.person");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[3];
v[0] = "EXPR$0";
v[1] = "EXPR$1";
v[2] = "EXPR$2";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[3];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(4L);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(88);
v[1] = v;
v = staticinvoke <java.math.BigDecimal: java.math.BigDecimal valueOf(double)>(1.618033988749895);
v[2] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testExpressionsWithoutAliasesPermutations() throws java.lang.Exception
{
java.lang.Object[] v;
java.lang.String[] v;
java.lang.Integer v;
java.math.BigDecimal v;
org.apache.drill.test.TestBuilder v, v, v, v, v;
java.lang.Long v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select EXPR$1, EXPR$0, EXPR$2\nfrom (select 1+1+2+3+5+8+13+21+34, (1+sqrt(5))/2, count(*) from mysql.`drill_mysql_test`.person)");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder ordered()>();
v = newarray (java.lang.String)[3];
v[0] = "EXPR$1";
v[1] = "EXPR$0";
v[2] = "EXPR$2";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[3];
v = staticinvoke <java.math.BigDecimal: java.math.BigDecimal valueOf(double)>(1.618033988749895);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(88);
v[1] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(4L);
v[2] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testExpressionsWithAliases() throws java.lang.Exception
{
java.lang.Object[] v, v;
java.lang.String[] v;
java.lang.Integer v, v, v, v;
java.math.BigDecimal v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select person_id as ID, 1+1+2+3+5+8+13+21+34 as FIBONACCI_SUM, (1+sqrt(5))/2 as golden_ratio\nfrom mysql.`drill_mysql_test`.person limit 2");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[3];
v[0] = "ID";
v[1] = "FIBONACCI_SUM";
v[2] = "golden_ratio";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[3];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(88);
v[1] = v;
v = staticinvoke <java.math.BigDecimal: java.math.BigDecimal valueOf(double)>(1.618033988749895);
v[2] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[3];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(2);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(88);
v[1] = v;
v = staticinvoke <java.math.BigDecimal: java.math.BigDecimal valueOf(double)>(1.618033988749895);
v[2] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testJoinStar() throws java.lang.Exception
{
java.lang.Object[] v, v, v, v;
java.lang.String[] v;
java.lang.Integer v, v, v, v, v, v, v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v, v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select * from (select person_id from mysql.`drill_mysql_test`.person) t join (select person_id from mysql.`drill_mysql_test`.person) t on t.person_id = t.person_id");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[2];
v[0] = "person_id";
v[1] = "person_id0";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[1] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(2);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(2);
v[1] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3);
v[1] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5);
v[1] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValues(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testSemiJoin() throws java.lang.Exception
{
java.lang.Object[] v;
java.lang.String[] v;
java.lang.Integer v, v, v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select person_id from mysql.`drill_mysql_test`.person t1\nwhere exists (select person_id from mysql.`drill_mysql_test`.person\nwhere t.person_id = person_id)");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "person_id";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[4];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(1);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(2);
v[1] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(3);
v[2] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5);
v[3] = v;
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValuesForSingleColumn(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testInformationSchemaViews() throws java.lang.Exception
{
java.lang.Object[] v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = newarray (java.lang.Object)[0];
staticinvoke <org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: void run(java.lang.String,java.lang.Object[])>("select * from information_schema.`views`", v);
return;
}
public void testJdbcTableTypes() throws java.lang.Exception
{
java.lang.Object[] v;
java.lang.String[] v;
org.apache.drill.test.TestBuilder v, v, v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.TestBuilder testBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String)>("select distinct table_type from information_schema.`tables` where table_schema like \'mysql%\'");
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "table_type";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[3];
v[0] = "SYSTEM VIEW";
v[1] = "TABLE";
v[2] = "VIEW";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineValuesForSingleColumn(java.lang.Object[])>(v);
virtualinvoke v.<org.apache.drill.test.TestBuilder: void go()>();
return;
}
public void testLimitPushDown() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v, v;
java.lang.String[] v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select person_id, first_name, last_name from mysql.`drill_mysql_test`.person limit 100");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(.*LIMIT 100";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher include(java.lang.String[])>(v);
v = newarray (java.lang.String)[1];
v[0] = "Limit\\(";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void testLimitPushDownWithOrderBy() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v, v;
java.lang.String[] v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select person_id from mysql.`drill_mysql_test`.person order by first_name limit 100");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(.*ORDER BY `first_name`.*LIMIT 100";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher include(java.lang.String[])>(v);
v = newarray (java.lang.String)[1];
v[0] = "Limit\\(";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void testLimitPushDownWithOffset() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v, v;
java.lang.String[] v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select person_id, first_name from mysql.`drill_mysql_test`.person limit 100 offset 10");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(.*LIMIT 100 OFFSET 10";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher include(java.lang.String[])>(v);
v = newarray (java.lang.String)[1];
v[0] = "Limit\\(";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void testLimitPushDownWithConvertFromJson() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v, v;
java.lang.String[] v, v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("select convert_fromJSON(first_name)[\'ppid\'] from mysql.`drill_mysql_test`.person LIMIT 100");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(.*LIMIT 100";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher include(java.lang.String[])>(v);
v = newarray (java.lang.String)[1];
v[0] = "Limit\\(";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher exclude(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
public void testParquetLimitWithSort() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder v, v;
org.apache.drill.test.QueryBuilder$PlanMatcher v, v;
java.lang.String[] v;
org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcPluginWithMySQLIT: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String)>("SELECT n_name\nFROM cp.`/tpch/nation.parquet`\nORDER BY n_name DESC\nLIMIT 1");
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Limit\\(";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: org.apache.drill.test.QueryBuilder$PlanMatcher include(java.lang.String[])>(v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder$PlanMatcher: void match()>();
return;
}
}