[ 
https://issues.apache.org/jira/browse/BEAM-13824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Moritz Mack updated BEAM-13824:
-------------------------------
    Status: Open  (was: Triage Needed)

> Migrate SnsIO.write to async implementation
> -------------------------------------------
>
>                 Key: BEAM-13824
>                 URL: https://issues.apache.org/jira/browse/BEAM-13824
>             Project: Beam
>          Issue Type: Improvement
>          Components: io-java-aws
>            Reporter: Moritz Mack
>            Priority: P2
>              Labels: aws-sdk-v2
>
> In  BEAM-13203 {{SnsIO.writeAsync}} was deprecated to address the risk of 
> data loss in that transform. Unfortunately, it has considerable issues in 
> design and implementation with respect to the beam programming model as well 
> as general async programming:
>  * Output for a bundle may be emitted even after the bundle is finished (lack 
> of join / waiting for pending futures), additionally output is emitted from 
> multiple threads risking concurrent modification issues on underlying data 
> structures.
>  * Exceptions disappear into the void (respective tests are implemented 
> incorrectly as they don't throw asynchronously and could make one think this 
> works).
>  * Parallelism is unlimited causing the writer to instantly accumulate 
> everything into memory.
> With BEAM-13563 it will be possible to change {{SnsIO.write}} into a more 
> performant async implementation without any breaking changes to the public 
> user facing API making {{SnsIO.writeAsync}} obsolete.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to