lostluck opened a new issue, #22404: URL: https://github.com/apache/beam/issues/22404
### What needs to happen? Timestamp metadata for individual elements is lost after sending values through a GroupByKey. This is not an issue, and is WAI as a consequence of the post GBK coder (WindowedValueHeader+KV<K, Iter<V>>), as the runner has combined timestamps. However, the Go SDK permits using a `func(*beam.EventTime, *V) bool` for iterating over values , will produce 0 value event times. This is confusing behavior. The task has two components: First is to document in the programming guide and the GroupByKey godoc that the timestamps for values will not be available after the GBK. Second is to make the current behavior more sensible: Populate such iterators with the combined timestamp for the key, instead of leaving it with the zero value. That would happen here for relfective iterators: https://github.com/apache/beam/blob/66ffc0b9fe99ba7d305d00c2f93e29979b1b2123/sdks/go/pkg/beam/core/runtime/exec/input.go#L173 This form of iterator isn't yet supported with the `register` package, but it would also need to be supported there once implemented. https://github.com/apache/beam/blob/66ffc0b9fe99ba7d305d00c2f93e29979b1b2123/sdks/go/pkg/beam/register/iter.go This is separate from whether the SDK supports specifying timestamp combine strategies for a window. Presently it does not, and should default to "End Of Window" for a given Post GBK element. ### Issue Priority Priority: 2 ### Issue Component Component: sdk-go -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
