* feat(TDI-47263): Upgrade Redshift driver to v2.x * Add dependency aws-java-sdk-redshift-internal-1.12.x.jar * UI change * Connection javajet * Connection javajet change * Row generate code * Migration task * input compile error * input compile error * add back jar version * add back jar version * class version * migration add tCreate table * feat(TUP-35069):Upgrade Redshift driver to v2.x (#7411) https://jira.talendforge.org/browse/TUP-35069 Co-authored-by: pyzhou <pyzhou@talend.com> Co-authored-by: Jane Ding <jding@talend.com>
340 lines
12 KiB
XML
340 lines
12 KiB
XML
<COMPONENT>
|
|
<HEADER PLATEFORM="ALL" SERIAL="" VERSION="0.102" STATUS="ALPHA"
|
|
COMPATIBILITY="ALL" AUTHOR="Talend" RELEASE_DATE="20150205A"
|
|
STARTABLE="true" PARTITIONING="NONE">
|
|
<SIGNATURE />
|
|
</HEADER>
|
|
|
|
<FAMILIES>
|
|
<FAMILY>Databases/DB Specifics/Amazon/Redshift</FAMILY>
|
|
<FAMILY>Cloud/Amazon/Redshift</FAMILY>
|
|
</FAMILIES>
|
|
|
|
<DOCUMENTATION>
|
|
<URL />
|
|
</DOCUMENTATION>
|
|
|
|
<CONNECTORS>
|
|
<CONNECTOR CTYPE="FLOW" MAX_INPUT="0" MAX_OUTPUT="0" />
|
|
<CONNECTOR CTYPE="ITERATE" MAX_INPUT="0" MAX_OUTPUT="0" />
|
|
<CONNECTOR CTYPE="SUBJOB_OK" MAX_INPUT="1" />
|
|
<CONNECTOR CTYPE="SUBJOB_ERROR" MAX_INPUT="1" />
|
|
<CONNECTOR CTYPE="COMPONENT_OK" MAX_INPUT="1" />
|
|
<CONNECTOR CTYPE="COMPONENT_ERROR" MAX_INPUT="1" />
|
|
<CONNECTOR CTYPE="RUN_IF" MAX_INPUT="0" MAX_OUTPUT="0"/>
|
|
</CONNECTORS>
|
|
|
|
<PARAMETERS>
|
|
<PARAMETER NAME="PROPERTY" FIELD="PROPERTY_TYPE" NUM_ROW="1" SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
REPOSITORY_VALUE="DATABASE:REDSHIFT" />
|
|
|
|
<PARAMETER NAME="USE_EXISTING_CONNECTION" FIELD="CHECK"
|
|
NUM_ROW="2" GROUP="DB_CONFIG">
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="CONNECTION" FIELD="COMPONENT_LIST"
|
|
REQUIRED="true" FILTER="tRedshiftConnection" NUM_ROW="2"
|
|
SHOW_IF="USE_EXISTING_CONNECTION == 'true'" DYNAMIC_SETTINGS="true"
|
|
GROUP="DB_CONFIG" />
|
|
|
|
<PARAMETER
|
|
NAME="DRIVER_VERSION"
|
|
FIELD="CLOSED_LIST"
|
|
NUM_ROW="10"
|
|
SHOW_IF="(USE_EXISTING_CONNECTION == 'false')"
|
|
GROUP="DB_CONFIG"
|
|
REPOSITORY_VALUE="DRIVER_VERSION">
|
|
<ITEMS DEFAULT="DRIVER_V2">
|
|
<ITEM NAME="DRIVER_V1" VALUE="DRIVER_V1" />
|
|
<ITEM NAME="DRIVER_V2" VALUE="DRIVER_V2" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="HOST" FIELD="TEXT" NUM_ROW="30" SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
REPOSITORY_VALUE="SERVER_NAME" REQUIRED="true" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="PORT" FIELD="TEXT" NUM_ROW="30" SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
REPOSITORY_VALUE="PORT" REQUIRED="true" GROUP="DB_CONFIG">
|
|
<DEFAULT>"5439"</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="DBNAME" FIELD="TEXT" NUM_ROW="40" SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
REPOSITORY_VALUE="SID" REQUIRED="true" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="SCHEMA_DB" FIELD="TEXT" NUM_ROW="40" SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
REPOSITORY_VALUE="SCHEMA" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="TYPE" FIELD="TEXT" NUM_ROW="4" SHOW="false"
|
|
REPOSITORY_VALUE="TYPE">
|
|
<DEFAULT>Redshift</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="USER" FIELD="TEXT" NUM_ROW="50" SHOW_IF="(USE_EXISTING_CONNECTION == 'false') "
|
|
REPOSITORY_VALUE="USERNAME" REQUIRED="true" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="PASS" FIELD="PASSWORD" NUM_ROW="50" SHOW_IF="(USE_EXISTING_CONNECTION == 'false') "
|
|
REPOSITORY_VALUE="PASSWORD" REQUIRED="true" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="PROPERTIES"
|
|
FIELD="TEXT"
|
|
NUM_ROW="80"
|
|
REPOSITORY_VALUE="PROPERTIES_STRING"
|
|
SHOW_IF="(USE_EXISTING_CONNECTION == 'false') AND ((USE_STRING_PROPERTIES == 'true') AND (DRIVER_VERSION == 'DRIVER_V2')) OR (DRIVER_VERSION == 'DRIVER_V1')"
|
|
GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="USE_STRING_PROPERTIES"
|
|
SHOW_IF="(USE_EXISTING_CONNECTION == 'false') AND (DRIVER_VERSION == 'DRIVER_V2')"
|
|
REPOSITORY_VALUE="USE_STRING_PROPERTIES"
|
|
FIELD="CHECK"
|
|
NUM_ROW="70"
|
|
REQUIRED="true"
|
|
GROUP="DB_CONFIG"
|
|
>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="ENTRY_PROPERTIES" FIELD="TABLE"
|
|
SHOW_IF="(USE_EXISTING_CONNECTION == 'false') AND (USE_STRING_PROPERTIES == 'false') AND (DRIVER_VERSION == 'DRIVER_V2')"
|
|
GROUP="DB_CONFIG"
|
|
REPOSITORY_VALUE="ENTRY_PROPERTIES"
|
|
REQUIRED="false" NUM_ROW="80" NB_LINES="4">
|
|
<ITEMS>
|
|
<ITEM NAME="KEY" />
|
|
<ITEM NAME="VALUE" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="TABLE" FIELD="DBTABLE" NUM_ROW="100"
|
|
LOG4J_ENABLED="false" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="SCHEMA" FIELD="SCHEMA_TYPE" NUM_ROW="150" GROUP="DB_CONFIG">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="QUERYSTORE"
|
|
FIELD="QUERYSTORE_TYPE"
|
|
NUM_ROW="160"
|
|
GROUP="DB_CONFIG"
|
|
>
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="QUERY"
|
|
FIELD="MEMO_SQL"
|
|
NUM_ROW="170"
|
|
GROUP="DB_CONFIG"
|
|
>
|
|
<DEFAULT>"select id, name from employee"</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="MAPPING" FIELD="MAPPING_TYPE" NUM_ROW="220"
|
|
SHOW="false">
|
|
<DEFAULT>redshift_id</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="USE_EXISTING_CONNECTION_S3" FIELD="CHECK"
|
|
NUM_ROW="460" GROUP="S3_CONFIG" SHOW_IF="ASSUME_ROLE == 'false'">
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="CONNECTION_S3" FIELD="COMPONENT_LIST" REQUIRED="true" FILTER="tS3Connection"
|
|
NUM_ROW="460" SHOW_IF="USE_EXISTING_CONNECTION_S3 == 'true'" GROUP="S3_CONFIG"/>
|
|
|
|
<PARAMETER
|
|
NAME="ACCESS_KEY"
|
|
FIELD="TEXT"
|
|
NUM_ROW="500"
|
|
REQUIRED="true"
|
|
NOT_SHOW_IF="(USE_EXISTING_CONNECTION_S3 == 'true') OR isShow[ASSUME_ROLE] AND (ASSUME_ROLE == 'true')"
|
|
GROUP="S3_CONFIG"
|
|
>
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="SECRET_KEY"
|
|
FIELD="PASSWORD"
|
|
NUM_ROW="500"
|
|
REQUIRED="true"
|
|
NOT_SHOW_IF="(USE_EXISTING_CONNECTION_S3 == 'true') OR isShow[ASSUME_ROLE] AND (ASSUME_ROLE == 'true')"
|
|
GROUP="S3_CONFIG"
|
|
>
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="ASSUME_ROLE"
|
|
FIELD="CHECK"
|
|
NUM_ROW="600"
|
|
REQUIRED="true"
|
|
GROUP="S3_CONFIG"
|
|
NOT_SHOW_IF="USE_EXISTING_CONNECTION_S3 == 'true'"
|
|
>
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="ROLE_TABLE"
|
|
FIELD="TABLE"
|
|
NUM_ROW="650"
|
|
SHOW_IF="isShow[ASSUME_ROLE] AND (ASSUME_ROLE == 'true')"
|
|
GROUP="S3_CONFIG"
|
|
>
|
|
<ITEMS>
|
|
<ITEM NAME="ROLE_ARN" VALUE=""/>
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="BUCKET"
|
|
FIELD="TEXT"
|
|
NUM_ROW="1000"
|
|
REQUIRED="true"
|
|
GROUP="S3_CONFIG"
|
|
>
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="OBJECTS_PREFIX"
|
|
FIELD="TEXT"
|
|
NUM_ROW="1000"
|
|
REQUIRED="false"
|
|
GROUP="S3_CONFIG"
|
|
>
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
</PARAMETERS>
|
|
|
|
<ADVANCED_PARAMETERS>
|
|
<PARAMETER NAME="EXPORT_TYPE" FIELD="CLOSED_LIST" NUM_ROW="1"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS">
|
|
<ITEMS DEFAULT="DELIMITED_OR_CSV">
|
|
<ITEM NAME="DELIMITED_OR_CSV" VALUE="DELIMITED_OR_CSV" />
|
|
<ITEM NAME="FIXEDWIDTH" VALUE="FIXEDWIDTH" />
|
|
<ITEM NAME="PARQUET" VALUE="PARQUET" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="FIELDSEPARATOR" FIELD="TEXT" REQUIRED="true"
|
|
GROUP="LOAD_DETAILS" NUM_ROW="10" SHOW_IF="EXPORT_TYPE=='DELIMITED_OR_CSV'">
|
|
<DEFAULT>','</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="TEXT_ENCLOSURE" FIELD="CLOSED_LIST"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" NUM_ROW="10" SHOW_IF="EXPORT_TYPE=='DELIMITED_OR_CSV'">
|
|
<ITEMS DEFAULT="EMPTY">
|
|
<ITEM NAME="EMPTY" VALUE="EMPTY"></ITEM>
|
|
<ITEM NAME="DOUBLE_QUOTE" VALUE="DOUBLE_QUOTE"></ITEM>
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="FIXEDWIDTH_MAPPING" FIELD="TEXT" REQUIRED="true"
|
|
GROUP="LOAD_DETAILS" NUM_ROW="18" SHOW_IF="EXPORT_TYPE=='FIXEDWIDTH'">
|
|
<DEFAULT>"column1:8,column2:64"</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="COMPRESS" FIELD="CHECK" NUM_ROW="20"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" NOT_SHOW_IF="EXPORT_TYPE=='PARQUET'">
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="COMPRESSION" FIELD="CLOSED_LIST" NUM_ROW="20"
|
|
GROUP="LOAD_DETAILS" SHOW_IF="COMPRESS=='true' AND (EXPORT_TYPE=='FIXEDWIDTH' OR EXPORT_TYPE=='DELIMITED_OR_CSV')">
|
|
<ITEMS DEFAULT="GZIP">
|
|
<ITEM NAME="GZIP" VALUE="GZIP" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="ENCRYPT" FIELD="CHECK" NUM_ROW="35"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" NOT_SHOW_IF="(USE_EXISTING_CONNECTION_S3 == 'true') OR (EXPORT_TYPE=='PARQUET')">
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="ENCRYPTED_KEY" FIELD="PASSWORD" NUM_ROW="38"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" SHOW_IF="isShow[ENCRYPT] AND ENCRYPT=='true'">
|
|
<DEFAULT>""</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="SPECIFY_NULL_STRING" FIELD="CHECK" NUM_ROW="40"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" NOT_SHOW_IF="EXPORT_TYPE=='PARQUET'">
|
|
<DEFAULT>true</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="NULL_STRING" FIELD="CLOSED_LIST" NUM_ROW="40"
|
|
REQUIRED="true" SHOW_IF="isShow[SPECIFY_NULL_STRING] AND SPECIFY_NULL_STRING=='true'" GROUP="LOAD_DETAILS">
|
|
<ITEMS DEFAULT="DEFAULT">
|
|
<ITEM NAME="DEFAULT" VALUE=""\\\\N"" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="ESCAPE" FIELD="CHECK" NUM_ROW="50"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS" NOT_SHOW_IF="EXPORT_TYPE=='PARQUET'">
|
|
<DEFAULT>true</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="ALLOWOVERWRITE" FIELD="CHECK" NUM_ROW="60"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS">
|
|
<DEFAULT>false</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER NAME="PARALLEL" FIELD="CHECK" NUM_ROW="70"
|
|
REQUIRED="true" GROUP="LOAD_DETAILS">
|
|
<DEFAULT>true</DEFAULT>
|
|
</PARAMETER>
|
|
|
|
<PARAMETER
|
|
NAME="JDBC_URL"
|
|
FIELD="CLOSED_LIST"
|
|
NUM_ROW="80"
|
|
REPOSITORY_VALUE="JDBC_URL"
|
|
SHOW_IF="USE_EXISTING_CONNECTION == 'false'"
|
|
>
|
|
<ITEMS DEFAULT="STANDARD">
|
|
<ITEM NAME="STANDARD" VALUE="STANDARD" />
|
|
<ITEM NAME="SSO" VALUE="SSO" />
|
|
</ITEMS>
|
|
</PARAMETER>
|
|
</ADVANCED_PARAMETERS>
|
|
|
|
<CODEGENERATION>
|
|
<IMPORTS>
|
|
<IMPORT NAME="Driver-Redshift-V2" MODULE="redshift-jdbc42-2.1.0.3.jar" MVN="mvn:com.amazon.redshift/redshift-jdbc42/2.1.0.3"
|
|
REQUIRED_IF="(DRIVER_VERSION == 'DRIVER_V2') AND (USE_EXISTING_CONNECTION == 'false')"/>
|
|
<IMPORT NAME="Driver-Redshift-V1" MODULE="redshift-jdbc42-no-awssdk-1.2.55.1083.jar" MVN="mvn:com.amazon.redshift/redshift-jdbc42-no-awssdk/1.2.55.1083"
|
|
REQUIRED_IF="(DRIVER_VERSION=='DRIVER_V1') and (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="antlr4-runtime-4.8-1.jar" MODULE="antlr4-runtime-4.8-1.jar" MVN="mvn:org.antlr/antlr4-runtime/4.8-1" REQUIRED="true" />
|
|
<IMPORT NAME="aws-java-sdk-1.11.848.jar" MODULE="aws-java-sdk-1.11.848.jar" MVN="mvn:com.amazonaws/aws-java-sdk/1.11.848" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="aws-java-sdk-redshift-internal-1.12.x.jar" MODULE="aws-java-sdk-redshift-internal-1.12.x.jar" MVN="mvn:com.amazonaws/aws-java-sdk-redshift-internal/1.12.x" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="commons-logging-1.2.jar" MODULE="commons-logging-1.2.jar" MVN="mvn:commons-logging/commons-logging/1.2" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="jackson-databind-2.11.4.jar" MODULE="jackson-databind-2.11.4.jar" MVN="mvn:com.fasterxml.jackson.core/jackson-databind/2.11.4" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="jackson-core-2.11.4.jar" MODULE="jackson-core-2.11.4.jar" MVN="mvn:com.fasterxml.jackson.core/jackson-core/2.11.4" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="jackson-annotations-2.11.4.jar" MODULE="jackson-annotations-2.11.4.jar" MVN="mvn:com.fasterxml.jackson.core/jackson-annotations/2.11.4" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="httpcore-4.4.13.jar" MODULE="httpcore-4.4.13.jar" MVN="mvn:org.apache.httpcomponents/httpcore/4.4.13" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="httpclient-4.5.13.jar" MODULE="httpclient-4.5.13.jar" MVN="mvn:org.apache.httpcomponents/httpclient/4.5.13" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="joda-time-2.8.1.jar" MODULE="joda-time-2.8.1.jar" MVN="mvn:joda-time/joda-time/2.8.1" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
<IMPORT NAME="commons-codec-1.14.jar" MODULE="commons-codec-1.14.jar" MVN="mvn:commons-codec/commons-codec/1.14" REQUIRED_IF="(JDBC_URL == 'SSO') AND (USE_EXISTING_CONNECTION == 'false')" />
|
|
</IMPORTS>
|
|
</CODEGENERATION>
|
|
<RETURNS />
|
|
</COMPONENT>
|