[
https://issues.apache.org/jira/browse/BEAM-11106?focusedWorklogId=765500&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-765500
]
ASF GitHub Bot logged work on BEAM-11106:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 03/May/22 15:21
Start Date: 03/May/22 15:21
Worklog Time Spent: 10m
Work Description: riteshghorse commented on code in PR #17432:
URL: https://github.com/apache/beam/pull/17432#discussion_r863896226
##########
sdks/go/pkg/beam/core/sdf/lock.go:
##########
@@ -80,3 +80,73 @@ func (rt *LockRTracker) GetRestriction() interface{} {
defer rt.Mu.Unlock()
return rt.Rt.GetRestriction()
}
+
+// NewLockBoundableRTracker creates a LockBoundableRTracker initialized with
the specified
+// restriction tracker as its underlying restriction tracker.
+func NewLockBoundableRTracker(rt BoundableRTracker) *LockRTracker {
+ return &LockRTracker{Rt: rt}
+}
+
+// LockBoundableRTracker is a restriction tracker that wraps another
restriction
+// tracker and adds thread safety to it by locking a mutex in each method,
+// before delegating to the underlying tracker.
+type LockBoundableRTracker struct {
Review Comment:
Makes sense. I should have made the changes here as well when doing it for
`defaultTruncateRestriction`.
Issue Time Tracking
-------------------
Worklog Id: (was: 765500)
Time Spent: 3.5h (was: 3h 20m)
> [Go SDK] Truncating SDFs during drain
> -------------------------------------
>
> Key: BEAM-11106
> URL: https://issues.apache.org/jira/browse/BEAM-11106
> Project: Beam
> Issue Type: Sub-task
> Components: sdk-go
> Reporter: Robert Burke
> Assignee: Ritesh Ghorse
> Priority: P3
> Time Spent: 3.5h
> Remaining Estimate: 0h
>
> Allow SDFs to specify a restriction truncation method to permit faster drains.
> (To be updated once [https://github.com/apache/beam/pull/13160] is merged and
> the programming guide updated with SDF content.)
--
This message was sent by Atlassian Jira
(v8.20.7#820007)