Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
14
respostas

Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Unexpected error

Estou com erro no Spoon , quando tento visualizar tabela de fato 001, rodei a query no SQL Server da certo , porem no Spoon da o erro abaixo :

Fato_001 - Dispatching started for transformation [Fato_001] Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Unexpected error Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseException: Leitura Tabela de Fato 001.0 - An error occurred executing SQL: Leitura Tabela de Fato 001.0 - SELECT * FROM [TAB_FATO001] WHERE YEAR(DATA_FATO) >=2013 AND MONTH(DATA_FATO) >=1 AND YEAR(DATA_FATO) <=2013 AND MONTH(DATA_FATO) <=1; Leitura Tabela de Fato 001.0 - O tamanho da busca não pode ser negativo. Leitura Tabela de Fato 001.0 - Leitura Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.openQuery(Database.java:1763) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.tableinput.TableInput.doQuery(TableInput.java:236) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.tableinput.TableInput.processRow(TableInput.java:140) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) Leitura Tabela de Fato 001.0 - at java.lang.Thread.run(Unknown Source) Leitura Tabela de Fato 001.0 - Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: O tamanho da busca não pode ser negativo. Leitura Tabela de Fato 001.0 - at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191) Leitura Tabela de Fato 001.0 - at com.microsoft.sqlserver.jdbc.SQLServerStatement.setFetchSize(SQLServerStatement.java:1757) Leitura Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.openQuery(Database.java:1741) Leitura Tabela de Fato 001.0 - ... 4 more Leitura Tabela de Fato 001.0 - Finished reading query, closing connection. Leitura Tabela de Fato 001.0 - Finished processing (I=0, O=0, R=0, W=0, U=0, E=1) Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! Spoon - The transformation has finished!! Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! 2021/06/16 11:56:05 - Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! 2021/06/16 11:56:05 - Fato_001 - Transformation detected one or more steps with errors. 2021/06/16 11:56:05 - Fato_001 - Transformation is killing the other steps!

Conexão : https://i.ibb.co/Nj5zZLX/conex-o.png

Tabela de Fato _ Spoon : https://i.ibb.co/D1LcW6B/Leitura-Tabela-de-Fato-001.png

Consulta dentro do SQL : https://i.ibb.co/Jk7HkK1/sql-server-fato-001.png

Erro : https://i.ibb.co/P4PB8pG/erro.png

14 respostas

Oii Helio, tudo bom?

Esse erro está sendo retornado ao rodar o job da fato ou ao clicar no preview?

Eu não encontrei a raíz do erro e nem consegui replicar o erro aqui em minha máquina. Então queria pedir para você fazer um teste:

  • Altere o tipo de conexão da fonte das fatos, coloque JDBC e coloque as credenciais e verifique se o erro continua.

Fico aguardando :)

Gabi

Boa tarde

Estou testando roda a preview e estava dando este erro , colei o drive sqljdbc42.jar na pasta treinamento\designer-tools\data-integration\Data Service JDBC Driver e a preview rodou .

https://i.ibb.co/qysm9tT/fao01.png

Agora esta com outro erro

2021/06/17 11:54:46 - Leitura Tabela de Fato 001.0 - Finished processing (I=1613, O=0, R=0, W=1613, U=0, E=0) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Error in step, asking everyone to stop because of: 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseException: 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Error inserting/updating row 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1319) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1243) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1231) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1219) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.insertupdate.InsertUpdate.lookupValues(InsertUpdate.java:114) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.insertupdate.InsertUpdate.processRow(InsertUpdate.java:299) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at java.lang.Thread.run(Unknown Source) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Caused by: java.sql.SQLIntegrityConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1092) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1040) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1348) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1025) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1286) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ... 7 more

Oi Helio,

Ahh, então era um erro de driver. Nossa, nada a ver com o erro retornado.

Agora esse erro retornado, é de chave estrangeira, referente a dimensão tempo.

foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo)

O ideal seria olhar as relações e a tabela da dimensão tempo, se as colunas estão por lá.

Oi Gabi ,

Vou dar uma olhada , mas nos passos anteriores adimensão tempo tinha dado certo , vamos ver ,

Ja posto o resultado , to parado neste curso , esta dando muito erro

Oi Gabi ,

Ja li todas as mensagens do Forum , ja exclui a tabela Dim_tempo , refiz a mesma , deu carga , comparei as tabelas e não achei erro .

Criei uma pasta no Google Drive ( https://drive.google.com/drive/folders/1686knfombJnEyF4Xg33WL54Ql3VMzYam?usp=sharing )esta com os Spoon Fato_001, DimensãoTempo, as querys .

Se puder dar uma olhada e me dar um retorno eu agradeço .

Oi Helio,

Eu olhei seus arquivos. Até rodei a dimensão tempo e fato 001 e foi de boa. Não estou encontrando o erro também :(

Vou pedir pra você fazer um outro teste, apague as tabelas dimensão tempo e fato 001 e recrie usando esse código:

CREATE TABLE `dim_tempo` (
  `Cod_Tempo` varchar(50) NOT NULL,
  `Data` date NOT NULL,
  `Numero_Dia_Semana` varchar(50) NOT NULL,
  `Numero_Mes` varchar(50) NOT NULL,
  `Numero_Ano` varchar(50) NOT NULL,
  `Nome_Mes` varchar(250) NOT NULL,
  `Numero_Trimestre` varchar(50) NOT NULL,
  `Nome_Trimestre` varchar(250) NOT NULL,
  `Numero_Semestre` varchar(50) NOT NULL,
  `Nome_Semestre` varchar(250) NOT NULL,
  PRIMARY KEY (`Cod_Tempo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `fato_001` (
  `Cod_Fabrica` varchar(50) NOT NULL,
  `Cod_Tempo` varchar(50) NOT NULL,
  `Cod_Cliente` varchar(50) NOT NULL,
  `Cod_Organizacional` varchar(50) NOT NULL,
  `Cod_Produto` varchar(50) NOT NULL,
  `Faturamento` double NOT NULL,
  `Unidade_Vendida` double NOT NULL,
  `Quantidade_Vendida` double NOT NULL,
  `Imposto` double NOT NULL,
  `Custo_Variavel` double NOT NULL,
  PRIMARY KEY (`Cod_Fabrica`,`Cod_Tempo`,`Cod_Cliente`,`Cod_Organizacional`,`Cod_Produto`),
  KEY `dim_organizacional_fato_001_fk` (`Cod_Organizacional`),
  KEY `dim_produto_fato_001_fk` (`Cod_Produto`),
  KEY `dim_tempo_fato_001_fk` (`Cod_Tempo`),
  KEY `dim_clinete_fato_001_fk` (`Cod_Cliente`),
  CONSTRAINT `dim_cliente_fato_001_fk` FOREIGN KEY (`Cod_Cliente`) REFERENCES `dim_cliente` (`Cod_Cliente`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_fabrica_fato_001_fk` FOREIGN KEY (`Cod_Fabrica`) REFERENCES `dim_fabrica` (`Cod_Fabrica`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_organizacional_fato_001_fk` FOREIGN KEY (`Cod_Organizacional`) REFERENCES `dim_organizacional` (`Cod_Organizacional`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_produto_fato_001_fk` FOREIGN KEY (`Cod_Produto`) REFERENCES `dim_produto` (`Cod_Produto`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_tempo_fato_001_fk` FOREIGN KEY (`Cod_Tempo`) REFERENCES `dim_tempo` (`Cod_Tempo`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Depois, tente fazer as cargas. Me avise qualquer coisa :)

Oi Gabi

Fiz o que vc pediu , quanto a dimensão Tempo du certo , ja na gravação da tabela Fato 001 deu o mesmo erro

Gravação de Tabela de Fato 001.0 - Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION)

Alguem com este erro e conseguiu resolver ?

Estou parado neste curso .

Oi Helio, desculpa a demora em responder.

Ainda não consegui localizar o erro :(

Seus processos estão ok. Revisei e fiz a carga aqui em minha máquina e dá tudo certo.

Carga Fato 001

O erro que retorna, é um erro de chave estrangeira. Pode ser por não estar encontrando a tabela, algum tipo de dado errado. Maaass, você recriou as tabelas com o código que enviei e ainda continua o erro.

No SQL Server, como está a sua tabela de Fato 001? Poderia me mandar um print por favor?

Fico no aguardo :)

Gabi

Não deu certo ainda não . Não consigo avançar no restante dos cursos da Formação , pois dependo dessa base de dados preenchida

Refiz as tabelas duas vezes , testei nos banco , ambos roda as querys , veja abaixo

Tabela de Fato_001- Configuração no Spoon : https://i.ibb.co/D1LcW6B/Leitura-Tabela-de-Fato-001.png

Tabela de Fato_001- Preview no Spoon : https://i.ibb.co/cJ9NpHw/fao01.png

Consulta dentro do SQL Server: https://i.ibb.co/30N2Yh5/Fato-001.png

Consulta dentro do SQL Server c/ filtro de data : https://i.ibb.co/Jk7HkK1/sql-server-fato-001.png

Gabi

Boa tarde Consegue me dar uma luz quanto a este problema ?

No aguardo .

Helio

Oi Helio, desculpa a demora.

Cara, olhei isso de tudo quanto é jeito. Não encontro o erro de forma alguma, está tudo certo :/ confesso que tô quase chorando por não encontrar kk

Vou pedir outro teste, vou te mandar meus jobs e você tenta rodar eles ai, vamos ver se esse erro continua. Segue o link: Arquivos Pentaho

Me avisa qualquer coisa e desculpa novamente pela demora.

solução!

Gabi

Obrigado pelo retorno , tambem to louco aqui .

Ja olhei tudo , deletei banco de dados , criei novamente e nada

As query´s rodam certinho no banco , mas quando joca no pentaho da este erro

Vou olhar seu codigo e te respondo

Gabi

Deu certo com seus codigos .

Valeu

Obrigado .