beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [jira] [Commented] (BEAM-59) IOChannelFactory rethinking/redesign
Date Wed, 02 Nov 2016 03:35:58 GMT


ASF GitHub Bot commented on BEAM-59:

GitHub user peihe opened a pull request:

    [BEAM-59] Use ServiceLoader to register IOChannelFactories.

    Be sure to do all of the following to help us incorporate your contribution
    quickly and easily:
     - [ ] Make sure the PR title is formatted like:
       `[BEAM-<Jira issue #>] Description of pull request`
     - [ ] Make sure tests pass via `mvn clean verify`. (Even better, enable
           Travis-CI on your fork and ensure the whole test matrix passes).
     - [ ] Replace `<Jira issue #>` in the title with the actual Jira issue
           number, if there is one.
     - [ ] If this contribution is large, please file an Apache
           [Individual Contributor License Agreement](

You can merge this pull request into a Git repository by running:

    $ git pull io-channel-register

Alternatively you can review and apply these changes as the patch at:

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1255
commit 18e204b7a0b90705e4b0fb41093a15341bffb996
Author: Pei He <>
Date:   2016-11-01T00:58:31Z

    [BEAM-59] Add use Factory interface in Gcs/File/IOChannelFactory.

commit fd940fa32cc96933c85b2cf93306b6572b783d1a
Author: Pei He <>
Date:   2016-11-01T01:01:41Z

    [BEAM-59] Create IOChannelFactoryFactoryRegistrar interface and its gcs/file implementations.

commit f8b30dda94555e9dada829e7d626a2d3da952804
Author: Pei He <>
Date:   2016-11-01T01:02:49Z

    [BEAM-59] Use ServiceLoader to register IOChannelFactories in IOChannelUtils.


> IOChannelFactory rethinking/redesign
> ------------------------------------
>                 Key: BEAM-59
>                 URL:
>             Project: Beam
>          Issue Type: New Feature
>          Components: sdk-java-core, sdk-java-gcp
>            Reporter: Daniel Halperin
>            Assignee: Pei He
> Right now, FileBasedSource and FileBasedSink communication is mediated by IOChannelFactory.
There are a number of issues:
> * Global configuration -- e.g., all 'gs://' URIs use the same credentials. This should
be per-source/per-sink/etc.
> * Supported APIs -- currently IOChannelFactory is in the "non-public API" util package
and subject to change. We need users to be able to add new backends ('s3://', 'hdfs://', etc.)
directly, without fear that they will be broken.
> * Per-backend features: e.g., creating buckets in GCS/s3, setting expiration time, etc.

This message was sent by Atlassian JIRA

View raw message