Search code examples
etlgooddata

Dataset writer failing


I have created a DBinput reader, which is working fine. But after it, according to image below, I have a dataset writer. It is not working but, as you can see in image 2, filed mapping is ok.

ETL GRAPH

FIELD MAPPING

I checked the stack trace, but didn't find anything that could help me, but maybe I'm not seeing something.

INFO  [main] - ***  CloverETL framework/transformation graph, (c) 2002-2018 Javlin a.s, released under GNU Lesser General Public License  ***
INFO  [main] - Running with CloverETL library version 3.4.4 build#257 compiled 29/11/2018 11:16:32
INFO  [main] - Running on 4 CPU(s), OS Windows 8.1, architecture amd64, Java version 1.8.0_144, max available memory for JVM 466432 KB
INFO  [main] - Loading default properties from: defaultProperties
INFO  [main] - Loading Clover properties from file:/C:/rejanem/CAERN/Java/CloudConnect/configuration/org.eclipse.osgi/565/0/.cp/graphEngine.properties
INFO  [main] - Engine plug-ins loaded: org.jetel.sequence, org.jetel.tlfunction, org.jetel.connection, org.jetel.lookup, org.jetel.jdbc, com.opensys.cloveretl.tlfunction, com.opensys.clover.lookup, com.opensys.cloveretl.compiler, org.jetel.ctlfunction, org.jetel.thirdparty, com.opensys.cloveretl.ctlfunction, org.jetel.component, org.jetel.hadoop, org.jetel.bulkloader, org.jetel.license, com.opensys.clover.component, org.jetel.engine, com.gooddata.clover.plugin.dependencies, com.gooddata.clover.plugin.support, com.gooddata.clover.plugin.md.storage, com.gooddata.clover.plugin.replacer, com.gooddata.clover.plugin.ctl, com.gooddata.clover.plugin.maql, com.gooddata.clover.plugin.facebook, com.gooddata.clover.plugin.sfdc, com.gooddata.clover.plugin.devel, com.gooddata.clover.plugin.file, com.gooddata.clover.plugin.db, com.gooddata.clover.plugin.io, com.gooddata.clover.plugin.exacttarget, com.gooddata.clover.plugin.estore, com.gooddata.clover.plugin.ga, com.gooddata.clover.plugin.gd, com.gooddata.clover.plugin.rest
INFO  [main] - Graph definition file: graph/faturas_energia.grf
INFO  [main] - Graph revision: 1.47 Modified by: estmatheusgoes Modified: Wed Jan 30 11:29:47 GMT-03:00 2019
INFO  [main] - Checking graph configuration...
INFO  [main] - Graph configuration is valid.
INFO  [main] - Graph initialization (faturas_energia)
INFO  [main] - Initializing connection:
INFO  [main] - DBConnection driver[org.jetel.connection.jdbc.driver.JdbcDriverImpl@3c01cfa1]:jndi[null]:url[jdbc:postgresql://teste.sistemasinternos.caern.com.br/proenergia_20190128]:user[desenv] ... OK
INFO  [main] - Initializing phase 0
INFO  [main] - Registering AcceptGDCAuthSSTCookiePolicy
INFO  [main] - HTTP client method factory configured for https://secure.gooddata.com:443
INFO  [main] - HTTP client method factory configured for https://secure.gooddata.com:443
INFO  [main] - Initializing batch SLI upload to project=fe8xgch2p1demfsx2ug5xalubu8xagfz
INFO  [main] - Phase 0 initialized successfully.
INFO  [WatchDog_0] - Initial dictionary content:
INFO  [WatchDog_0] - DictEntry:GD_DatasetWriter_BatchUpload:fe8xgch2p1demfsx2ug5xalubu8xagfz:object:<unprintable_value>
INFO  [WatchDog_0] - Pre-execute initialization of connection:
INFO  [WatchDog_0] - DBConnection driver[org.jetel.connection.jdbc.driver.JdbcDriverImpl@3c01cfa1]:jndi[null]:url[jdbc:postgresql://teste.sistemasinternos.caern.com.br/proenergia_20190128]:user[desenv] ... OK
INFO  [WatchDog_0] - Starting up all nodes in phase [0]
INFO  [WatchDog_0] - Successfully started all nodes in phase!
INFO  [GD_DATASET_WRITER1_0] - component_type=gd_dataset_writer component_id=GD_DATASET_WRITER1 mode=null action=upload status=start
INFO  [GD_DATASET_WRITER1_0] - action=webdav_upload status=start
INFO  [GD_DATASET_WRITER1_0] - action=webdav_upload status=error
ERROR [WatchDog_0] - Component [GD Dataset Writer:GD_DATASET_WRITER1] finished with status ERROR.
 A problem occurred while executing PUT on /no-sni-uploads/default/2019-01-30_12-59-26_ZpeRI/upload_dataset.faturaenergia.csv!
  PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
ERROR [WatchDog_0] - Error details:
org.jetel.exception.JetelRuntimeException: Component [GD Dataset Writer:GD_DATASET_WRITER1] finished with status ERROR.
    at org.jetel.graph.Node.createNodeException(Node.java:543)
    at org.jetel.graph.Node.run(Node.java:522)
    at com.gooddata.clover.plugin.component.GdcContextAwareNode.run(GdcContextAwareNode.java:34)
    at java.lang.Thread.run(Thread.java:748)
Caused by: com.gooddata.restapi.upload.webdav.WebDavUploaderException: A problem occurred while executing PUT on /no-sni-uploads/default/2019-01-30_12-59-26_ZpeRI/upload_dataset.faturaenergia.csv!
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.executeAndReleaseMethod(WebDavUploaderImpl.java:234)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.access$000(WebDavUploaderImpl.java:44)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl$1.execute(WebDavUploaderImpl.java:129)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl$1.execute(WebDavUploaderImpl.java:126)
    at com.gooddata.restapi.upload.util.LoggingHelper.logAndExecute(LoggingHelper.java:26)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.transferRequestEntity(WebDavUploaderImpl.java:126)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.transferFile(WebDavUploaderImpl.java:96)
    at com.gooddata.restapi.upload.impl.SLIUploaderBatchImpl$1.run(SLIUploaderBatchImpl.java:87)
    at com.gooddata.restapi.upload.impl.SLIUploaderBatchImpl.uploadData(SLIUploaderBatchImpl.java:125)
    at com.gooddata.restapi.upload.impl.SLIUploaderBatchImpl.add(SLIUploaderBatchImpl.java:84)
    at com.gooddata.clover.plugin.gd.batch.BatchUploadCoordinator.upload(BatchUploadCoordinator.java:168)
    at com.gooddata.clover.plugin.gd.GdDatasetWriter.executeTask(GdDatasetWriter.java:176)
    at com.gooddata.clover.plugin.gdconnection.webdav.WebDavWriter.execute(WebDavWriter.java:42)
    at org.jetel.graph.Node.run(Node.java:493)
    ... 2 more
Caused by: com.gooddata.restapi.upload.webdav.WebDavUploaderException: A problem occurred while executing PUT on /no-sni-uploads/default/2019-01-30_12-59-26_ZpeRI/upload_dataset.faturaenergia.csv!
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.lambda$executeHttpMethodWithRetries$0(WebDavUploaderImpl.java:331)
    at com.gooddata.download.commons.retry.RetriableTask.doCall(RetriableTask.java:189)
    at com.gooddata.download.commons.retry.RetriableTask.call(RetriableTask.java:153)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.executeHttpMethodWithRetries(WebDavUploaderImpl.java:344)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.executeAndReleaseMethod(WebDavUploaderImpl.java:232)
    ... 15 more
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1959)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1514)
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:1026)
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:961)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1072)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)
    at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:757)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.write(BufferedOutputStream.java:121)
    at org.apache.commons.httpclient.methods.FileRequestEntity.writeRequest(FileRequestEntity.java:76)
    at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:499)
    at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:2114)
    at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1096)
    at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
    at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
    at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.executeHttpMethod(WebDavUploaderImpl.java:310)
    at com.gooddata.restapi.upload.webdav.WebDavUploaderImpl.lambda$executeHttpMethodWithRetries$0(WebDavUploaderImpl.java:324)
    ... 19 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:397)
    at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:302)
    at sun.security.validator.Validator.validate(Validator.java:260)
    at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324)
    at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229)
    at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:105)
    at com.gooddata.commons.http.ssl.DownloadIntermediateCertsX509TrustManager.checkServerTrusted(DownloadIntermediateCertsX509TrustManager.java:107)
    at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:985)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1496)
    ... 38 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
    at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
    at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
    at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:392)
    ... 46 more

INFO  [WatchDog_0] - Execution of phase [0] finished with error - elapsed time(sec): 5
ERROR [WatchDog_0] - !!! Phase finished with error - stopping graph run !!!
INFO  [WatchDog_0] - Post-execute finalization of connection:
INFO  [WatchDog_0] - DBConnection driver[org.jetel.connection.jdbc.driver.JdbcDriverImpl@3c01cfa1]:jndi[null]:url[jdbc:postgresql://teste.sistemasinternos.caern.com.br/proenergia_20190128]:user[desenv] ... OK
INFO  [WatchDog_0] - Final dictionary content:
INFO  [WatchDog_0] - DictEntry:GD_DatasetWriter_BatchUpload:fe8xgch2p1demfsx2ug5xalubu8xagfz:object:<unprintable_value>
INFO  [WatchDog_0] - -----------------------** Summary of Phases execution **---------------------
INFO  [WatchDog_0] - Phase#            Finished Status         RunTime(sec)    MemoryAllocation(KB)
INFO  [WatchDog_0] - 0                 ERROR                              5            109670
INFO  [WatchDog_0] - ------------------------------** End of Summary **---------------------------
INFO  [WatchDog_0] - WatchDog thread finished - total execution time: 5 (sec)
INFO  [main] - Freeing graph resources.
ERROR [main] - 
------------------------------------------------------------------- Error details --------------------------------------------------------------------
  Component [GD Dataset Writer:GD_DATASET_WRITER1] finished with status ERROR.
   A problem occurred while executing PUT on /no-sni-uploads/default/2019-01-30_12-59-26_ZpeRI/upload_dataset.faturaenergia.csv!
    PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
------------------------------------------------------------------------------------------------------------------------------------------------------
ERROR [main] - Execution of graph failed !

Aditional info: My user is set as admin.


Solution

  • I see this error message in the trace : unable to find valid certification path to requested target. It usually means that it is not possible connect to target server using SSL, because it is not trusted. This type of problem can be caused by missing certificate in the java-key-store. (check the JDBC driver version,try to import the certificate , replace self-signed by a trusted certificate,...)

    https://confluence.atlassian.com/kb/unable-to-connect-to-ssl-services-due-to-pkix-path-building-failed-779355358.html