Zihan Li created GOBBLIN-1561:
---------------------------------

             Summary: Improve error message when flow compilation fails
                 Key: GOBBLIN-1561
                 URL: https://issues.apache.org/jira/browse/GOBBLIN-1561
             Project: Apache Gobblin
          Issue Type: Improvement
            Reporter: Zihan Li


When flow compilation fails, it prints a large list of irrelevant configs that 
are missing from different edges. The reason for this is that the pathfinding 
does not know what the intended path was, so it doesn't know which edges were 
actually missing required config. For example, this create flow command: 
{code:java}
curli --dv-auth SELF --fabric ei-ltx1 "d2://sharedFlowconfigsV2" -X POST -H 
'X-RestLi-Method: create' -H 'X-RestLi-Protocol-Version: 2.0.0' --data '{"id": 
{"flowName": "test123", "flowGroup": "test123"}, "properties": 
{"gobblin.flow.sourceIdentifier": "faro", "gobblin.flow.destinationIdentifier": 
"faro", "user.to.proxy": "gobblintest", 
"gobblin.flow.input.dataset.descriptor.path": "/tmp/gaas-cli-test/a", 
"gobblin.flow.output.dataset.descriptor.path": "/tmp/gaas-cli-test/a", 
"gobblin.flow.input.dataset.descriptor.partition.type": "none", 
"gobblin.flow.output.dataset.descriptor.partition.type": "none", 
"report.job.progress": "true", "flow.applyRetention": "true", 
"flow.applyInputRetention": "true", 
"gobblin.retention.newestK.versions.retained": "0", "dataset.datetimePattern": 
"yyyy/MM/dd", "copy.date.pattern": "yyyy/MM/dd"}, "templateUris": "FS:///"}'
{code}
Fails because the "version.finder" property is unresolved for the 
faro_faro_retention edge, but that info is buried in this large error message:
{code:java}
"Flow was not compiled successfully. Compilation errors encountered: [Error 
compiling edge 
faro_azureLnkdKtwoAdls2_inter-cluster-datetime-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureLnkdAdls2_single-hop-selfserve-unixts-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureScusAdls2-data_inter-cluster-file-based-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 10: Could 
not resolve substitution to a value: ${destination.adl.token.type}, Error 
compiling edge 
faro_azureLnkdArchAdls2_inter-cluster-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureLnkdAdls2_single-hop-selfserve-timeaware-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_faro_retention: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 67: Could 
not resolve substitution to a value: ${version.finder}, No path found from 
source: faro and destination: faro, Error compiling edge 
faro_azureLnkdArchAdls2_inter-cluster-datetime-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureLnkdAdls2_single-hop-selfserve-glob-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureLnkdKtwoAdls2_inter-cluster-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}, Error compiling edge 
faro_azureLnkdKtwoAdls2_inter-cluster-regex-file-based-gen2-copy-azure: 
com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 3: Could 
not resolve substitution to a value: ${azure.container}]"{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to