Skip to content

[BEAM-4124] datamgr.go:Remove chunksize constraint#6948

Merged
aaltay merged 1 commit into
apache:masterfrom
lostluck:patch-23
Nov 5, 2018
Merged

[BEAM-4124] datamgr.go:Remove chunksize constraint#6948
aaltay merged 1 commit into
apache:masterfrom
lostluck:patch-23

Conversation

@lostluck
Copy link
Copy Markdown
Contributor

@lostluck lostluck commented Nov 5, 2018

Go SDK harness was limited to elements of at most ~4MB with this check, but provided no means to increase it. The chunking is valuable for batching tiny elements over RPCs to improve throughput but is less meaningful for larger elements.
The Go SDK shouldn't be dictating maximum element size, and let that be configurable by the FnAPI transport (eg. GRPC) to the runner harness instead. This should have an implicit ~2-4GB cap on element size.


Follow this checklist to help us incorporate your contribution quickly and easily:

  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.

Post-Commit Tests Status (on master branch)

Lang SDK Apex Dataflow Flink Gearpump Samza Spark
Go Build Status --- --- --- --- --- ---
Java Build Status Build Status Build Status Build Status Build Status Build Status Build Status Build Status
Python Build Status --- Build Status
Build Status
Build Status --- --- ---

Go SDK harness was limited to elements of at most ~4MB with this check, but provided no means to increase it. The chunking is valuable for batching tiny elements over RPCs to improve throughput but is less meaningful for larger elements.
The Go SDK shouldn't be dictating maximum element size, and let that be configurable by the FnAPI transport (eg. GRPC) to the runner harness instead. This should have an implicit ~2-4GB cap on element size.
@lostluck
Copy link
Copy Markdown
Contributor Author

lostluck commented Nov 5, 2018

R: @aaltay
CC: @wcn3

// We can't fit this message into the buffer. We need to flush the buffer
if err := w.Flush(); err != nil {
return 0, err
return 0, fmt.Errorf("datamgr.go: error flushing buffer of length %d: %v", l, err)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Curios, why not totally drop l and use len(w.buf) directly as an argument to Errorf.

@aaltay aaltay merged commit 230b0ca into apache:master Nov 5, 2018
@lostluck lostluck deleted the patch-23 branch January 23, 2019 16:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants