diff --git a/integration-tests/kyuubi-jdbc-it/src/test/resources/impala-compose.yml b/integration-tests/kyuubi-jdbc-it/src/test/resources/impala-compose.yml new file mode 100644 index 00000000000..34f55882704 --- /dev/null +++ b/integration-tests/kyuubi-jdbc-it/src/test/resources/impala-compose.yml @@ -0,0 +1,82 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +# modified compose file from Impala repo, see +# https://github.com/apache/impala/blob/master/docker/quickstart.yml +version: "3.5" +services: + metastore: + image: apache/impala:4.0.0-impala_quickstart_hms + command: ["hms"] + ports: + - "9083" + volumes: + # Volume used to store Apache Derby database. + - impala-data:/var/lib/hive + # Warehouse directory. HMS does file operations so needs access to the + # shared volume. + - impala-data:/user/hive/warehouse + - ./impala_conf:/opt/hive/conf:ro + + statestored: + image: apache/impala:4.0.0-statestored + ports: + - "25010" + command: ["-redirect_stdout_stderr=false", "-logtostderr", "-v=1"] + volumes: + - ./impala_conf:/opt/impala/conf:ro + + catalogd: + depends_on: + - statestored + - metastore + image: apache/impala:4.0.0-catalogd + ports: + - "25020" + command: ["-redirect_stdout_stderr=false", "-logtostderr", "-v=1", + "-hms_event_polling_interval_s=1", "-invalidate_tables_timeout_s=999999"] + volumes: + # Warehouse directory. Catalog does file operations so needs access to the + # shared volume. + - impala-data:/user/hive/warehouse + - ./impala_conf:/opt/impala/conf:ro + + impalad: + image: apache/impala:4.0.0-impalad_coord_exec + depends_on: + - statestored + - catalogd + ports: + - "21050:21050" + command: [ "-v=1", + "-redirect_stdout_stderr=false", "-logtostderr", + "-mt_dop_auto_fallback=true", + "-default_query_options=mt_dop=4,default_file_format=parquet,default_transactional_type=insert_only", + "-mem_limit=4gb"] + environment: + # Keep the Java heap small to preserve memory for query execution. + - JAVA_TOOL_OPTIONS="-Xmx1g" + volumes: + - impala-data:/user/hive/warehouse + - ./impala_conf:/opt/impala/conf:ro + +volumes: + impala-data: + +networks: + default: + name: default-kyuubi-impala-test \ No newline at end of file diff --git a/integration-tests/kyuubi-jdbc-it/src/test/resources/impala_conf/hive-site.xml b/integration-tests/kyuubi-jdbc-it/src/test/resources/impala_conf/hive-site.xml new file mode 100644 index 00000000000..97dbc022118 --- /dev/null +++ b/integration-tests/kyuubi-jdbc-it/src/test/resources/impala_conf/hive-site.xml @@ -0,0 +1,74 @@ + + + + + + + + hive.metastore.dml.events + true + + + + hive.metastore.event.db.notification.api.auth + false + + + hive.metastore.uris + thrift://metastore:9083 + + + + hive.metastore.warehouse.dir + /user/hive/warehouse/managed + + + hive.metastore.warehouse.external.dir + /user/hive/warehouse/external + + + + hive.support.concurrency + true + + + + hive.txn.manager + org.apache.hadoop.hive.ql.lockmgr.DbTxnManager + + + + javax.jdo.option.ConnectionDriverName + org.apache.derby.jdbc.EmbeddedDriver + + + + javax.jdo.option.ConnectionURL + jdbc:derby:;databaseName=/var/lib/hive/metastore/metastore_db;create=true + + + + hive.stats.autogather + false + + \ No newline at end of file