You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Scott Wegner (JIRA)" <ji...@apache.org> on 2016/12/06 22:03:58 UTC

[jira] [Created] (BEAM-1097) Dataflow error message for non-existing gcpTempLocation is misleading

Scott Wegner created BEAM-1097:
----------------------------------

             Summary: Dataflow error message for non-existing gcpTempLocation is misleading
                 Key: BEAM-1097
                 URL: https://issues.apache.org/jira/browse/BEAM-1097
             Project: Beam
          Issue Type: Bug
          Components: examples-java, runner-dataflow
            Reporter: Scott Wegner
            Assignee: Scott Wegner
            Priority: Minor


The error message for specifying a GCP tempLocation which doesn't exist is misleading. Rather than mentioning the given path doesn't exist, it says none ways specified.

This is particularly frustrating because it's one of the few configuration values necessary to get started with an example or starter archetype, and it's easy to introduce a typo as it's specified on the commandline. In my case, I was specifying "gs://swegner-tmp" instead of "gs://swegner-test".

Repro:

1. Clone the starter archetype: {noformat}mvn archetype:generate -DarchetypeGroupId=org.apache.beam -DarchetypeArtifactId=beam-sdks-java-maven-archetypes-starter{noformat}
2. Add beam-runners-google-cloud-dataflow-java as a dependency in the generated pom.xml
3. Build: {noformat}mvn install{noformat}
4. Run: {noformat}mvn exec:java -DmainClass=swegner.StarterPipeline -Dexec.args="--runner=DataflowRunner --tempLocation=gs://swegner-tmp"{noformat}

Expected: An error message along the lines of: "The specified GCP temp location 'gs://swegner-tmp' does not exist under project 'myGcpProject'"

bq. [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.4.0:java (default-cli) on project counter-names-test: An exception occured while executing the Java class. null: InvocationTargetException: Failed to construct instance from factory method DataflowRunner#fromOptions(interface org.apache.beam.sdk.options.PipelineOptions): DataflowRunner requires gcpTempLocation, and it is missing in PipelineOptions. -> [Help 1]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)