@@ -307,6 +307,64 @@ def update!(**args)
307307 end
308308 end
309309
310+ # The message type used for encoding metrics of type bounded trie.
311+ class BoundedTrie
312+ include Google ::Apis ::Core ::Hashable
313+
314+ # The maximum number of elements to store before truncation.
315+ # Corresponds to the JSON property `bound`
316+ # @return [Fixnum]
317+ attr_accessor :bound
318+
319+ # A single node in a BoundedTrie.
320+ # Corresponds to the JSON property `root`
321+ # @return [Google::Apis::DataflowV1b3::BoundedTrieNode]
322+ attr_accessor :root
323+
324+ # A more efficient representation for metrics consisting of a single value.
325+ # Corresponds to the JSON property `singleton`
326+ # @return [Array<String>]
327+ attr_accessor :singleton
328+
329+ def initialize ( **args )
330+ update! ( **args )
331+ end
332+
333+ # Update properties of this object
334+ def update! ( **args )
335+ @bound = args [ :bound ] if args . key? ( :bound )
336+ @root = args [ :root ] if args . key? ( :root )
337+ @singleton = args [ :singleton ] if args . key? ( :singleton )
338+ end
339+ end
340+
341+ # A single node in a BoundedTrie.
342+ class BoundedTrieNode
343+ include Google ::Apis ::Core ::Hashable
344+
345+ # Children of this node. Must be empty if truncated is true.
346+ # Corresponds to the JSON property `children`
347+ # @return [Hash<String,Google::Apis::DataflowV1b3::BoundedTrieNode>]
348+ attr_accessor :children
349+
350+ # Whether this node has been truncated. A truncated leaf represents possibly
351+ # many children with the same prefix.
352+ # Corresponds to the JSON property `truncated`
353+ # @return [Boolean]
354+ attr_accessor :truncated
355+ alias_method :truncated? , :truncated
356+
357+ def initialize ( **args )
358+ update! ( **args )
359+ end
360+
361+ # Update properties of this object
362+ def update! ( **args )
363+ @children = args [ :children ] if args . key? ( :children )
364+ @truncated = args [ :truncated ] if args . key? ( :truncated )
365+ end
366+ end
367+
310368 # `BucketOptions` describes the bucket boundaries used in the histogram.
311369 class BucketOptions
312370 include Google ::Apis ::Core ::Hashable
@@ -710,7 +768,7 @@ def update!(**args)
710768 end
711769 end
712770
713- # An update to a Counter sent from a worker.
771+ # An update to a Counter sent from a worker. Next ID: 17
714772 class CounterUpdate
715773 include Google ::Apis ::Core ::Hashable
716774
@@ -720,6 +778,11 @@ class CounterUpdate
720778 attr_accessor :boolean
721779 alias_method :boolean? , :boolean
722780
781+ # The message type used for encoding metrics of type bounded trie.
782+ # Corresponds to the JSON property `boundedTrie`
783+ # @return [Google::Apis::DataflowV1b3::BoundedTrie]
784+ attr_accessor :bounded_trie
785+
723786 # True if this counter is reported as the total cumulative aggregate value
724787 # accumulated since the worker started working on this WorkItem. By default this
725788 # is false, indicating that this counter is reported as a delta.
@@ -803,6 +866,7 @@ def initialize(**args)
803866 # Update properties of this object
804867 def update! ( **args )
805868 @boolean = args [ :boolean ] if args . key? ( :boolean )
869+ @bounded_trie = args [ :bounded_trie ] if args . key? ( :bounded_trie )
806870 @cumulative = args [ :cumulative ] if args . key? ( :cumulative )
807871 @distribution = args [ :distribution ] if args . key? ( :distribution )
808872 @floating_point = args [ :floating_point ] if args . key? ( :floating_point )
@@ -3406,7 +3470,7 @@ def update!(**args)
34063470 end
34073471 end
34083472
3409- # Describes the state of a metric.
3473+ # Describes the state of a metric. Next ID: 14
34103474 class MetricUpdate
34113475 include Google ::Apis ::Core ::Hashable
34123476
@@ -3471,13 +3535,19 @@ class MetricUpdate
34713535 attr_accessor :scalar
34723536
34733537 # Worker-computed aggregate value for the "Set" aggregation kind. The only
3474- # possible value type is a list of Values whose type can be Long, Double, or
3475- # String, according to the metric's type. All Values in the list must be of the
3476- # same type.
3538+ # possible value type is a list of Values whose type can be Long, Double, String,
3539+ # or BoundedTrie according to the metric's type. All Values in the list must be
3540+ # of the same type.
34773541 # Corresponds to the JSON property `set`
34783542 # @return [Object]
34793543 attr_accessor :set
34803544
3545+ # Worker-computed aggregate value for the "Trie" aggregation kind. The only
3546+ # possible value type is a BoundedTrieNode.
3547+ # Corresponds to the JSON property `trie`
3548+ # @return [Object]
3549+ attr_accessor :trie
3550+
34813551 # Timestamp associated with the metric value. Optional when workers are
34823552 # reporting work progress; it will be filled in responses from the metrics API.
34833553 # Corresponds to the JSON property `updateTime`
@@ -3500,6 +3570,7 @@ def update!(**args)
35003570 @name = args [ :name ] if args . key? ( :name )
35013571 @scalar = args [ :scalar ] if args . key? ( :scalar )
35023572 @set = args [ :set ] if args . key? ( :set )
3573+ @trie = args [ :trie ] if args . key? ( :trie )
35033574 @update_time = args [ :update_time ] if args . key? ( :update_time )
35043575 end
35053576 end
0 commit comments