Skip to content

Commit a09bb85

Browse files
authored
Fairness Keys & Weights (#1036)
1 parent 9054679 commit a09bb85

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+4081
-1016
lines changed

temporalio/api/batch/v1/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,12 @@
33
BatchOperationDeletion,
44
BatchOperationInfo,
55
BatchOperationReset,
6+
BatchOperationResetActivities,
67
BatchOperationSignal,
78
BatchOperationTermination,
89
BatchOperationTriggerWorkflowRule,
910
BatchOperationUnpauseActivities,
11+
BatchOperationUpdateActivityOptions,
1012
BatchOperationUpdateWorkflowExecutionOptions,
1113
)
1214

@@ -15,9 +17,11 @@
1517
"BatchOperationDeletion",
1618
"BatchOperationInfo",
1719
"BatchOperationReset",
20+
"BatchOperationResetActivities",
1821
"BatchOperationSignal",
1922
"BatchOperationTermination",
2023
"BatchOperationTriggerWorkflowRule",
2124
"BatchOperationUnpauseActivities",
25+
"BatchOperationUpdateActivityOptions",
2226
"BatchOperationUpdateWorkflowExecutionOptions",
2327
]

temporalio/api/batch/v1/message_pb2.py

Lines changed: 54 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

temporalio/api/batch/v1/message_pb2.pyi

Lines changed: 175 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import google.protobuf.internal.containers
1414
import google.protobuf.message
1515
import google.protobuf.timestamp_pb2
1616

17+
import temporalio.api.activity.v1.message_pb2
1718
import temporalio.api.common.v1.message_pb2
1819
import temporalio.api.enums.v1.batch_operation_pb2
1920
import temporalio.api.enums.v1.reset_pb2
@@ -336,9 +337,9 @@ class BatchOperationUnpauseActivities(google.protobuf.message.Message):
336337
type: builtins.str
337338
match_all: builtins.bool
338339
reset_attempts: builtins.bool
339-
"""Providing this flag will also reset the number of attempts."""
340+
"""Setting this flag will also reset the number of attempts."""
340341
reset_heartbeat: builtins.bool
341-
"""Providing this flag will also reset the heartbeat details."""
342+
"""Setting this flag will also reset the heartbeat details."""
342343
@property
343344
def jitter(self) -> google.protobuf.duration_pb2.Duration:
344345
"""If set, the activity will start at a random time within the specified jitter
@@ -431,3 +432,175 @@ class BatchOperationTriggerWorkflowRule(google.protobuf.message.Message):
431432
) -> typing_extensions.Literal["id", "spec"] | None: ...
432433

433434
global___BatchOperationTriggerWorkflowRule = BatchOperationTriggerWorkflowRule
435+
436+
class BatchOperationResetActivities(google.protobuf.message.Message):
437+
"""BatchOperationResetActivities sends activity reset requests in a batch.
438+
NOTE: keep in sync with temporalio.api.workflowservice.v1.ResetActivityRequest
439+
"""
440+
441+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
442+
443+
IDENTITY_FIELD_NUMBER: builtins.int
444+
TYPE_FIELD_NUMBER: builtins.int
445+
MATCH_ALL_FIELD_NUMBER: builtins.int
446+
RESET_ATTEMPTS_FIELD_NUMBER: builtins.int
447+
RESET_HEARTBEAT_FIELD_NUMBER: builtins.int
448+
KEEP_PAUSED_FIELD_NUMBER: builtins.int
449+
JITTER_FIELD_NUMBER: builtins.int
450+
RESTORE_ORIGINAL_OPTIONS_FIELD_NUMBER: builtins.int
451+
identity: builtins.str
452+
"""The identity of the worker/client."""
453+
type: builtins.str
454+
match_all: builtins.bool
455+
reset_attempts: builtins.bool
456+
"""Setting this flag will also reset the number of attempts."""
457+
reset_heartbeat: builtins.bool
458+
"""Setting this flag will also reset the heartbeat details."""
459+
keep_paused: builtins.bool
460+
"""If activity is paused, it will remain paused after reset"""
461+
@property
462+
def jitter(self) -> google.protobuf.duration_pb2.Duration:
463+
"""If set, the activity will start at a random time within the specified jitter
464+
duration, introducing variability to the start time.
465+
"""
466+
restore_original_options: builtins.bool
467+
"""If set, the activity options will be restored to the defaults.
468+
Default options are then options activity was created with.
469+
They are part of the first ActivityTaskScheduled event.
470+
"""
471+
def __init__(
472+
self,
473+
*,
474+
identity: builtins.str = ...,
475+
type: builtins.str = ...,
476+
match_all: builtins.bool = ...,
477+
reset_attempts: builtins.bool = ...,
478+
reset_heartbeat: builtins.bool = ...,
479+
keep_paused: builtins.bool = ...,
480+
jitter: google.protobuf.duration_pb2.Duration | None = ...,
481+
restore_original_options: builtins.bool = ...,
482+
) -> None: ...
483+
def HasField(
484+
self,
485+
field_name: typing_extensions.Literal[
486+
"activity",
487+
b"activity",
488+
"jitter",
489+
b"jitter",
490+
"match_all",
491+
b"match_all",
492+
"type",
493+
b"type",
494+
],
495+
) -> builtins.bool: ...
496+
def ClearField(
497+
self,
498+
field_name: typing_extensions.Literal[
499+
"activity",
500+
b"activity",
501+
"identity",
502+
b"identity",
503+
"jitter",
504+
b"jitter",
505+
"keep_paused",
506+
b"keep_paused",
507+
"match_all",
508+
b"match_all",
509+
"reset_attempts",
510+
b"reset_attempts",
511+
"reset_heartbeat",
512+
b"reset_heartbeat",
513+
"restore_original_options",
514+
b"restore_original_options",
515+
"type",
516+
b"type",
517+
],
518+
) -> None: ...
519+
def WhichOneof(
520+
self, oneof_group: typing_extensions.Literal["activity", b"activity"]
521+
) -> typing_extensions.Literal["type", "match_all"] | None: ...
522+
523+
global___BatchOperationResetActivities = BatchOperationResetActivities
524+
525+
class BatchOperationUpdateActivityOptions(google.protobuf.message.Message):
526+
"""BatchOperationUpdateActivityOptions sends an update-activity-options requests in a batch.
527+
NOTE: keep in sync with temporalio.api.workflowservice.v1.UpdateActivityRequest
528+
"""
529+
530+
DESCRIPTOR: google.protobuf.descriptor.Descriptor
531+
532+
IDENTITY_FIELD_NUMBER: builtins.int
533+
TYPE_FIELD_NUMBER: builtins.int
534+
MATCH_ALL_FIELD_NUMBER: builtins.int
535+
ACTIVITY_OPTIONS_FIELD_NUMBER: builtins.int
536+
UPDATE_MASK_FIELD_NUMBER: builtins.int
537+
RESTORE_ORIGINAL_FIELD_NUMBER: builtins.int
538+
identity: builtins.str
539+
"""The identity of the worker/client."""
540+
type: builtins.str
541+
match_all: builtins.bool
542+
@property
543+
def activity_options(
544+
self,
545+
) -> temporalio.api.activity.v1.message_pb2.ActivityOptions:
546+
"""Update Activity options. Partial updates are accepted and controlled by update_mask."""
547+
@property
548+
def update_mask(self) -> google.protobuf.field_mask_pb2.FieldMask:
549+
"""Controls which fields from `activity_options` will be applied"""
550+
restore_original: builtins.bool
551+
"""If set, the activity options will be restored to the default.
552+
Default options are then options activity was created with.
553+
They are part of the first ActivityTaskScheduled event.
554+
This flag cannot be combined with any other option; if you supply
555+
restore_original together with other options, the request will be rejected.
556+
"""
557+
def __init__(
558+
self,
559+
*,
560+
identity: builtins.str = ...,
561+
type: builtins.str = ...,
562+
match_all: builtins.bool = ...,
563+
activity_options: temporalio.api.activity.v1.message_pb2.ActivityOptions
564+
| None = ...,
565+
update_mask: google.protobuf.field_mask_pb2.FieldMask | None = ...,
566+
restore_original: builtins.bool = ...,
567+
) -> None: ...
568+
def HasField(
569+
self,
570+
field_name: typing_extensions.Literal[
571+
"activity",
572+
b"activity",
573+
"activity_options",
574+
b"activity_options",
575+
"match_all",
576+
b"match_all",
577+
"type",
578+
b"type",
579+
"update_mask",
580+
b"update_mask",
581+
],
582+
) -> builtins.bool: ...
583+
def ClearField(
584+
self,
585+
field_name: typing_extensions.Literal[
586+
"activity",
587+
b"activity",
588+
"activity_options",
589+
b"activity_options",
590+
"identity",
591+
b"identity",
592+
"match_all",
593+
b"match_all",
594+
"restore_original",
595+
b"restore_original",
596+
"type",
597+
b"type",
598+
"update_mask",
599+
b"update_mask",
600+
],
601+
) -> None: ...
602+
def WhichOneof(
603+
self, oneof_group: typing_extensions.Literal["activity", b"activity"]
604+
) -> typing_extensions.Literal["type", "match_all"] | None: ...
605+
606+
global___BatchOperationUpdateActivityOptions = BatchOperationUpdateActivityOptions

0 commit comments

Comments
 (0)