Talend Connect
Virtual Summit
JOIN US!
And visit the Customer
& Community Lounge.
May 27-28, wherever you are.

Redshift eror Talend 7.1

Highlighted
Five Stars

Redshift eror Talend 7.1

Hello everyone,

 

I'm facing a problem with tRedshifRow, the stack says about regex but my query got no regex.

On modules it show the installed driver for RedShift but it don't appears at 

/opt/talend/configuration/.m2/repository/org/talend/libraries

 

Screenshot from 2019-02-21 19-27-13.png

 

Look the query, i identified that the error occurs at final step in last query, but the qury runs sucessfully at dbeaver sgbd and web aws athena.

but fails on tredshiftrow

 

"

CREATE TEMPORARY TABLE TMP_SITE_PRODUTO AS(
SELECT COD_PRODUTO,
DESCRICAO,
CASE WHEN COD_EAN IS NULL THEN '-1' ELSE COD_EAN END COD_EAN,
FLG_PERSONALIZACAO as FLG_PERSONALIZACAO
FROM (
SELECT
MSSQL_PROD.SKU AS COD_PRODUTO,
MODELOS.descricao,
MSSQL_PROD.EAN AS COD_EAN,
CASE WHEN PROD_PERSONAL.MODELO IS NULL THEN 'N'
WHEN PROD_PERSONAL.MODELO IS NOT NULL AND PROD_PERSONAL.ATIVO = 'f' then 'N'
ELSE 'S' END FLG_PERSONALIZACAO,
MSSQL_PROD.DAT_CARGA,
RANK() OVER(PARTITION BY MSSQL_PROD.SKU ORDER BY MAX(MSSQL_PROD.DAT_CARGA)desc) AS LINHA
FROM CENTAURO_SPECTRUM.MSSQL_6000_CTR_V1_PRODUTOS MSSQL_PROD
LEFT JOIN CENTAURO_SPECTRUM.MSSQL_6000_CTR_V1_MODELOS MODELOS
ON MODELOS.codigo = MSSQL_PROD.modeloid
LEFT JOIN CENTAURO_SPECTRUM.MSSQL_6000_CTR_V1_PRODUTOS_PERSONALIZACOES PROD_PERSONAL
ON MSSQL_PROD.MODELOID = PROD_PERSONAL.MODELO
AND MSSQL_PROD.COR_CODIGO = PROD_PERSONAL.COR
AND PROD_PERSONAL.ATIVO = 't'
--left join CENTAURO_SPECTRUM.MSSQL_6000_CTR_V1_MODELOS_VIRTUAIS MOD_VIRTUAL
--on PROD_PERSONAL.CodigoModeloVirtualPrePersonalizado = MOD_VIRTUAL.Codigo
WHERE MSSQL_PROD.SKU NOT LIKE '%XXXXXX%'
GROUP BY
MSSQL_PROD.SKU,
MODELOS.descricao,
MSSQL_PROD.EAN,
CASE WHEN PROD_PERSONAL.MODELO IS NULL THEN 'N'
WHEN PROD_PERSONAL.MODELO IS NOT NULL AND PROD_PERSONAL.ATIVO = 'f' then 'N'
ELSE 'S' END,
MSSQL_PROD.DAT_CARGA
)
WHERE LINHA = 1
);


CREATE TEMPORARY TABLE TMP_PRODUTO AS(
select
case
when a.cod_produto is null then 'SITEEEEE'
else 'SISPACCC'
end origem,
case
when a.cod_produto is null then b.cod_produto
else a.cod_produto
end cod_produto,
case
when a.des_produto is null then upper(b.descricao)
else a.des_produto
end des_produto,
case
when b.flg_personalizacao is null then 'N'
else b.flg_personalizacao
end flg_personalizacao
from CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTOS a
full outer join TMP_SITE_PRODUTO b
on a.cod_produto = b.cod_produto
);


CREATE TEMPORARY TABLE TMP_ROYALTIES AS(
SELECT DISTINCT COD_MODELO FROM CENTAURO_SPECTRUM.IFX_0000_SIS_V1_CONTRATO_ROYALTIES_MOD
WHERE CAST(TO_CHAR(SYSDATE,'YYYYMMDD') AS INTEGER ) BETWEEN DATA_INICIAL_CONTRATO AND DATA_FINAL_CONTRATO
);


CREATE TEMPORARY TABLE TMP_PRODUTO_MODELO AS(
select * from
(
select
a.origem,
a.cod_produto,
a.des_produto,
case when b.cod_produto_mod is null then c.codigo else b.cod_produto_mod end cod_modelo,
case when b.des_modelo is null then upper(c.descricao) else b.des_modelo end dsc_modelo,
a.flg_personalizacao
from TMP_PRODUTO a
full outer join
(select * from CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTO_MODELO
where cod_produto_mod not like '%****%') b
on left(a.cod_produto,6) = b.cod_produto_mod
full outer join
(select * from CENTAURO_SPECTRUM.MSSQL_6000_CTR_V1_MODELOS
where codigo not like '%FK%' and codigo not like '%FAKE%' and codigo not like '%****%') c
on left(a.cod_produto,6) = c.codigo
)
where origem is not null
);


CREATE TEMPORARY TABLE TMP_UDN as(
SELECT PRODUTO_UDN.COD_PRODUTO AS COD_PRODUTO,
UNID_NECESSIDADE.COD_UDN AS COD_UDN,
UPPER(UNID_NECESSIDADE.DES_UDN) AS DSC_UDN
FROM CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTO_UDN PRODUTO_UDN
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_UNID_NECESSIDADE UNID_NECESSIDADE
ON PRODUTO_UDN.COD_UDN = UNID_NECESSIDADE.COD_UDN
);


create table TEST as(
SELECT
case when a.origem = 'SISPACCC' then 1 else 2 end cod_origem,
a.origem as dsc_origem,
a.cod_produto,
a.des_produto as dsc_produto,
a.cod_modelo,
a.dsc_modelo,
TAB_TAMANHOS.COD_TAMANHO AS COD_TAMANHO,
TAB_TAMANHOS.DES_TAMANHO AS DSC_TAMANHO,
TAB_CORES.COD_COR AS COD_COR,
TAB_CORES.DESCRICAO_COR AS DSC_COR,
case when PRODUTO_EAN.COD_PRODUTO_EAN is null then '-1' else COD_PRODUTO_EAN end COD_EAN,
cast(PRODUTOS.COD_NCM as integer) AS COD_NCM,
MARCA.COD_MARCA AS COD_MARCA,
UPPER(MARCA.DES_MARCA) AS DSC_MARCA,
SALA.COD_NUCLEO AS COD_SALA,
UPPER(SALA.DES_NUCLEO) AS DSC_SALA,
MESA.COD_MESA AS COD_MESA,
UPPER(MESA.DES_MESA) AS DSC_MESA,
GRUPO.COD_GRUPO AS COD_GRUPO,
UPPER(GRUPO.DES_GRUPO) AS DSC_GRUPO,
SUBGRUPO.COD_SUBGRUPO AS COD_SUBGRUPO,
UPPER(SUBGRUPO.DES_SUBGRUPO) AS DSC_SUBGRUPO,
CATEGORIA.COD_CATEGORIA AS COD_CATEGORIA,
UPPER(CATEGORIA.DES_CATEGORIA) AS DSC_CATEGORIA,
LINHA.COD_LINHA AS COD_LINHA,
UPPER(LINHA.DES_LINHA) AS DSC_LINHA,
MODALIDADE.COD_MODALIDADE AS COD_MODALIDADE,
UPPER(MODALIDADE.DES_MODALIDADE) AS DSC_MODALIDADE,
SEXO.COD_SEXO AS COD_GENERO,
UPPER(SEXO.DES_SEXO) AS DSC_GENERO,
FX_ETARIA.COD_FAIXA_ETARIA AS COD_FX_ETARIA,
UPPER(FX_ETARIA.DES_FAIXA_ETARIA) AS DSC_FX_ETARIA,
CLASSE.COD_CLASSE AS COD_CLASSE,
UPPER(CLASSE.DES_CLASSE) AS DSC_CLASSE,
DIVISAO_GRUPO.COD_DIVISAO AS COD_DIVISAO,
UPPER(DIVISAO_GRUPO.DES_DIVISAO) AS DSC_DIVISAO,
CAST(CATEGORIA.COD_CATEGORIA || SUBGRUPO.COD_SUBGRUPO || CLASSE.COD_CLASSE || GRUPO.COD_GRUPO AS VARCHAR(20)) AS COD_CSC,
REPLACE(CATEGORIA.DES_CATEGORIA,'\n','') || '-' || REPLACE(SUBGRUPO.DES_SUBGRUPO,'\n','') || '-' || CLASSE.COD_CLASSE AS DSC_CSC,
cod_udn,
dsc_udn,
'-1' as cod_estilo,
'-1' as dsc_estilo,
'-1' as cod_hub,
'-1' as dsc_hub,
'-1' as cod_seller,
'-1' as dsc_seller,
0.0 as PCT_COMISSAO,
case when (IFX_COM.cod_grupo is null and IFX_COM.cod_subgrupo is null) then 'N' else 'S' end FLG_COMISSAO,
a.flg_personalizacao,
PRODUTOS.IDT_TIP_VENDA as IDT_TIP_VENDA,
case when TMP_ROYALTIES.cod_modelo is null then 'N' else 'S' end flg_royalties,
SYSDATE AS DAT_ATUALIZACAO
FROM TMP_PRODUTO_MODELO a
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTOS PRODUTOS
ON produtos.cod_produto = a.cod_produto
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTO_MODELO PROD_MODELO
ON a.cod_modelo = PROD_MODELO.COD_PRODUTO_MOD
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PRODUTO_EAN PRODUTO_EAN
ON PRODUTOS.COD_PRODUTO = PRODUTO_EAN.COD_PRODUTO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_GRUPO GRUPO
ON PROD_MODELO.COD_GRUPO = GRUPO.COD_GRUPO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_SUBGRUPO SUBGRUPO
ON GRUPO.COD_GRUPO = SUBGRUPO.COD_GRUPO
AND PROD_MODELO.COD_SUBGRUPO = SUBGRUPO.COD_SUBGRUPO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_CATEGORIA CATEGORIA
ON PROD_MODELO.COD_CATEGORIA = CATEGORIA.COD_CATEGORIA
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_GENERO_FX_ETARIA GENERO_FX_ETARIA
ON PROD_MODELO.COD_FAIXA_ETARIA = GENERO_FX_ETARIA.COD_FAIXA_ETARIA
AND PROD_MODELO.COD_GENERO = GENERO_FX_ETARIA.COD_SEXO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_SEXO SEXO
ON GENERO_FX_ETARIA.COD_SEXO = SEXO.COD_SEXO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_FAIXA_ETARIA FX_ETARIA
ON GENERO_FX_ETARIA.COD_FAIXA_ETARIA = FX_ETARIA.COD_FAIXA_ETARIA
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_CLASSE CLASSE
ON GENERO_FX_ETARIA.COD_CLASSE = CLASSE.COD_CLASSE
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_MESA_CATSB MESA_CATSB
ON PROD_MODELO.COD_GRUPO = MESA_CATSB.COD_GRUPO
AND PROD_MODELO.COD_SUBGRUPO = MESA_CATSB.COD_SUBGRUPO
AND PROD_MODELO.COD_CATEGORIA = MESA_CATSB.COD_CATEGORIA
AND CLASSE.COD_CLASSE = MESA_CATSB.COD_CLASSE
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_MESA MESA
ON MESA_CATSB.COD_MESA = MESA.COD_MESA
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_NUCLEO SALA
ON MESA.COD_NUCLEO = SALA.COD_NUCLEO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_MARCA MARCA
ON PROD_MODELO.COD_MARCA = MARCA.COD_MARCA
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_LINHA LINHA
ON PROD_MODELO.COD_LINHA = LINHA.COD_LINHA
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_DIVISAO_GRUPO DIVISAO_GRUPO
ON GRUPO.COD_DIVISAO = DIVISAO_GRUPO.COD_DIVISAO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_MODALIDADE MODALIDADE
ON PROD_MODELO.COD_MODALIDADE = MODALIDADE.COD_MODALIDADE
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_TABELA_TAMANHOS TAB_TAMANHOS
ON PRODUTOS.COD_TAMANHO = TAB_TAMANHOS.COD_TAMANHO
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_TABELA_CORES TAB_CORES
ON PRODUTOS.COD_COR = TAB_CORES.COD_COR
LEFT JOIN CENTAURO_SPECTRUM.IFX_0000_SIS_V1_PARAM_COMIS_DET IFX_COM
ON SUBSTRING(PRODUTOS.COD_CAT_STR, 1,4) = IFX_COM.COD_GRUPO
AND SUBSTRING(PRODUTOS.COD_CAT_STR, 5,4) = IFX_COM.COD_SUBGRUPO
LEFT JOIN TMP_ROYALTIES
ON a.COD_MODELO = TMP_ROYALTIES.COD_MODELO
LEFT JOIN TMP_UDN
ON a.COD_PRODUTO = TMP_UDN.COD_PRODUTO
);

"

 

 


Accepted Solutions
Highlighted
Five Stars

Re: Redshift eror Talend 7.1


All Replies
Highlighted
Forteen Stars

Re: Redshift eror Talend 7.1

Hi,

 

some peoples report this erro not only ina Talend, and it looks like driver version related
https://intellij-support.jetbrains.com/hc/en-us/community/posts/360001819459-java-lang-StackOverflow...

https://forums.aws.amazon.com/thread.jspa?threadID=286117

https://stackoverflow.com/questions/50708052/overflow-error-in-redshift

 

as variant try to download different version Redshift JDBC and test old and most recent drivers with tJDBCRow

-----------
Highlighted
Five Stars

Re: Redshift eror Talend 7.1

Hello Vapukov,

tks for answer.

 

Anyone knows how to uninstall the problematic version?

 

Anyone know how i can associate other version of JDBC driver for amazon components?

The module feature just give me an option to download the problematic 1027 version when i click at right corner green arrow.

 

Screenshot from 2019-02-22 10-07-01.png

 

When i download other driver and do manually import and install, it doesn't associate to my components, look below the print.

 

czxczcz.png

 

Any suggestions?

 

 

Highlighted
Five Stars

Re: Redshift eror Talend 7.1

2019 GARTNER MAGIC QUADRANT FOR DATA INTEGRATION TOOL

Talend named a Leader.

Get your copy

OPEN STUDIO FOR DATA INTEGRATION

Kickstart your first data integration and ETL projects.

Download now

Put Massive Amounts of Data to Work

Learn how to make your data more available, reduce costs and cut your build time

Watch Now

How OTTO Utilizes Big Data to Deliver Personalized Experiences

Read about OTTO's experiences with Big Data and Personalized Experiences

Blog

Talend Integration with Databricks

Take a look at this video about Talend Integration with Databricks

Watch Now