Samuel Waggoner commented on BEAM-4072:

Maybe a solution is checking whether any AWS-specific options are actually 
given in *S3FileSystemRegistrar.java* and, if not, return an empty list. 

> using instance of S3Options causes crash when no AWS region specified
> ---------------------------------------------------------------------
>                 Key: BEAM-4072
>                 URL: https://issues.apache.org/jira/browse/BEAM-4072
>             Project: Beam
>          Issue Type: Bug
>          Components: io-java-aws
>            Reporter: Samuel Waggoner
>            Assignee: Ismaël Mejía
>            Priority: Major
> I want my pipeline to support writing to S3, but I also want it to work 
> locally when a user doesn't specify any S3-specific options. Instead, I get 
> the following exception:
> {code:java}
> com.amazonaws.SdkClientException: Unable to find a region via the region 
> provider chain. Must provide an explicit region in the builder or setup 
> environment to supply a region. E at 
> com.amazonaws.client.builder.AwsClientBuilder.setRegion(AwsClientBuilder.java:371){code}
> I had thought that I should use a single PipelineOptions interface that 
> supports all available options for my pipeline. Is this wrong? Should using 
> an instance of S3Options for my pipeline options force the user to write to 
> s3 (or otherwise provide s3 options). 
> Should I choose a PipelineOptions subinterface based on the options the user 
> tries to use at runtime?

This message was sent by Atlassian JIRA

Reply via email to