public class org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL extends org.apache.drill.test.ClusterTest
{
private static final java.lang.String DOCKER_IMAGE_MYSQL;
private static final java.lang.String DOCKER_IMAGE_MARIADB;
private static final org.slf4j.Logger logger;
private static org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer;
public void <init>()
{
org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL;
specialinvoke v.<org.apache.drill.test.ClusterTest: void <init>()>();
return;
}
public static void initMysql() throws java.lang.Exception
{
java.lang.Integer v;
java.nio.file.Path v;
org.apache.drill.exec.store.jdbc.JdbcStorageConfig v, v, v;
java.lang.Integer[] v;
long v, v, v;
org.testcontainers.containers.GenericContainer v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.testcontainers.containers.MySQLContainer v, v, v, v, v;
org.apache.drill.test.BaseDirTestWatcher v, v;
org.testcontainers.utility.DockerImageName v, v;
boolean v, v, v, v;
java.util.TimeZone v;
org.apache.drill.common.logical.StoragePluginConfig$AuthMode v, v, v;
org.apache.drill.test.ClusterFixtureBuilder v;
java.lang.String[] v;
java.util.HashMap v;
org.testcontainers.jdbc.JdbcDatabaseDelegate v;
org.testcontainers.containers.JdbcDatabaseContainer v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Boolean v, v, v;
org.slf4j.Logger v;
org.apache.drill.test.ClusterFixture v, v, v;
java.util.concurrent.TimeUnit v, v, v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: 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.TestJdbcInsertWithMySQL: void startCluster(org.apache.drill.test.ClusterFixtureBuilder)>(v);
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.BaseDirTestWatcher dirTestWatcher>;
v = newarray (java.lang.String)[0];
v = staticinvoke <java.nio.file.Paths: java.nio.file.Path get(java.lang.String,java.lang.String[])>("", v);
virtualinvoke v.<org.apache.drill.test.BaseDirTestWatcher: java.io.File copyResourceToRoot(java.nio.file.Path)>(v);
v = staticinvoke <java.util.TimeZone: java.util.TimeZone getTimeZone(java.lang.String)>("UTC");
staticinvoke <java.util.TimeZone: void setDefault(java.util.TimeZone)>(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 = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("linux");
if v == 0 goto label;
v = "aarch64";
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("os.arch");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
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");
goto label;
label:
v = staticinvoke <org.testcontainers.utility.DockerImageName: org.testcontainers.utility.DockerImageName parse(java.lang.String)>("mysql:5.7.27");
label:
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.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer> = v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: 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.TestJdbcInsertWithMySQL: 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>()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("maximumPoolSize", "1");
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(5L);
v = staticinvoke <java.lang.String: java.lang.String valueOf(long)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("idleTimeout", v);
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(5L);
v = staticinvoke <java.lang.String: java.lang.String valueOf(long)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("keepaliveTime", v);
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(20L);
v = staticinvoke <java.lang.String: java.lang.String valueOf(long)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("maxLifetime", v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("minimumIdle", "0");
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getJdbcUrl()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("JDBC URL: {}", v);
v = new org.apache.drill.exec.store.jdbc.JdbcStorageConfig;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getUsername()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getPassword()>();
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, v, v, 0, 1, v, null, 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.TestJdbcInsertWithMySQL: 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 = new org.apache.drill.exec.store.jdbc.JdbcStorageConfig;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getUsername()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getPassword()>();
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, v, v, 0, 0, v, null, 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.TestJdbcInsertWithMySQL: 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_no_write", 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.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getUsername()>();
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
v = virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: java.lang.String getPassword()>();
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, v, v, 1, 1, v, null, 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.TestJdbcInsertWithMySQL: 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 void testInsertValues() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder$PlanMatcher v, v;
java.lang.Integer v, v, v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v, v, v, v, v, v, v;
java.lang.Long v;
boolean v;
org.apache.drill.test.QueryBuilder$QuerySummary v;
java.lang.Throwable v;
java.lang.Object[] v, v, v, v, v, v, v, v, v;
java.lang.String[] v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL v;
org.apache.drill.test.QueryBuilder v, v, v, v, v, v, v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL;
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("CREATE TABLE %s (ID, NAME) AS (VALUES(1,2))", 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: boolean succeeded()>();
staticinvoke <org.junit.Assert: void assertTrue(boolean)>(v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("insert into %s(ID, NAME) VALUES (3,4)", v);
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(sql=\\[INSERT INTO";
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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("insert into %s(ID, NAME) VALUES (3,4)", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "ROWCOUNT";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(1L);
v[0] = 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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("select * from %s", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[2];
v[0] = "ID";
v[1] = "NAME";
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)>(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)>(4);
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()>();
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void testInsertSelectValues() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder$PlanMatcher v, v;
java.lang.Integer v, v, v, v, v, v;
org.apache.drill.test.TestBuilder v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Long v;
boolean v;
org.apache.drill.test.QueryBuilder$QuerySummary v;
java.lang.Throwable v;
java.lang.Object[] v, v, v, v, v, v, v, v, v, v;
java.lang.String[] v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL v;
org.apache.drill.test.QueryBuilder v, v, v, v, v, v, v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL;
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("CREATE TABLE %s (ID, NAME) AS (VALUES(1,2))", 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: boolean succeeded()>();
staticinvoke <org.junit.Assert: void assertTrue(boolean)>(v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT * FROM (VALUES(1,2), (3,4))", v);
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(sql=\\[INSERT INTO";
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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT * FROM (VALUES(1,2), (3,4))", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "ROWCOUNT";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(2L);
v[0] = 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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("select * from %s", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[2];
v[0] = "ID";
v[1] = "NAME";
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)>(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)>(1);
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)>(4);
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()>();
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void testInsertSelectFromJdbcTable() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder$PlanMatcher v, 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, v, v, v, v, v;
java.lang.Long v;
boolean v;
org.apache.drill.test.QueryBuilder$QuerySummary v;
java.lang.Throwable v;
java.lang.Object[] v, v, v, v, v, v, v, v, v, v, v;
java.lang.String[] v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL v;
org.apache.drill.test.QueryBuilder v, v, v, v, v, v, v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL;
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("CREATE TABLE %s (ID, NAME) AS (VALUES(1,2), (3,4))", 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: boolean succeeded()>();
staticinvoke <org.junit.Assert: void assertTrue(boolean)>(v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[2];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v[1] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT * FROM %s", v);
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(sql=\\[INSERT INTO";
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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[2];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v[1] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT * FROM %s", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "ROWCOUNT";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(2L);
v[0] = 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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("select * from %s", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[2];
v[0] = "ID";
v[1] = "NAME";
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)>(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)>(4);
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)>(1);
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)>(4);
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()>();
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void testInsertSelectFromNonJdbcTable() throws java.lang.Exception
{
org.apache.drill.test.QueryBuilder$PlanMatcher v, 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, v, v, v, v, v;
java.lang.Long v;
boolean v;
org.apache.drill.test.QueryBuilder$QuerySummary v;
java.lang.Throwable v;
java.lang.Object[] v, v, v, v, v, v, v, v, v, v, v;
java.lang.String[] v, v, v;
org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL v;
org.apache.drill.test.QueryBuilder v, v, v, v, v, v, v, v;
v := @this: org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL;
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("CREATE TABLE %s (ID, NAME) AS (VALUES(1,2))", 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: boolean succeeded()>();
staticinvoke <org.junit.Assert: void assertTrue(boolean)>(v);
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[2];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v[1] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT n_nationkey, n_regionkey FROM cp.`tpch/nation.parquet` limit 3", v);
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$PlanMatcher planMatcher()>();
v = newarray (java.lang.String)[1];
v[0] = "Jdbc\\(sql=\\[INSERT INTO";
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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[2];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v[1] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("INSERT INTO %s SELECT n_nationkey, n_regionkey FROM cp.`tpch/nation.parquet` limit 3", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[1];
v[0] = "ROWCOUNT";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder baselineColumns(java.lang.String[])>(v);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(3L);
v[0] = 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()>();
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.TestBuilder testBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder sqlQuery(java.lang.String,java.lang.Object[])>("select * from %s", v);
v = virtualinvoke v.<org.apache.drill.test.TestBuilder: org.apache.drill.test.TestBuilder unOrdered()>();
v = newarray (java.lang.String)[2];
v[0] = "ID";
v[1] = "NAME";
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)>(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)>(0);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(0);
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)>(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)>(1);
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()>();
label:
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.apache.drill.test.QueryBuilder queryBuilder()>();
v = newarray (java.lang.Object)[1];
v[0] = "mysql.`drill_mysql_test`.`test_table`";
v = virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder sql(java.lang.String,java.lang.Object[])>("DROP TABLE IF EXISTS %s", v);
virtualinvoke v.<org.apache.drill.test.QueryBuilder: org.apache.drill.test.QueryBuilder$QuerySummary run()>();
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public static void stopMysql()
{
org.testcontainers.containers.JdbcDatabaseContainer v, v;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
if v == null goto label;
v = <org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.testcontainers.containers.JdbcDatabaseContainer jdbcContainer>;
virtualinvoke v.<org.testcontainers.containers.JdbcDatabaseContainer: void stop()>();
label:
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/drill/exec/store/jdbc/TestJdbcInsertWithMySQL;");
<org.apache.drill.exec.store.jdbc.TestJdbcInsertWithMySQL: org.slf4j.Logger logger> = v;
return;
}
}