Uh oh!
There was an error while loading. Please reload this page.
[BEAM-53] Java-only pub/sub source and sink (streaming only) - #85
[BEAM-53] Java-only pub/sub source and sink (streaming only) #85mshields822 wants to merge 14 commits into
Conversation
mshields822
commented
Mar 28, 2016
R=Ken |
mshields822
commented
Mar 28, 2016
Note this has been extensively stress tested by running within a custom Google Dataflow runner. |
dhalperi
commented
Mar 29, 2016
R= @kennknowles (Copying from #85 (comment), so my scripts work) |
mshields822
commented
Mar 30, 2016
Made PubsubGrpcClient public and refactored a bit so that it API is free of gRPC and protoc dependencies. This means it can be reused, and also will make mocking easier. |
mshields822
commented
Mar 31, 2016
Looking at the ci failure the grpc-pubsub.jar (containing all the pubsub proto-derived classes) is jdk8 only. Advice? |
mshields822
commented
Mar 31, 2016
R: @davorbonaci |
mshields822
commented
Mar 31, 2016
The two pubsub/grpc jars this depends on have been compiled with jdk8 and thus break our jdk7 support requirement. I'm taking this up with the Google team responsible. We can review this but we can't merge until that is sorted out. |
| /** | ||
| * Keep track of the minimum/maximum/sum of a set of timestamped long values. | ||
| * For efficiency, bucket values by their timestamp. |
There was a problem hiding this comment.
Just to be super clear - the min/max/sum are meant as examples here, right? It seems this is a generic binning/bucketing map.
There was a problem hiding this comment.
Those are the three functions I needed for watermark tracking and implemented in SimpleFunction. I'm trying to keep the scope as small as possible.
kennknowles
commented
Mar 31, 2016
This is a very large PR. I am going to need to take another pass to continue to grok. |
kennknowles
commented
Mar 31, 2016
One thing you could do that would lighten the cognitive load would be to separate the source and sink into two PRs. |
Move some pubsub source/sink machinery into PubSubGrpcClient so that it's api can be grpc and protoc neutral.
Factor PubsubClient iface out of PubsubGrpcClient impl.
This reverts commit 0befb34.
mshields822
commented
Mar 31, 2016
PTAL (really need to squash history now)
So now we could proceed as |
mshields822
commented
Apr 5, 2016
Ok, I'll save this one for just the source, and will send in pub/sub client and sink as sep prs. |
kennknowles
commented
Apr 6, 2016
Noting that the first PR peeled off from this is #120. |
apache#85 Move findbugs plugin execution to the process-classes phase
Improve the CombinedByKey translator in the DataStream-based Flink batch runner.
First step towards supporting pub/sub i/o in any Java runner.
Disclaimers:
But other than that we're ready to go.