This repository was archived by the owner on Nov 11, 2022. It is now read-only.
Version 1.7.0
- Added support for Cloud Datastore API v1 in the new
com.google.cloud.dataflow.sdk.io.datastore.DatastoreIO. Deprecated the oldDatastoreIOclass that supported only the deprecated Cloud Datastore API v1beta2. - Improved
DatastoreIO.Readto support dynamic work rebalancing, and added an option to control the number of query splits usingwithNumQuerySplits. - Improved
DatastoreIO.Writeto work with an unboundedPCollection, supporting writing to Cloud Datastore when using theDataflowPipelineRunnerin streaming mode. - Added the ability to delete Cloud Datastore
Entityobjects directly usingDatastore.v1().deleteEntityor to delete entities by key usingDatastore.v1().deleteKey. - Added support for reading from a
BoundedSourceto theDataflowPipelineRunnerin streaming mode. This enables the use ofTextIO.Read,AvroIO.Readand other bounded sources in these pipelines. - Added support for optionally writing a header and/or footer to text files produced with
TextIO.Write. - Added the ability to control the number of output shards produced when using a
Sink. - Added
TestStreamto enable testing of triggers with multiple panes and late data with theInProcessPipelineRunner. - Added the ability to control the rate at which
UnboundedCountingInputproduces elements usingwithRate(long, Duration). - Improved performance and stability for pipelines using the
DataflowPipelineRunnerin streaming mode. - To support
TestStream, reimplementedDataflowAssertto useGroupByKeyinstead ofsideInputsto check assertions. This is an update-incompatible change toDataflowAssertfor pipelines run on theDataflowPipelineRunnerin streaming mode. - Fixed an issue in which a
FileBasedSinkwould produce no files when writing an emptyPCollection. - Fixed an issue in which
BigQueryIO.Readcould not query a table in a non-USregion when using theDirectPipelineRunneror theInProcessPipelineRunner. - Fixed an issue in which the combination of timestamps near the end of the global window and a large
allowedLatenesscould cause anIllegalStateExceptionfor pipelines run in theDirectPipelineRunner. - Fixed a
NullPointerExceptionthat could be thrown during pipeline submission when using anAfterWatermarktrigger with no late firings.