From 914f7f725a20a1ff3c14ab01fd05693d74fe30cf Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Thu, 23 May 2024 10:03:12 -0700 Subject: [PATCH 1/9] Initial incomplete changes --- playground/mapq/client_impl.go | 36 +++ playground/mapq/example_test.go | 263 +++++++++++++++++++++ playground/mapq/mapq.go | 74 ++++++ playground/mapq/tree/queue_tree.go | 196 +++++++++++++++ playground/mapq/types/client.go | 43 ++++ playground/mapq/types/consumer.go | 13 + playground/mapq/types/item.go | 91 +++++++ playground/mapq/types/policy.go | 117 +++++++++ playground/mapq/types/policy_collection.go | 98 ++++++++ service/history/execution/retry_test.go | 37 +++ 10 files changed, 968 insertions(+) create mode 100644 playground/mapq/client_impl.go create mode 100644 playground/mapq/example_test.go create mode 100644 playground/mapq/mapq.go create mode 100644 playground/mapq/tree/queue_tree.go create mode 100644 playground/mapq/types/client.go create mode 100644 playground/mapq/types/consumer.go create mode 100644 playground/mapq/types/item.go create mode 100644 playground/mapq/types/policy.go create mode 100644 playground/mapq/types/policy_collection.go diff --git a/playground/mapq/client_impl.go b/playground/mapq/client_impl.go new file mode 100644 index 00000000000..129fee5192b --- /dev/null +++ b/playground/mapq/client_impl.go @@ -0,0 +1,36 @@ +package mapq + +import ( + "context" + + "github.com/uber/cadence/playground/mapq/tree" + "github.com/uber/cadence/playground/mapq/types" +) + +type ClientImpl struct { + persister types.Persister + consumerFactory types.ConsumerFactory + tree *tree.QueueTree + partitions []string + policies []types.NodePolicy +} + +func (c *ClientImpl) Start(context.Context) error { + return nil +} + +func (c *ClientImpl) Stop(context.Context) error { + return nil +} + +func (c *ClientImpl) Enqueue(context.Context, []types.Item) error { + return nil +} + +func (c *ClientImpl) Ack(context.Context, types.Item) error { + return nil +} + +func (c *ClientImpl) Nack(context.Context, types.Item) error { + return nil +} diff --git a/playground/mapq/example_test.go b/playground/mapq/example_test.go new file mode 100644 index 00000000000..0ba54da8565 --- /dev/null +++ b/playground/mapq/example_test.go @@ -0,0 +1,263 @@ +package mapq + +import ( + "context" + "fmt" + "testing" + "time" + + "github.com/uber/cadence/common/persistence" + "github.com/uber/cadence/playground/mapq/types" +) + +func TestExample(t *testing.T) { + cl, err := New( + WithConsumerFactory(&NoOpConsumerFactory{}), + WithPersister(&InMemoryPersister{}), + WithPartitions([]string{"type", "sub-type", "domain"}), + WithPolicies([]types.NodePolicy{ + // level 0: split by type + { + Path: "", + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{"timer", "transfer"}, + }, + }, + // level 1: timer node + { + Path: "/timer", + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{ + persistence.TaskTypeDeleteHistoryEvent, + }, + }, + }, + // level 1: transfer node + { + Path: "/transfer", + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{ + persistence.TransferTaskTypeStartChildExecution, + }, + }, + }, + // level 2: nodes per pairs + // - default 1000 RPS for per sub-type node + // - split by domain + // - allow top 5 domains to be split based on burst + { + Path: "/./.", + SplitPolicy: &types.SplitPolicy{ + MaxNumChildren: 5, // allow top 4 tomains to be split. 5th domain will be catch-all + Strategy: &types.SplitStrategy{ + SplitEnqueueRPSThreshold: 100, + }, + }, + }, + // override for timer delete history event: + // - only allow 50 RPS + // - disable split policy + { + Path: "/timer/4", + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 50}, + SplitPolicy: &types.SplitPolicy{Disabled: true}, + }, + // override for start child execution + // - only allow 10 RPS + // - disable split policy + { + Path: "/transfer/4", + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 10}, + SplitPolicy: &types.SplitPolicy{Disabled: true}, + }, + // level 3: default policy for all nodes at this level. nodes per pairs + // - only allow 100 rps + // - disable split policy + { + Path: "/././.", + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 100}, + SplitPolicy: &types.SplitPolicy{Disabled: true}, + }, + // level 3: override policy for catch-all nodes at this level (all domains that don't have a specific node) + // this policy will override the 100 RPS policy defined above to give more RPS to catch-all nodes + { + Path: "/././*", + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 1000}, + SplitPolicy: &types.SplitPolicy{Disabled: true}, + }, + }), + ) + + if err != nil { + panic(err) + } + + ctx := context.Background() + if err := cl.Start(ctx); err != nil { + panic(err) + } + defer cl.Stop(ctx) + + err = cl.Enqueue(context.Background(), []types.Item{ + newTimerItem("d1", time.Now(), persistence.TaskTypeDecisionTimeout), + newTimerItem("d1", time.Now(), persistence.TaskTypeActivityTimeout), + newTimerItem("d1", time.Now(), persistence.TaskTypeUserTimer), + }) + if err != nil { + panic(err) + } + + err = cl.Enqueue(context.Background(), []types.Item{ + newTransferItem("d2", 1, persistence.TransferTaskTypeDecisionTask), + newTransferItem("d2", 2, persistence.TransferTaskTypeActivityTask), + newTransferItem("d2", 3, persistence.TransferTaskTypeStartChildExecution), + newTransferItem("d2", 4, persistence.TransferTaskTypeStartChildExecution), + newTransferItem("d2", 5, persistence.TransferTaskTypeStartChildExecution), + }) + if err != nil { + panic(err) + } + +} + +var _ types.ConsumerFactory = (*NoOpConsumerFactory)(nil) + +type NoOpConsumerFactory struct{} + +func (f *NoOpConsumerFactory) New(context.Context, types.ItemPartitions) types.Consumer { + return &NoOpConsumer{} +} + +type NoOpConsumer struct{} + +func (c *NoOpConsumer) Start(context.Context) error { + return nil +} + +func (c *NoOpConsumer) Stop(context.Context) error { + return nil +} + +func (c *NoOpConsumer) Process(ctx context.Context, item types.Item) error { + fmt.Printf("processing item: %v\n", item) + return nil +} + +type InMemoryPersister struct { + items []types.ItemToPersist + offsets *types.Offsets +} + +func (p *InMemoryPersister) Persist(ctx context.Context, items []types.ItemToPersist) error { + fmt.Printf("persisting %v items\n", len(items)) + return nil +} + +func (p *InMemoryPersister) GetOffsets(context.Context) (*types.Offsets, error) { + return p.offsets, nil +} + +func (p *InMemoryPersister) CommitOffsets(ctx context.Context, offsets *types.Offsets) error { + fmt.Printf("committing offsets: %v\n", offsets) + p.offsets = offsets + return nil +} + +func newTimerItem(domain string, t time.Time, timerType int) types.Item { + switch timerType { + case persistence.TaskTypeDecisionTimeout: + case persistence.TaskTypeActivityTimeout: + case persistence.TaskTypeUserTimer: + case persistence.TaskTypeWorkflowTimeout: + case persistence.TaskTypeDeleteHistoryEvent: + case persistence.TaskTypeActivityRetryTimer: + case persistence.TaskTypeWorkflowBackoffTimer: + default: + panic(fmt.Errorf("unknown timer type: %v", timerType)) + } + + return &timerItem{ + t: t, + timerType: timerType, + domain: domain, + } +} + +type timerItem struct { + t time.Time + timerType int + domain string +} + +func (t *timerItem) String() string { + return fmt.Sprintf("timerItem{timerType: %v, time: %v}", t.timerType, t.t) +} + +func (t *timerItem) Offset() int64 { + return t.t.UnixNano() +} + +func (t *timerItem) GetAttribute(key string) any { + switch key { + case "type": + return "timer" + case "sub-type": + return t.timerType + case "domain": + return t.domain + default: + panic(fmt.Errorf("unknown key: %v", key)) + } +} + +func newTransferItem(domain string, taskID int64, transferType int) types.Item { + switch transferType { + case persistence.TransferTaskTypeActivityTask: + case persistence.TransferTaskTypeDecisionTask: + case persistence.TransferTaskTypeCloseExecution: + case persistence.TransferTaskTypeCancelExecution: + case persistence.TransferTaskTypeSignalExecution: + case persistence.TransferTaskTypeStartChildExecution: + case persistence.TransferTaskTypeRecordWorkflowStarted: + case persistence.TransferTaskTypeResetWorkflow: + case persistence.TransferTaskTypeUpsertWorkflowSearchAttributes: + case persistence.TransferTaskTypeRecordWorkflowClosed: + case persistence.TransferTaskTypeRecordChildExecutionCompleted: + case persistence.TransferTaskTypeApplyParentClosePolicy: + default: + panic(fmt.Errorf("unknown transfer type: %v", transferType)) + } + + return &transferItem{ + domain: domain, + taskID: taskID, + transferType: transferType, + } +} + +type transferItem struct { + taskID int64 + transferType int + domain string +} + +func (t *transferItem) String() string { + return fmt.Sprintf("transferItem{transferType: %v, taskID: %v}", t.transferType, t.taskID) +} + +func (t *transferItem) Offset() int64 { + return t.taskID +} + +func (t *transferItem) GetAttribute(key string) any { + switch key { + case "type": + return "transfer" + case "sub-type": + return t.transferType + case "domain": + return t.domain + default: + panic(fmt.Errorf("unknown key: %v", key)) + } +} diff --git a/playground/mapq/mapq.go b/playground/mapq/mapq.go new file mode 100644 index 00000000000..05db4dfd091 --- /dev/null +++ b/playground/mapq/mapq.go @@ -0,0 +1,74 @@ +package mapq + +import ( + "fmt" + + "github.com/uber/cadence/playground/mapq/tree" + "github.com/uber/cadence/playground/mapq/types" +) + +type Options func(*ClientImpl) + +func WithPersister(p types.Persister) Options { + return func(c *ClientImpl) { + c.persister = p + } +} + +func WithConsumerFactory(cf types.ConsumerFactory) Options { + return func(c *ClientImpl) { + c.consumerFactory = cf + } +} + +// WithPartitions sets the partition keys for each level. +// MAPQ creates a tree with depth = len(partitions) +func WithPartitions(partitions []string) Options { + return func(c *ClientImpl) { + c.partitions = partitions + } +} + +// WithPolicies sets the policies for the MAPQ instance. +// Policies can be defined for nodes at a specific level or nodes with specific path. +// +// Path conventions: +// - "" -> empty path represents the root node at level 0 +// - "/." matches with all nodes at level 1 +// - "/*" represents the catch-all node at level 1 +// - "/xyz" represents a specific node at level 1 whose partition value is xyz +// - "/./." matches with all nodes at level 2 +// - "/xyz/." matches with all nodes at level 2 whose parent is xyz node +// - "xyz/*" represents the catch-all node at level 2 whose parent is xyz node +// - "xyz/abc" represents a specific node at level 2 whose level 2 attribute value is abc and parent is xyz node +func WithPolicies(policies []types.NodePolicy) Options { + return func(c *ClientImpl) { + c.policies = policies + } +} + +func New(opts ...Options) (types.Client, error) { + c := &ClientImpl{} + + for _, opt := range opts { + opt(c) + } + + if c.persister == nil { + return nil, fmt.Errorf("persister is required. Use WithPersister option to set it") + } + + if c.consumerFactory == nil { + return nil, fmt.Errorf("consumer factory is required. Use WithConsumerFactory option to set it") + } + + tree, err := tree.New(c.partitions, c.policies, c.persister) + if err != nil { + return nil, err + } + + c.tree = tree + fmt.Printf("tree: \n%s\n", c.tree) + + return c, nil +} diff --git a/playground/mapq/tree/queue_tree.go b/playground/mapq/tree/queue_tree.go new file mode 100644 index 00000000000..afa674ac66d --- /dev/null +++ b/playground/mapq/tree/queue_tree.go @@ -0,0 +1,196 @@ +package tree + +import ( + "context" + "fmt" + "strings" + + "github.com/uber/cadence/playground/mapq/types" +) + +type QueueTree struct { + partitions []string + policyCol types.NodePolicyCollection + persister types.Persister + root *QueueTreeNode +} + +type QueueTreeNode struct { + // The path to the node + Path string + + // The attribute key used to create this node by parent + AttributeKey string + + // The attribute value used to create this node by parent + AttributeVal any + + // The policy for this node. It's merged policy from all policies that match this node + NodePolicy types.NodePolicy + + // Children by attribute key + // "*" is a special key that represents the default/fallback child queue + // If there's no children then the node is considered leaf node + Children map[any]*QueueTreeNode +} + +func New(partitions []string, policies []types.NodePolicy, p types.Persister) (*QueueTree, error) { + t := &QueueTree{ + partitions: partitions, + policyCol: types.NewNodePolicyCollection(policies), + persister: p, + } + + err := t.init() + return t, err +} + +func (t *QueueTree) init() error { + rootPolicy, err := t.policyCol.GetMergedPolicyForNode("") + if err != nil { + return fmt.Errorf("failed to get root policy: %w", err) + } + t.root = &QueueTreeNode{ + Path: "", // Root node + Children: map[any]*QueueTreeNode{}, + NodePolicy: rootPolicy, + } + + // Create tree nodes with catch-all nodes at all levels and predefined splits. + // There will be len(partitions) levels in the tree. + err = t.addCatchAllNodes(t.root) + if err != nil { + return fmt.Errorf("failed to initialize tree: %w", err) + } + + return nil +} + +func (t *QueueTree) addCatchAllNodes(n *QueueTreeNode) error { + nodeLevel := nodeLevel(n.Path) + if nodeLevel == len(t.partitions) { // reached the leaf level + return nil + } + + if n.Children["*"] != nil { // catch-all node already exists + return nil + } + + nextLevelAttrKey := t.partitions[nodeLevel] + ch, err := n.addChild(nextLevelAttrKey, "*", t.policyCol, t.partitions) + if err != nil { + return err + } + + return t.addCatchAllNodes(ch) +} + +func (t *QueueTree) String() string { + var sb strings.Builder + var nodes []*QueueTreeNode + nodes = append(nodes, t.root) + for len(nodes) > 0 { + node := nodes[0] + nodes = nodes[1:] + sb.WriteString(node.String()) + sb.WriteString("\n") + for _, child := range node.Children { + nodes = append(nodes, child) + } + } + + return sb.String() +} + +func (t *QueueTree) Enqueue(ctx context.Context, items []types.Item) error { + if t.root == nil { + return fmt.Errorf("root node is nil") + } + + var itemsToPersist []types.ItemToPersist + for _, item := range items { + itemToPersist, err := t.root.Enqueue(ctx, item, nil, map[string]any{}) + if err != nil { + return err + } + itemsToPersist = append(itemsToPersist, itemToPersist) + } + + return t.persister.Persist(ctx, itemsToPersist) +} + +func (n *QueueTreeNode) String() string { + return fmt.Sprintf("QueueTreeNode{Path: %q, AttributeKey: %v, AttributeVal: %v, NodePolicy: %s, Num Children: %d}", n.Path, n.AttributeKey, n.AttributeVal, n.NodePolicy, len(n.Children)) +} + +func (n *QueueTreeNode) addChild(attrKey string, attrVal any, policyCol types.NodePolicyCollection, partitions []string) (*QueueTreeNode, error) { + path := fmt.Sprintf("%s/%v", n.Path, attrVal) + policy, err := policyCol.GetMergedPolicyForNode(path) + if err != nil { + return nil, err + } + ch := &QueueTreeNode{ + Path: path, + AttributeKey: attrKey, + AttributeVal: attrVal, + NodePolicy: policy, + Children: map[any]*QueueTreeNode{}, + } + + if err := ch.addPredefinedSplits(policyCol, partitions); err != nil { + return nil, err + } + + n.Children[attrVal] = ch + return ch, nil +} + +func (n *QueueTreeNode) addPredefinedSplits(policyCol types.NodePolicyCollection, partitions []string) error { + if n.NodePolicy.SplitPolicy == nil { + return nil + } + + for _, split := range n.NodePolicy.SplitPolicy.PredefinedSplits { + path := fmt.Sprintf("%s/%v", n.Path, split) + level := nodeLevel(path) + if level >= len(partitions) { + return fmt.Errorf("predefined split is defined for a leaf level node %s", n.Path) + } + + attrKey := partitions[level] + _, err := n.addChild(attrKey, split, policyCol, partitions) + if err != nil { + return err + } + } + + return nil +} + +func (n *QueueTreeNode) Enqueue(ctx context.Context, item types.Item, partitions []string, partitionMap map[string]any) (types.ItemToPersist, error) { + // Add the attribute value to queueNodePathParts + attr := item.GetAttribute(n.AttributeKey) + partitions = append(partitions, n.AttributeKey) + partitionMap[n.AttributeKey] = item.GetAttribute(n.AttributeKey) + + // If there are no children then this is a leaf node + if len(n.Children) == 0 { + return types.NewItemToPersist(item, types.NewItemPartitions(partitions, partitionMap)), nil + } + + child, ok := n.Children[attr] + if !ok { + // TODO: thread safety missing + child, ok = n.Children["*"] + if !ok { + // catch-all nodes are created during initalization so this should never happen + return nil, fmt.Errorf("no child found for attribute %v in node %v", attr, n.Path) + } + } + + return child.Enqueue(ctx, item, partitions, partitionMap) +} + +func nodeLevel(path string) int { + return len(strings.Split(path, "/")) - 1 +} diff --git a/playground/mapq/types/client.go b/playground/mapq/types/client.go new file mode 100644 index 00000000000..1cfb6ad9788 --- /dev/null +++ b/playground/mapq/types/client.go @@ -0,0 +1,43 @@ +package types + +import ( + "context" +) + +type Client interface { + // Enqueue adds an item to the queue + Enqueue(context.Context, []Item) error + + // Ack marks the item as processed. + // Out of order acks are supported. + // Acking an item that has not been dequeued will have no effect. + // Queue's committed offset is updated to the last ack'ed item's offset periodically until there's a gap (un-acked item). + // In other words, all items up to the committed offset are ack'ed. + // Ack'ed item might still be returned from Dequeue if its offset is higher than last committed offset before process restarts. + Ack(context.Context, Item) error + + // Nack negatively acknowledges an item in the queue + // Nack'ing an already ack'ed item will have no effect. + Nack(context.Context, Item) error + + // Start the client. It will + // - fetch the last committed offsets from the persister, + // - start corresponding consumers + // - dispatch items starting from those offsets. + Start(context.Context) error + + // Stop the client. It will + // - stop all consumers + // - persist the last committed offsets + Stop(context.Context) error +} + +type Persister interface { + Persist(ctx context.Context, items []ItemToPersist) error + GetOffsets(ctx context.Context) (*Offsets, error) + CommitOffsets(ctx context.Context, offsets *Offsets) error +} + +type Offsets struct { + // TODO: define offsets +} diff --git a/playground/mapq/types/consumer.go b/playground/mapq/types/consumer.go new file mode 100644 index 00000000000..62c51d41859 --- /dev/null +++ b/playground/mapq/types/consumer.go @@ -0,0 +1,13 @@ +package types + +import "context" + +type ConsumerFactory interface { + New(context.Context, ItemPartitions) Consumer +} + +type Consumer interface { + Start(context.Context) error + Stop(context.Context) error + Process(context.Context, Item) error +} diff --git a/playground/mapq/types/item.go b/playground/mapq/types/item.go new file mode 100644 index 00000000000..61ef20b1985 --- /dev/null +++ b/playground/mapq/types/item.go @@ -0,0 +1,91 @@ +package types + +import "fmt" + +type Item interface { + // GetAttribute returns the value of the attribute key. + // Value can be any type. It's up to the client to interpret the value. + // Attribute keys used as partition keys will be converted to string because they are used as node + // identifiers in the queue tree. + GetAttribute(key string) any + + // Offset returns the offset of the item in the queue. e.g. monotonically increasing sequence number or a timestamp + Offset() int64 + + // String returns a human friendly representation of the item for logging purposes + String() string +} + +type ItemToPersist interface { + Item + ItemPartitions +} + +func NewItemToPersist(item Item, itemPartitions ItemPartitions) ItemToPersist { + return &defaultItemToPersist{ + item: item, + itemPartitions: itemPartitions, + } +} + +type ItemPartitions interface { + // GetPartitions returns the partition keys ordered by their level in the tree + GetPartitions() []string + + // GetPartitionValue returns the partition value to determine the target queue + // e.g. + // Below example demonstrates that item is in a catch-all queue for sub-type + // Item.GetAttribute("sub-type") returns "timer" + // ItemPartitions.GetPartitionValue("sub-type") returns "*" + // + GetPartitionValue(key string) any +} + +func NewItemPartitions(partitions []string, partitionMap map[string]any) ItemPartitions { + return &defaultItemPartitions{ + partitions: partitions, + partitionMap: partitionMap, + } +} + +type defaultItemPartitions struct { + partitions []string + partitionMap map[string]any +} + +func (i *defaultItemPartitions) GetPartitions() []string { + return i.partitions +} + +func (i *defaultItemPartitions) GetPartitionValue(key string) any { + return i.partitionMap[key] +} + +func (i *defaultItemPartitions) String() string { + return fmt.Sprintf("ItemPartitions{partitions:%v, partitionMap:%v}", i.partitions, i.partitionMap) +} + +type defaultItemToPersist struct { + item Item + itemPartitions ItemPartitions +} + +func (i *defaultItemToPersist) String() string { + return fmt.Sprintf("ItemToPersist{item:%v, itemPartitions:%v}", i.item, i.itemPartitions) +} + +func (i *defaultItemToPersist) Offset() int64 { + return i.item.Offset() +} + +func (i *defaultItemToPersist) GetAttribute(key string) any { + return i.item.GetAttribute(key) +} + +func (i *defaultItemToPersist) GetPartitions() []string { + return i.itemPartitions.GetPartitions() +} + +func (i *defaultItemToPersist) GetPartitionValue(key string) any { + return i.itemPartitions.GetPartitionValue(key) +} diff --git a/playground/mapq/types/policy.go b/playground/mapq/types/policy.go new file mode 100644 index 00000000000..7e11b2e01b9 --- /dev/null +++ b/playground/mapq/types/policy.go @@ -0,0 +1,117 @@ +package types + +import ( + "encoding/json" + "fmt" +) + +type DispatchPolicy struct { + // DispatchRPS is the rate limit for items dequeued from the node to be pushed to processors. + // All nodes inherit the DispatchRPS from the parent node as is (not distributed to children). + // If parent has 100 rps limit, then all curent and to-be-created children will have 100 rps limit. + DispatchRPS int64 `json:"dispatchRPS,omitempty"` + + // Concurrency is the maximum number of items to be processed concurrently. + Concurrency int `json:"concurrency,omitempty"` + + // TODO: define retry policy +} + +func (dp DispatchPolicy) String() string { + return fmt.Sprintf("DispatchPolicy{DispatchRPS:%d, Concurrency:%d}", dp.DispatchRPS, dp.Concurrency) +} + +type SplitPolicy struct { + Disabled bool `json:"disabled,omitempty"` + + // PredefinedSplits is a list of predefined splits for the attribute key + // Child nodes for these attributes will be created during initialization + PredefinedSplits []any `json:"predefinedSplits,omitempty"` + + // The max number of children to split the node into. + MaxNumChildren int `json:"maxNumChildren,omitempty"` + + // Strategy for splitting the node + Strategy *SplitStrategy `json:"strategy,omitempty"` +} + +func (sp SplitPolicy) String() string { + return fmt.Sprintf("SplitPolicy{Disabled:%v, PredefinedSplits:%v, MaxNumChildren:%d, Strategy:%s}", sp.Disabled, sp.PredefinedSplits, sp.MaxNumChildren, sp.Strategy) +} + +type SplitStrategy struct { + // Split items into child queues when the RPS of items sharing same attribute value for given key + // exceeds this threshold + // If 0, then no split by RPS + SplitEnqueueRPSThreshold int `json:"splitRPSThreshold,omitempty"` + + // Enable burst detection for this level + // If enabled, then the node will keep track of the burst score per item group (grouped by attribute value) + // and split the node if the burst score exceeds the threshold + EnableBurstDetection bool `json:"enableBurstDetection,omitempty"` +} + +func (ss SplitStrategy) String() string { + return fmt.Sprintf("SplitStrategy{SplitEnqueueRPSThreshold:%d, EnableBurstDetection:%v}", ss.SplitEnqueueRPSThreshold, ss.EnableBurstDetection) +} + +type NodePolicy struct { + // The path to the node + // Root node has empty path "". + // "/" is used as path separator. + // "*" means the policy applies to the special catch-all node + // "." means the policy applies to all nodes in the specified level except the catch-all node + Path string `json:"path,omitempty"` + + SplitPolicy *SplitPolicy `json:"splitPolicy,omitempty"` + + // DispatchPolicy is enforced at the leaf node level. + DispatchPolicy *DispatchPolicy `json:"dispatchPolicy,omitempty"` +} + +// Merge merges two NodePolicy objects by marshalling/unmarshalling them. +// Any field in the other policy will override the field in the current policy. +func (np NodePolicy) Merge(other NodePolicy) (NodePolicy, error) { + marshalled1, err := json.Marshal(np) + if err != nil { + return NodePolicy{}, err + } + + var m1 map[string]any + err = json.Unmarshal(marshalled1, &m1) + if err != nil { + return NodePolicy{}, err + } + + marshalled2, err := json.Marshal(other) + if err != nil { + return NodePolicy{}, err + } + + var m2 map[string]any + err = json.Unmarshal(marshalled2, &m2) + if err != nil { + return NodePolicy{}, err + } + + for k, v2 := range m2 { + m1[k] = v2 + } + + mergedMarshalled, err := json.Marshal(m1) + if err != nil { + return NodePolicy{}, err + } + + var merged NodePolicy + err = json.Unmarshal(mergedMarshalled, &merged) + if err != nil { + return NodePolicy{}, err + } + + return merged, nil +} + +func (np NodePolicy) String() string { + return fmt.Sprintf("NodePolicy{Path:%v, DispatchPolicy:%s, SplitPolicy:%s}", np.Path, np.DispatchPolicy, np.SplitPolicy) +} diff --git a/playground/mapq/types/policy_collection.go b/playground/mapq/types/policy_collection.go new file mode 100644 index 00000000000..05ef51f9b6a --- /dev/null +++ b/playground/mapq/types/policy_collection.go @@ -0,0 +1,98 @@ +package types + +import ( + "fmt" + "sort" + "strings" +) + +type NodePolicyCollection struct { + // policies is sorted by level and generic to special + policies []NodePolicy +} + +func NewNodePolicyCollection(policies []NodePolicy) NodePolicyCollection { + trimPaths(policies) + sortPolicies(policies) + return NodePolicyCollection{ + policies: policies, + } +} + +func (npc NodePolicyCollection) GetMergedPolicyForNode(path string) (NodePolicy, error) { + result := NodePolicy{} + for _, policy := range npc.policies { + pathParts := strings.Split(path, "/") + plcPathParts := strings.Split(policy.Path, "/") + if len(pathParts) != len(plcPathParts) { + continue + } + + match := true + for i, part := range pathParts { + if part == "." || pathParts[i] == "." || part == pathParts[i] { + continue + } + match = false + break + } + + if !match { + continue + } + var err error + result, err = result.Merge(policy) + if err != nil { + return result, fmt.Errorf("failed to merge policies: %w", err) + } + } + return result, nil +} + +func (npc NodePolicyCollection) GetPolicies() []NodePolicy { + // return a copy of the slice so the order is not messed up + policies := make([]NodePolicy, len(npc.policies)) + copy(policies, npc.policies) + return policies +} + +func trimPaths(policies []NodePolicy) { + for i := range policies { + policies[i].Path = strings.TrimRight(policies[i].Path, "/") + } +} + +func sortPolicies(policies []NodePolicy) { + // sort policies by level and generic to special + sort.Slice(policies, func(i, j int) bool { + parts1 := strings.Split(policies[i].Path, "/") + parts2 := strings.Split(policies[j].Path, "/") + l1 := len(parts1) + l2 := len(parts2) + if l1 != l2 { + return l1 < l2 + } + + pathPartPrecedence := map[any]int{ + ".": 0, + "*": 1, + } + for partIdx := 0; partIdx < l1; partIdx++ { + p1, ok := pathPartPrecedence[parts1[partIdx]] + if !ok { + p1 = 2 + } + p2, ok := pathPartPrecedence[parts2[partIdx]] + if !ok { + p2 = 2 + } + + if p1 != p2 { + return p1 < p2 + } + } + + // If parts have same precedence then jusr return the order + return i < j + }) +} diff --git a/service/history/execution/retry_test.go b/service/history/execution/retry_test.go index 2e914dcd3d5..9110ed87627 100644 --- a/service/history/execution/retry_test.go +++ b/service/history/execution/retry_test.go @@ -31,6 +31,43 @@ import ( "github.com/uber/cadence/common/persistence" ) +func Test_NextRetry2(t *testing.T) { + // a := assert.New(t) + now, _ := time.Parse(time.RFC3339, "2018-04-13T16:08:08+00:00") + reason := "good-reason" + identity := "some-worker-identity" + + // no retry without retry policy + ai := &persistence.ActivityInfo{ + ScheduleToStartTimeout: int32((30 * time.Minute).Seconds()), + ScheduleToCloseTimeout: int32((30 * time.Minute).Seconds()), + StartToCloseTimeout: int32((30 * time.Minute).Seconds()), + HasRetryPolicy: true, + NonRetriableErrors: []string{"bad-reason", "ugly-reason"}, + StartedIdentity: identity, + MaximumAttempts: 0, + InitialInterval: 60, + BackoffCoefficient: 1, + MaximumInterval: 6000, + ExpirationTime: now.Add(86400 * time.Second), + Attempt: 5, + } + + dur := getBackoffInterval( + now, + ai.ExpirationTime, + ai.Attempt, + ai.MaximumAttempts, + ai.InitialInterval, + ai.MaximumInterval, + ai.BackoffCoefficient, + reason, + ai.NonRetriableErrors, + ) + + t.Logf("dur: %v", dur) +} + func Test_NextRetry(t *testing.T) { a := assert.New(t) now, _ := time.Parse(time.RFC3339, "2018-04-13T16:08:08+00:00") From 58633061fcdef72c0e5b40713f28daed77b1f7e4 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Mon, 10 Jun 2024 16:21:10 -0700 Subject: [PATCH 2/9] update implementation --- common/mapq/README.md | 45 ++++ common/mapq/client_impl.go | 66 ++++++ common/mapq/dispatcher/dispatcher.go | 77 +++++++ {playground => common}/mapq/example_test.go | 84 ++++++-- common/mapq/mapq.go | 96 +++++++++ common/mapq/tree/queue_tree.go | 149 +++++++++++++ common/mapq/tree/queue_tree_node.go | 192 +++++++++++++++++ {playground => common}/mapq/types/client.go | 22 ++ common/mapq/types/consumer.go | 41 ++++ {playground => common}/mapq/types/item.go | 22 ++ common/mapq/types/item_test.go | 23 ++ {playground => common}/mapq/types/policy.go | 22 ++ .../mapq/types/policy_collection.go | 39 +++- common/mapq/types/policy_collection_test.go | 185 +++++++++++++++++ .../mapq_tenant_burst_visualization.png | Bin 0 -> 264321 bytes playground/mapq/client_impl.go | 36 ---- playground/mapq/mapq.go | 74 ------- playground/mapq/tree/queue_tree.go | 196 ------------------ playground/mapq/types/consumer.go | 13 -- 19 files changed, 1044 insertions(+), 338 deletions(-) create mode 100644 common/mapq/README.md create mode 100644 common/mapq/client_impl.go create mode 100644 common/mapq/dispatcher/dispatcher.go rename {playground => common}/mapq/example_test.go (70%) create mode 100644 common/mapq/mapq.go create mode 100644 common/mapq/tree/queue_tree.go create mode 100644 common/mapq/tree/queue_tree_node.go rename {playground => common}/mapq/types/client.go (54%) create mode 100644 common/mapq/types/consumer.go rename {playground => common}/mapq/types/item.go (68%) create mode 100644 common/mapq/types/item_test.go rename {playground => common}/mapq/types/policy.go (76%) rename {playground => common}/mapq/types/policy_collection.go (53%) create mode 100644 common/mapq/types/policy_collection_test.go create mode 100644 docs/images/mapq_tenant_burst_visualization.png delete mode 100644 playground/mapq/client_impl.go delete mode 100644 playground/mapq/mapq.go delete mode 100644 playground/mapq/tree/queue_tree.go delete mode 100644 playground/mapq/types/consumer.go diff --git a/common/mapq/README.md b/common/mapq/README.md new file mode 100644 index 00000000000..3cf27c5f10a --- /dev/null +++ b/common/mapq/README.md @@ -0,0 +1,45 @@ +# MAPQ: Multi-tenant, Auto-partitioned, Persistent Queue + +## Overview + +MAPQ is a new queue framework (introduced in June 2024), aiming to unify Cadence's internal task/request queues. The existing implementations for these applications are cumbersome and maintenance-heavy, with significant overlap and limited extensibility. +MAPQ will address the challenges of scalability, throughput, consistency, and ordering guarantees required by these diverse needs. + + +Challenges and Motivation +- History Task Queues: These queues are poorly understood and difficult to maintain, owing to the departure of their original developer and the non-maintainable state of the code. The design struggles with burst loads from timer/child workflow cases, requiring introduction of more granular task types and automated partitioning that the current system cannot support without extensive refactoring. +- Matching Task Lists: These are basic FIFO queues with some advanced features like sticky task lists, zonal isolation groups and partitioning. The most pressing issue is auto partitioning to reduce operational overhead. +- Async Request Queues: Initially integrated with Kafka topics as the request queue. Initial testing faced challenges like complex provisioning, inability to dynamically create topics/register consumers, poor visibility into the requests in the queue and difficult to tweak alerts. Async APIs are already designed with pluggable queue implementation already so swapping Kafka with something else will not be tricky. + + +### Goals + +MAPQ will provide a solution tailored to meet the following goals: + +- Multi-Tenancy: Guarantees fair access to resources for each tenant based on predefined quotas. +- Auto-Partitioning: Dynamically adjusts partitions based on specified fine-grained policies, supporting both random and deterministic message distribution across physically or virtually partitioned queues. +- Burst-Protection: Detects incoming message spikes and mitigates by utilizing dynamic auto-partitioning. +- Skew-Protection: Detects incoming message skews for given partition keys and mitigates by utilizing dynamic auto-partitioning. +- Advanced Partitioning Policies: Executes on a tree-like partitioning policy to support various levels of partition key hierarchies and strategies. +- Persistent: Ensures message durability via pluggable persistent layer. +- Delivery Guarantees: Guarantees at least once delivery. + + +### Problems with Existing Queues in Cadence + +History Queues: + +- Lack of granular partitioning and inextensibility of history queues make it difficult to address following pathological scenarios: +- Task prioritization: Background tasks like workflow deletion timer tasks share the same queue and consume from the same “processing budget” as other high priority tasks such as user created timers. This is because all timer tasks for a given shard are managed by a single queue. +- Multi tenancy: Tasks of the same type (e.g. all timers) are managed by a single queue and a noisy domain can drastically regress the experience of other domains. It is not possible to write tasks of a specific domain(s) to a separate queue and adjust read/write qps. Current queue granularity ends at task type (timer or transfer). +- Burst cases: Bursts of timers or child workflows are known issues that Cadence has no answers to. These bursts usually cause timeouts and may also impact processing of other domains’ tasks. + +## High Level Design + +MAPQ uses a tree data structure where nodes route incoming messages to child nodes. Nodes can be splitted/merged based on given policies. All leaf nodes are at the same level. Leaf nodes are the actual “queues” where messages are written to/read from via a provided persistent layer plugin. + +The routing key per level, partitioning/departitioning strategy, RPS limits and other options are provided to MAPQ during initialization as a tree-like policy. It contains per level defaults and per-node (identified via path from root) overrides. + +Once initialized the tree will have a minimal number of nodes provided in the policy but it respects policies for not-yet-existing nodes. Since MAPQ supports auto-partitioning there will be new nodes added/removed and it accepts providing policies for such nodes. For example, you might want to partition by domain only for bursty domains and allocate them specific RPS. + +![MAPQ tenant burst visualization](../../docs/images/mapq_tenant_burst_visualization.png) diff --git a/common/mapq/client_impl.go b/common/mapq/client_impl.go new file mode 100644 index 00000000000..572f4713e6e --- /dev/null +++ b/common/mapq/client_impl.go @@ -0,0 +1,66 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package mapq + +import ( + "context" + + "github.com/uber/cadence/common/mapq/tree" + "github.com/uber/cadence/common/mapq/types" +) + +type ClientImpl struct { + persister types.Persister + consumerFactory types.ConsumerFactory + tree *tree.QueueTree + partitions []string + policies []types.NodePolicy +} + +func (c *ClientImpl) Start(ctx context.Context) error { + return c.tree.Start(ctx) +} + +func (c *ClientImpl) Stop(ctx context.Context) error { + // Stop the tree which will stop the dispatchers + if err := c.tree.Stop(ctx); err != nil { + return err + } + + // stop the consumer factory which will stop the consumers + return c.consumerFactory.Stop(ctx) +} + +func (c *ClientImpl) Enqueue(ctx context.Context, items []types.Item) error { + return c.tree.Enqueue(ctx, items) +} + +func (c *ClientImpl) Ack(context.Context, types.Item) error { + // TODO: implement + return nil +} + +func (c *ClientImpl) Nack(context.Context, types.Item) error { + // TODO: implement + return nil +} diff --git a/common/mapq/dispatcher/dispatcher.go b/common/mapq/dispatcher/dispatcher.go new file mode 100644 index 00000000000..a96289dcc45 --- /dev/null +++ b/common/mapq/dispatcher/dispatcher.go @@ -0,0 +1,77 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package dispatcher + +import ( + "context" + "fmt" + "sync" + "time" + + "github.com/uber/cadence/common" + "github.com/uber/cadence/common/mapq/types" +) + +type Dispatcher struct { + consumer types.Consumer + ctx context.Context + cancelCtx context.CancelFunc + wg sync.WaitGroup +} + +func New(c types.Consumer) *Dispatcher { + return &Dispatcher{ + consumer: c, + } +} + +func (d *Dispatcher) Start(ctx context.Context) error { + d.wg.Add(1) + d.ctx, d.cancelCtx = context.WithCancel(ctx) + go d.run() + return nil +} + +func (d *Dispatcher) Stop(ctx context.Context) error { + d.cancelCtx() + timeout := 10 * time.Second + if dl, ok := ctx.Deadline(); ok { + timeout = time.Until(dl) + } + if !common.AwaitWaitGroup(&d.wg, timeout) { + return fmt.Errorf("failed to stop dispatcher in %v", timeout) + } + return nil +} + +func (d *Dispatcher) run() { + d.wg.Done() + // TODO: implement + for { + select { + case <-d.ctx.Done(): + return + default: + } + } +} diff --git a/playground/mapq/example_test.go b/common/mapq/example_test.go similarity index 70% rename from playground/mapq/example_test.go rename to common/mapq/example_test.go index 0ba54da8565..aac9e4b8709 100644 --- a/playground/mapq/example_test.go +++ b/common/mapq/example_test.go @@ -1,3 +1,25 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + package mapq import ( @@ -6,26 +28,34 @@ import ( "testing" "time" + "github.com/uber/cadence/common/mapq/types" "github.com/uber/cadence/common/persistence" - "github.com/uber/cadence/playground/mapq/types" ) func TestExample(t *testing.T) { + persister := &InMemoryPersister{} cl, err := New( WithConsumerFactory(&NoOpConsumerFactory{}), - WithPersister(&InMemoryPersister{}), + WithPersister(persister), WithPartitions([]string{"type", "sub-type", "domain"}), WithPolicies([]types.NodePolicy{ - // level 0: split by type + // level 0: default policy for root (splitted by type) { - Path: "", + Path: "*", SplitPolicy: &types.SplitPolicy{ PredefinedSplits: []any{"timer", "transfer"}, }, }, + // level 1: default policy (splitted by sub-type) + { + Path: "*/.", + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{}, + }, + }, // level 1: timer node { - Path: "/timer", + Path: "*/timer", SplitPolicy: &types.SplitPolicy{ PredefinedSplits: []any{ persistence.TaskTypeDeleteHistoryEvent, @@ -34,7 +64,7 @@ func TestExample(t *testing.T) { }, // level 1: transfer node { - Path: "/transfer", + Path: "*/transfer", SplitPolicy: &types.SplitPolicy{ PredefinedSplits: []any{ persistence.TransferTaskTypeStartChildExecution, @@ -43,12 +73,13 @@ func TestExample(t *testing.T) { }, // level 2: nodes per pairs // - default 1000 RPS for per sub-type node - // - split by domain + // - split by domain. predefined split for d3 domain // - allow top 5 domains to be split based on burst { - Path: "/./.", + Path: "*/./.", SplitPolicy: &types.SplitPolicy{ - MaxNumChildren: 5, // allow top 4 tomains to be split. 5th domain will be catch-all + MaxNumChildren: 5, // allow top 4 tomains to be split. 5th domain will be catch-all + PredefinedSplits: []any{"d3"}, Strategy: &types.SplitStrategy{ SplitEnqueueRPSThreshold: 100, }, @@ -58,7 +89,7 @@ func TestExample(t *testing.T) { // - only allow 50 RPS // - disable split policy { - Path: "/timer/4", + Path: "*/timer/4", DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 50}, SplitPolicy: &types.SplitPolicy{Disabled: true}, }, @@ -66,7 +97,7 @@ func TestExample(t *testing.T) { // - only allow 10 RPS // - disable split policy { - Path: "/transfer/4", + Path: "*/transfer/4", DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 10}, SplitPolicy: &types.SplitPolicy{Disabled: true}, }, @@ -74,14 +105,14 @@ func TestExample(t *testing.T) { // - only allow 100 rps // - disable split policy { - Path: "/././.", + Path: "*/././.", DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 100}, SplitPolicy: &types.SplitPolicy{Disabled: true}, }, // level 3: override policy for catch-all nodes at this level (all domains that don't have a specific node) // this policy will override the 100 RPS policy defined above to give more RPS to catch-all nodes { - Path: "/././*", + Path: "*/././*", DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 1000}, SplitPolicy: &types.SplitPolicy{Disabled: true}, }, @@ -102,11 +133,17 @@ func TestExample(t *testing.T) { newTimerItem("d1", time.Now(), persistence.TaskTypeDecisionTimeout), newTimerItem("d1", time.Now(), persistence.TaskTypeActivityTimeout), newTimerItem("d1", time.Now(), persistence.TaskTypeUserTimer), + newTimerItem("d3", time.Now(), persistence.TaskTypeUserTimer), + newTimerItem("d3", time.Now(), persistence.TaskTypeUserTimer), }) if err != nil { panic(err) } + if len(persister.items) != 5 { + panic(fmt.Errorf("expected 5 items in persister, got %v", len(persister.items))) + } + err = cl.Enqueue(context.Background(), []types.Item{ newTransferItem("d2", 1, persistence.TransferTaskTypeDecisionTask), newTransferItem("d2", 2, persistence.TransferTaskTypeActivityTask), @@ -118,14 +155,21 @@ func TestExample(t *testing.T) { panic(err) } + if len(persister.items) != 10 { + panic(fmt.Errorf("expected 10 items in persister, got %v", len(persister.items))) + } + } var _ types.ConsumerFactory = (*NoOpConsumerFactory)(nil) type NoOpConsumerFactory struct{} -func (f *NoOpConsumerFactory) New(context.Context, types.ItemPartitions) types.Consumer { - return &NoOpConsumer{} +func (f *NoOpConsumerFactory) New(types.ItemPartitions) (types.Consumer, error) { + return &NoOpConsumer{}, nil +} +func (f *NoOpConsumerFactory) Stop(context.Context) error { + return nil } type NoOpConsumer struct{} @@ -150,6 +194,16 @@ type InMemoryPersister struct { func (p *InMemoryPersister) Persist(ctx context.Context, items []types.ItemToPersist) error { fmt.Printf("persisting %v items\n", len(items)) + for _, item := range items { + partitionsKV := map[string]any{} + actualKV := map[string]any{} + for _, k := range item.GetPartitions() { + partitionsKV[k] = item.GetPartitionValue(k) + actualKV[k] = item.GetAttribute(k) + } + fmt.Printf("item attributes: %v, partitions: %v\n", actualKV, partitionsKV) + } + p.items = append(p.items, items...) return nil } diff --git a/common/mapq/mapq.go b/common/mapq/mapq.go new file mode 100644 index 00000000000..72e2f98e64d --- /dev/null +++ b/common/mapq/mapq.go @@ -0,0 +1,96 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package mapq + +import ( + "fmt" + + "github.com/uber/cadence/common/mapq/tree" + "github.com/uber/cadence/common/mapq/types" +) + +type Options func(*ClientImpl) + +func WithPersister(p types.Persister) Options { + return func(c *ClientImpl) { + c.persister = p + } +} + +func WithConsumerFactory(cf types.ConsumerFactory) Options { + return func(c *ClientImpl) { + c.consumerFactory = cf + } +} + +// WithPartitions sets the partition keys for each level. +// MAPQ creates a tree with depth = len(partitions) +func WithPartitions(partitions []string) Options { + return func(c *ClientImpl) { + c.partitions = partitions + } +} + +// WithPolicies sets the policies for the MAPQ instance. +// Policies can be defined for nodes at a specific level or nodes with specific path. +// +// Path conventions: +// - "*" -> represents the root node at level 0 +// - "*/." matches with all nodes at level 1 +// - "*/*" represents the catch-all node at level 1 +// - "*/xyz" represents a specific node at level 1 whose partition value is xyz +// - "*/./." matches with all nodes at level 2 +// - "*/xyz/." matches with all nodes at level 2 whose parent is xyz node +// - "*/xyz/*" represents the catch-all node at level 2 whose parent is xyz node +// - "*/xyz/abc" represents a specific node at level 2 whose level 2 attribute value is abc and parent is xyz node +func WithPolicies(policies []types.NodePolicy) Options { + return func(c *ClientImpl) { + c.policies = policies + } +} + +func New(opts ...Options) (types.Client, error) { + c := &ClientImpl{} + + for _, opt := range opts { + opt(c) + } + + if c.persister == nil { + return nil, fmt.Errorf("persister is required. Use WithPersister option to set it") + } + + if c.consumerFactory == nil { + return nil, fmt.Errorf("consumer factory is required. Use WithConsumerFactory option to set it") + } + + tree, err := tree.New(c.partitions, c.policies, c.persister, c.consumerFactory) + if err != nil { + return nil, err + } + + c.tree = tree + fmt.Printf("tree: \n%s\n", c.tree) + + return c, nil +} diff --git a/common/mapq/tree/queue_tree.go b/common/mapq/tree/queue_tree.go new file mode 100644 index 00000000000..5223518285e --- /dev/null +++ b/common/mapq/tree/queue_tree.go @@ -0,0 +1,149 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package tree + +import ( + "context" + "fmt" + "strings" + + "github.com/uber/cadence/common/mapq/types" +) + +// QueueTree is a tree structure that represents the queue structure for MAPQ +type QueueTree struct { + partitions []string + policyCol types.NodePolicyCollection + persister types.Persister + consumerFactory types.ConsumerFactory + root *QueueTreeNode +} + +func New( + partitions []string, + policies []types.NodePolicy, + persister types.Persister, + consumerFactory types.ConsumerFactory, +) (*QueueTree, error) { + t := &QueueTree{ + partitions: partitions, + policyCol: types.NewNodePolicyCollection(policies), + persister: persister, + consumerFactory: consumerFactory, + } + + err := t.init() + return t, err +} + +// Start the dispatchers for all leaf nodes +func (t *QueueTree) Start(ctx context.Context) error { + return t.root.Start(ctx, t.consumerFactory, nil, map[string]any{}) +} + +// Stop the dispatchers for all leaf nodes +func (t *QueueTree) Stop(ctx context.Context) error { + return t.root.Stop(ctx) +} + +func (t *QueueTree) String() string { + var sb strings.Builder + var nodes []*QueueTreeNode + nodes = append(nodes, t.root) + for len(nodes) > 0 { + node := nodes[0] + nodes = nodes[1:] + sb.WriteString(node.String()) + sb.WriteString("\n") + for _, child := range node.Children { + nodes = append(nodes, child) + } + } + + return sb.String() +} + +func (t *QueueTree) Enqueue(ctx context.Context, items []types.Item) error { + if t.root == nil { + return fmt.Errorf("root node is nil") + } + + var itemsToPersist []types.ItemToPersist + for _, item := range items { + itemToPersist, err := t.root.Enqueue(ctx, item, nil, map[string]any{}) + if err != nil { + return err + } + itemsToPersist = append(itemsToPersist, itemToPersist) + } + + return t.persister.Persist(ctx, itemsToPersist) +} + +func (t *QueueTree) init() error { + t.root = &QueueTreeNode{ + Path: "*", // Root node + Children: map[any]*QueueTreeNode{}, + } + + if err := t.root.Init(t.policyCol, t.partitions); err != nil { + return fmt.Errorf("failed to initialize root node: %w", err) + } + + // Create tree nodes with catch-all nodes at all levels and predefined splits. + // There will be len(partitions) levels in the tree. + err := t.addCatchAllNodes(t.root) + if err != nil { + return fmt.Errorf("failed to initialize tree: %w", err) + } + + return nil +} + +func (t *QueueTree) addCatchAllNodes(n *QueueTreeNode) error { + nodeLevel := nodeLevel(n.Path) + if nodeLevel == len(t.partitions) { // reached the leaf level + return nil + } + + if n.Children["*"] != nil { // catch-all node already exists + return nil + } + + _, err := n.addChild("*", t.policyCol, t.partitions) + if err != nil { + return err + } + + for _, child := range n.Children { + if err := t.addCatchAllNodes(child); err != nil { + return err + } + } + + return nil +} + +func nodeLevel(path string) int { + return len(strings.Split(path, "/")) - 1 +} diff --git a/common/mapq/tree/queue_tree_node.go b/common/mapq/tree/queue_tree_node.go new file mode 100644 index 00000000000..462f9f984f4 --- /dev/null +++ b/common/mapq/tree/queue_tree_node.go @@ -0,0 +1,192 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package tree + +import ( + "context" + "fmt" + + "github.com/uber/cadence/common/mapq/dispatcher" + "github.com/uber/cadence/common/mapq/types" +) + +// QueueTreeNode represents a node in the queue tree +type QueueTreeNode struct { + // The path to the node + Path string + + // The partition key used by this node to decide which child to enqueue the item. + // Partition key of a node is the attribute key of child node. + PartitionKey string + + // The attribute key used to create this node by parent + AttributeKey string + + // The attribute value used to create this node by parent + AttributeVal any + + // The policy for this node. It's merged policy from all policies that match this node + NodePolicy types.NodePolicy + + // Children by attribute key + // "*" is a special key that represents the default/fallback child queue + // If there's no children then the node is considered leaf node + Children map[any]*QueueTreeNode + + // The dispatcher for this node. Only leaf nodes have dispatcher + Dispatcher *dispatcher.Dispatcher +} + +func (n *QueueTreeNode) Start( + ctx context.Context, + consumerFactory types.ConsumerFactory, + partitions []string, + partitionMap map[string]any, +) error { + // If there are no children then this is a leaf node + if len(n.Children) == 0 { + c, err := consumerFactory.New(types.NewItemPartitions(partitions, partitionMap)) + if err != nil { + return err + } + d := dispatcher.New(c) + if err := d.Start(ctx); err != nil { + return err + } + n.Dispatcher = d + return nil + } + + for _, child := range n.Children { + partitionMap[n.PartitionKey] = child.AttributeVal + err := child.Start(ctx, consumerFactory, partitions, partitionMap) + if err != nil { + return err + } + } + + return nil +} + +func (n *QueueTreeNode) Stop(ctx context.Context) error { + if n.Dispatcher != nil { + return n.Dispatcher.Stop(ctx) + } + + for _, child := range n.Children { + if err := child.Stop(ctx); err != nil { + return err + } + } + + return nil +} + +func (n *QueueTreeNode) Enqueue( + ctx context.Context, + item types.Item, + partitions []string, + partitionMap map[string]any, +) (types.ItemToPersist, error) { + // If there are no children then this is a leaf node + if len(n.Children) == 0 { + return types.NewItemToPersist(item, types.NewItemPartitions(partitions, partitionMap)), nil + } + + // Add the attribute value to queueNodePathParts + partitionVal := item.GetAttribute(n.PartitionKey) + partitions = append(partitions, n.PartitionKey) + partitionMap[n.PartitionKey] = partitionVal + + child, ok := n.Children[partitionVal] + if !ok { + // TODO: thread safety missing + child, ok = n.Children["*"] + partitionMap[n.PartitionKey] = "*" + if !ok { + // catch-all nodes are created during initalization so this should never happen + return nil, fmt.Errorf("no child found for attribute %v in node %v", partitionVal, n.Path) + } + } + + return child.Enqueue(ctx, item, partitions, partitionMap) +} + +func (n *QueueTreeNode) String() string { + return fmt.Sprintf("QueueTreeNode{Path: %q, AttributeKey: %v, AttributeVal: %v, NodePolicy: %s, Num Children: %d}", n.Path, n.AttributeKey, n.AttributeVal, n.NodePolicy, len(n.Children)) +} + +func (n *QueueTreeNode) Init(policyCol types.NodePolicyCollection, partitions []string) error { + // Get the merged policy for this node + policy, err := policyCol.GetMergedPolicyForNode(n.Path) + if err != nil { + return err + } + n.NodePolicy = policy + + // Set partition key of the node + nodeLevel := nodeLevel(n.Path) + if nodeLevel < len(partitions) { + n.PartitionKey = partitions[nodeLevel] + } + + // Create predefined children nodes + return n.addPredefinedSplits(policyCol, partitions) +} + +func (n *QueueTreeNode) addChild(attrVal any, policyCol types.NodePolicyCollection, partitions []string) (*QueueTreeNode, error) { + path := fmt.Sprintf("%s/%v", n.Path, attrVal) + ch := &QueueTreeNode{ + Path: path, + AttributeKey: n.PartitionKey, + AttributeVal: attrVal, + Children: map[any]*QueueTreeNode{}, + } + + if err := ch.Init(policyCol, partitions); err != nil { + return nil, err + } + + n.Children[attrVal] = ch + return ch, nil +} + +func (n *QueueTreeNode) addPredefinedSplits(policyCol types.NodePolicyCollection, partitions []string) error { + if n.NodePolicy.SplitPolicy == nil || len(n.NodePolicy.SplitPolicy.PredefinedSplits) == 0 { + return nil + } + + if nodeLevel(n.Path) >= len(partitions) { + return fmt.Errorf("predefined split is defined for a leaf level node %s", n.Path) + } + + for _, split := range n.NodePolicy.SplitPolicy.PredefinedSplits { + + _, err := n.addChild(split, policyCol, partitions) + if err != nil { + return err + } + } + + return nil +} diff --git a/playground/mapq/types/client.go b/common/mapq/types/client.go similarity index 54% rename from playground/mapq/types/client.go rename to common/mapq/types/client.go index 1cfb6ad9788..4990aa17ee9 100644 --- a/playground/mapq/types/client.go +++ b/common/mapq/types/client.go @@ -1,3 +1,25 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + package types import ( diff --git a/common/mapq/types/consumer.go b/common/mapq/types/consumer.go new file mode 100644 index 00000000000..c2d699d9132 --- /dev/null +++ b/common/mapq/types/consumer.go @@ -0,0 +1,41 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package types + +import "context" + +type ConsumerFactory interface { + // New creates a new consumer with the given partitions or returns an existing consumer + // to process the given partitions + // Consumer lifecycle is managed by the factory so the returned consumer must be started. + New(ItemPartitions) (Consumer, error) + + // Stop stops all consumers created by this factory + Stop(context.Context) error +} + +type Consumer interface { + Start(context.Context) error + Stop(context.Context) error + Process(context.Context, Item) error +} diff --git a/playground/mapq/types/item.go b/common/mapq/types/item.go similarity index 68% rename from playground/mapq/types/item.go rename to common/mapq/types/item.go index 61ef20b1985..7abee969a7f 100644 --- a/playground/mapq/types/item.go +++ b/common/mapq/types/item.go @@ -1,3 +1,25 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + package types import "fmt" diff --git a/common/mapq/types/item_test.go b/common/mapq/types/item_test.go new file mode 100644 index 00000000000..98f15cbd5a3 --- /dev/null +++ b/common/mapq/types/item_test.go @@ -0,0 +1,23 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package types diff --git a/playground/mapq/types/policy.go b/common/mapq/types/policy.go similarity index 76% rename from playground/mapq/types/policy.go rename to common/mapq/types/policy.go index 7e11b2e01b9..27865a1c923 100644 --- a/playground/mapq/types/policy.go +++ b/common/mapq/types/policy.go @@ -1,3 +1,25 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + package types import ( diff --git a/playground/mapq/types/policy_collection.go b/common/mapq/types/policy_collection.go similarity index 53% rename from playground/mapq/types/policy_collection.go rename to common/mapq/types/policy_collection.go index 05ef51f9b6a..8de8392fe46 100644 --- a/playground/mapq/types/policy_collection.go +++ b/common/mapq/types/policy_collection.go @@ -1,3 +1,25 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + package types import ( @@ -24,13 +46,19 @@ func (npc NodePolicyCollection) GetMergedPolicyForNode(path string) (NodePolicy, for _, policy := range npc.policies { pathParts := strings.Split(path, "/") plcPathParts := strings.Split(policy.Path, "/") - if len(pathParts) != len(plcPathParts) { + length := len(pathParts) + if len(plcPathParts) <= length { + length = len(plcPathParts) + } else { + // if policy path is longer than the node path then it can't be a match continue } match := true - for i, part := range pathParts { - if part == "." || pathParts[i] == "." || part == pathParts[i] { + for i := 0; i < length; i++ { + pathPart := pathParts[i] + plcPathPart := plcPathParts[i] + if pathPart == "." || plcPathPart == "." || pathPart == plcPathPart { continue } match = false @@ -46,6 +74,9 @@ func (npc NodePolicyCollection) GetMergedPolicyForNode(path string) (NodePolicy, return result, fmt.Errorf("failed to merge policies: %w", err) } } + + // set the path in the result + result.Path = path return result, nil } @@ -92,7 +123,7 @@ func sortPolicies(policies []NodePolicy) { } } - // If parts have same precedence then jusr return the order + // If parts have same precedence then just return the order return i < j }) } diff --git a/common/mapq/types/policy_collection_test.go b/common/mapq/types/policy_collection_test.go new file mode 100644 index 00000000000..90653d0e640 --- /dev/null +++ b/common/mapq/types/policy_collection_test.go @@ -0,0 +1,185 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package types + +import ( + "testing" + + "github.com/google/go-cmp/cmp" +) + +func TestGetMergedPolicyforNode(t *testing.T) { + npc := NewNodePolicyCollection([]NodePolicy{ + { + Path: "*", // level 0 + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"timer", "transfer"}, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 100}, + }, + { + Path: "*/.", // level 1 default policy + SplitPolicy: &SplitPolicy{}, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, + }, + { + Path: "*/timer", // level 1 timer node + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"deletehistory"}, + }, + }, + { + Path: "*/./.", // level 2 default policy + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"domain1"}, + }, + }, + { + Path: "*/timer/deletehistory", // level 2 deletehistory timer node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 5}, + }, + { + Path: "*/././*", // level 3 default catch-all node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 1000}, + }, + { + Path: "*/././domain1", // level 3 domain node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 42}, + }, + }) + + tests := []struct { + name string + path string + want NodePolicy + }{ + { + name: "root node", + path: "*", + want: NodePolicy{ + Path: "*", + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"timer", "transfer"}, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 100}, + }, + }, + { + name: "level 1 catch-all node", + path: "*/*", + want: NodePolicy{ + Path: "*/*", + SplitPolicy: &SplitPolicy{}, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, + }, + }, + { + name: "level 1 timer node", + path: "*/timer", + want: NodePolicy{ + Path: "*/timer", + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"deletehistory"}, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, + }, + }, + { + name: "level 2 catch all node", + path: "*/./*", + want: NodePolicy{ + Path: "*/./*", + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"domain1"}, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, + }, + }, + { + name: "level 2 deletehistory timer node", + path: "*/timer/deletehistory", + want: NodePolicy{ + Path: "*/timer/deletehistory", + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 5}, + }, + }, + { + name: "level 3 catch-all node", + path: "*/*/*/*", + want: NodePolicy{ + Path: "*/*/*/*", + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 1000}, + }, + }, + { + name: "level 3 domain1 node for activitytimeout", + path: "*/timer/activitytimeout/domain1", + want: NodePolicy{ + Path: "*/timer/activitytimeout/domain1", + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 42}, + }, + }, + { + name: "level 3 domain1 node for childwfcompleted", + path: "*/transfer/childwfcompleted/domain1", + want: NodePolicy{ + Path: "*/transfer/childwfcompleted/domain1", + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 42}, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + got, err := npc.GetMergedPolicyForNode(tc.path) + if err != nil { + t.Fatalf("failed to get merged policy for node %v: %v", tc.path, err) + } + + if diff := cmp.Diff(tc.want, got); diff != "" { + t.Fatalf("Policy mismatch (-want +got):\n%s", diff) + } + }) + } +} diff --git a/docs/images/mapq_tenant_burst_visualization.png b/docs/images/mapq_tenant_burst_visualization.png new file mode 100644 index 0000000000000000000000000000000000000000..3a4a796ca16cc4336d595ed282971b8cf51e29cb GIT binary patch literal 264321 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≶gubaXN@XhL&$fh5njtgFs#w;JuNOEwH^j#Rkz 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%0DI6ph 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 empty path represents the root node at level 0 -// - "/." matches with all nodes at level 1 -// - "/*" represents the catch-all node at level 1 -// - "/xyz" represents a specific node at level 1 whose partition value is xyz -// - "/./." matches with all nodes at level 2 -// - "/xyz/." matches with all nodes at level 2 whose parent is xyz node -// - "xyz/*" represents the catch-all node at level 2 whose parent is xyz node -// - "xyz/abc" represents a specific node at level 2 whose level 2 attribute value is abc and parent is xyz node -func WithPolicies(policies []types.NodePolicy) Options { - return func(c *ClientImpl) { - c.policies = policies - } -} - -func New(opts ...Options) (types.Client, error) { - c := &ClientImpl{} - - for _, opt := range opts { - opt(c) - } - - if c.persister == nil { - return nil, fmt.Errorf("persister is required. Use WithPersister option to set it") - } - - if c.consumerFactory == nil { - return nil, fmt.Errorf("consumer factory is required. Use WithConsumerFactory option to set it") - } - - tree, err := tree.New(c.partitions, c.policies, c.persister) - if err != nil { - return nil, err - } - - c.tree = tree - fmt.Printf("tree: \n%s\n", c.tree) - - return c, nil -} diff --git a/playground/mapq/tree/queue_tree.go b/playground/mapq/tree/queue_tree.go deleted file mode 100644 index afa674ac66d..00000000000 --- a/playground/mapq/tree/queue_tree.go +++ /dev/null @@ -1,196 +0,0 @@ -package tree - -import ( - "context" - "fmt" - "strings" - - "github.com/uber/cadence/playground/mapq/types" -) - -type QueueTree struct { - partitions []string - policyCol types.NodePolicyCollection - persister types.Persister - root *QueueTreeNode -} - -type QueueTreeNode struct { - // The path to the node - Path string - - // The attribute key used to create this node by parent - AttributeKey string - - // The attribute value used to create this node by parent - AttributeVal any - - // The policy for this node. It's merged policy from all policies that match this node - NodePolicy types.NodePolicy - - // Children by attribute key - // "*" is a special key that represents the default/fallback child queue - // If there's no children then the node is considered leaf node - Children map[any]*QueueTreeNode -} - -func New(partitions []string, policies []types.NodePolicy, p types.Persister) (*QueueTree, error) { - t := &QueueTree{ - partitions: partitions, - policyCol: types.NewNodePolicyCollection(policies), - persister: p, - } - - err := t.init() - return t, err -} - -func (t *QueueTree) init() error { - rootPolicy, err := t.policyCol.GetMergedPolicyForNode("") - if err != nil { - return fmt.Errorf("failed to get root policy: %w", err) - } - t.root = &QueueTreeNode{ - Path: "", // Root node - Children: map[any]*QueueTreeNode{}, - NodePolicy: rootPolicy, - } - - // Create tree nodes with catch-all nodes at all levels and predefined splits. - // There will be len(partitions) levels in the tree. - err = t.addCatchAllNodes(t.root) - if err != nil { - return fmt.Errorf("failed to initialize tree: %w", err) - } - - return nil -} - -func (t *QueueTree) addCatchAllNodes(n *QueueTreeNode) error { - nodeLevel := nodeLevel(n.Path) - if nodeLevel == len(t.partitions) { // reached the leaf level - return nil - } - - if n.Children["*"] != nil { // catch-all node already exists - return nil - } - - nextLevelAttrKey := t.partitions[nodeLevel] - ch, err := n.addChild(nextLevelAttrKey, "*", t.policyCol, t.partitions) - if err != nil { - return err - } - - return t.addCatchAllNodes(ch) -} - -func (t *QueueTree) String() string { - var sb strings.Builder - var nodes []*QueueTreeNode - nodes = append(nodes, t.root) - for len(nodes) > 0 { - node := nodes[0] - nodes = nodes[1:] - sb.WriteString(node.String()) - sb.WriteString("\n") - for _, child := range node.Children { - nodes = append(nodes, child) - } - } - - return sb.String() -} - -func (t *QueueTree) Enqueue(ctx context.Context, items []types.Item) error { - if t.root == nil { - return fmt.Errorf("root node is nil") - } - - var itemsToPersist []types.ItemToPersist - for _, item := range items { - itemToPersist, err := t.root.Enqueue(ctx, item, nil, map[string]any{}) - if err != nil { - return err - } - itemsToPersist = append(itemsToPersist, itemToPersist) - } - - return t.persister.Persist(ctx, itemsToPersist) -} - -func (n *QueueTreeNode) String() string { - return fmt.Sprintf("QueueTreeNode{Path: %q, AttributeKey: %v, AttributeVal: %v, NodePolicy: %s, Num Children: %d}", n.Path, n.AttributeKey, n.AttributeVal, n.NodePolicy, len(n.Children)) -} - -func (n *QueueTreeNode) addChild(attrKey string, attrVal any, policyCol types.NodePolicyCollection, partitions []string) (*QueueTreeNode, error) { - path := fmt.Sprintf("%s/%v", n.Path, attrVal) - policy, err := policyCol.GetMergedPolicyForNode(path) - if err != nil { - return nil, err - } - ch := &QueueTreeNode{ - Path: path, - AttributeKey: attrKey, - AttributeVal: attrVal, - NodePolicy: policy, - Children: map[any]*QueueTreeNode{}, - } - - if err := ch.addPredefinedSplits(policyCol, partitions); err != nil { - return nil, err - } - - n.Children[attrVal] = ch - return ch, nil -} - -func (n *QueueTreeNode) addPredefinedSplits(policyCol types.NodePolicyCollection, partitions []string) error { - if n.NodePolicy.SplitPolicy == nil { - return nil - } - - for _, split := range n.NodePolicy.SplitPolicy.PredefinedSplits { - path := fmt.Sprintf("%s/%v", n.Path, split) - level := nodeLevel(path) - if level >= len(partitions) { - return fmt.Errorf("predefined split is defined for a leaf level node %s", n.Path) - } - - attrKey := partitions[level] - _, err := n.addChild(attrKey, split, policyCol, partitions) - if err != nil { - return err - } - } - - return nil -} - -func (n *QueueTreeNode) Enqueue(ctx context.Context, item types.Item, partitions []string, partitionMap map[string]any) (types.ItemToPersist, error) { - // Add the attribute value to queueNodePathParts - attr := item.GetAttribute(n.AttributeKey) - partitions = append(partitions, n.AttributeKey) - partitionMap[n.AttributeKey] = item.GetAttribute(n.AttributeKey) - - // If there are no children then this is a leaf node - if len(n.Children) == 0 { - return types.NewItemToPersist(item, types.NewItemPartitions(partitions, partitionMap)), nil - } - - child, ok := n.Children[attr] - if !ok { - // TODO: thread safety missing - child, ok = n.Children["*"] - if !ok { - // catch-all nodes are created during initalization so this should never happen - return nil, fmt.Errorf("no child found for attribute %v in node %v", attr, n.Path) - } - } - - return child.Enqueue(ctx, item, partitions, partitionMap) -} - -func nodeLevel(path string) int { - return len(strings.Split(path, "/")) - 1 -} diff --git a/playground/mapq/types/consumer.go b/playground/mapq/types/consumer.go deleted file mode 100644 index 62c51d41859..00000000000 --- a/playground/mapq/types/consumer.go +++ /dev/null @@ -1,13 +0,0 @@ -package types - -import "context" - -type ConsumerFactory interface { - New(context.Context, ItemPartitions) Consumer -} - -type Consumer interface { - Start(context.Context) error - Stop(context.Context) error - Process(context.Context, Item) error -} From d66474d757c8031f675a0d14742dd8c6068ec626 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Wed, 12 Jun 2024 15:22:01 -0700 Subject: [PATCH 3/9] write unit tests --- common/log/tag/values.go | 3 + common/mapq/README.md | 2 + common/mapq/client_impl.go | 45 +++- common/mapq/client_impl_test.go | 109 ++++++++ common/mapq/example_test.go | 10 + common/mapq/mapq.go | 28 ++- common/mapq/tree/queue_tree.go | 45 +++- common/mapq/tree/queue_tree_node.go | 31 ++- common/mapq/tree/queue_tree_test.go | 263 ++++++++++++++++++++ common/mapq/types/client.go | 10 - common/mapq/types/consumer.go | 2 + common/mapq/types/consumer_mock.go | 151 +++++++++++ common/mapq/types/item.go | 5 + common/mapq/types/item_mock.go | 256 +++++++++++++++++++ common/mapq/types/item_test.go | 58 +++++ common/mapq/types/offsets.go | 27 ++ common/mapq/types/persister.go | 33 +++ common/mapq/types/persister_mock.go | 100 ++++++++ common/mapq/types/policy_collection_test.go | 143 +++++++---- 19 files changed, 1227 insertions(+), 94 deletions(-) create mode 100644 common/mapq/client_impl_test.go create mode 100644 common/mapq/tree/queue_tree_test.go create mode 100644 common/mapq/types/consumer_mock.go create mode 100644 common/mapq/types/item_mock.go create mode 100644 common/mapq/types/offsets.go create mode 100644 common/mapq/types/persister.go create mode 100644 common/mapq/types/persister_mock.go diff --git a/common/log/tag/values.go b/common/log/tag/values.go index 54c1a26aa50..13e08dd9e2f 100644 --- a/common/log/tag/values.go +++ b/common/log/tag/values.go @@ -135,6 +135,9 @@ var ( ComponentPinotVisibilityManager = component("pinot-visibility-manager") ComponentAsyncWFConsumptionManager = component("async-wf-consumption-manager") ComponentGlobalRatelimiter = component("global-ratelimiter") + ComponentMapQ = component("mapq") + ComponentMapQTree = component("mapq-tree") + ComponentMapQTreeNode = component("mapq-tree-node") ) // Pre-defined values for TagSysLifecycle diff --git a/common/mapq/README.md b/common/mapq/README.md index 3cf27c5f10a..98d713b89d3 100644 --- a/common/mapq/README.md +++ b/common/mapq/README.md @@ -1,5 +1,7 @@ # MAPQ: Multi-tenant, Auto-partitioned, Persistent Queue +NOTE: This component is WIP. + ## Overview MAPQ is a new queue framework (introduced in June 2024), aiming to unify Cadence's internal task/request queues. The existing implementations for these applications are cumbersome and maintenance-heavy, with significant overlap and limited extensibility. diff --git a/common/mapq/client_impl.go b/common/mapq/client_impl.go index 572f4713e6e..9f684d1742a 100644 --- a/common/mapq/client_impl.go +++ b/common/mapq/client_impl.go @@ -24,12 +24,18 @@ package mapq import ( "context" + "errors" + "fmt" + "github.com/uber/cadence/common/log" "github.com/uber/cadence/common/mapq/tree" "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" ) -type ClientImpl struct { +type clientImpl struct { + logger log.Logger + scope metrics.Scope persister types.Persister consumerFactory types.ConsumerFactory tree *tree.QueueTree @@ -37,30 +43,43 @@ type ClientImpl struct { policies []types.NodePolicy } -func (c *ClientImpl) Start(ctx context.Context) error { - return c.tree.Start(ctx) +func (c *clientImpl) Start(ctx context.Context) error { + c.logger.Info("Starting MAPQ client") + err := c.tree.Start(ctx) + if err != nil { + return err + } + + c.logger.Info("Started MAPQ client") + return nil } -func (c *ClientImpl) Stop(ctx context.Context) error { +func (c *clientImpl) Stop(ctx context.Context) error { + c.logger.Info("Stopping MAPQ client") + // Stop the tree which will stop the dispatchers if err := c.tree.Stop(ctx); err != nil { - return err + return fmt.Errorf("failed to stop tree: %w", err) } // stop the consumer factory which will stop the consumers - return c.consumerFactory.Stop(ctx) + err := c.consumerFactory.Stop(ctx) + if err != nil { + return fmt.Errorf("failed to stop consumer factory: %w", err) + } + + c.logger.Info("Stopped MAPQ client") + return nil } -func (c *ClientImpl) Enqueue(ctx context.Context, items []types.Item) error { +func (c *clientImpl) Enqueue(ctx context.Context, items []types.Item) error { return c.tree.Enqueue(ctx, items) } -func (c *ClientImpl) Ack(context.Context, types.Item) error { - // TODO: implement - return nil +func (c *clientImpl) Ack(context.Context, types.Item) error { + return errors.New("not implemented") } -func (c *ClientImpl) Nack(context.Context, types.Item) error { - // TODO: implement - return nil +func (c *clientImpl) Nack(context.Context, types.Item) error { + return errors.New("not implemented") } diff --git a/common/mapq/client_impl_test.go b/common/mapq/client_impl_test.go new file mode 100644 index 00000000000..1df5470e0a3 --- /dev/null +++ b/common/mapq/client_impl_test.go @@ -0,0 +1,109 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package mapq + +import ( + "context" + "testing" + + "github.com/golang/mock/gomock" + "go.uber.org/goleak" + + "github.com/uber/cadence/common/log/testlogger" + "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" +) + +func TestNew(t *testing.T) { + ctrl := gomock.NewController(t) + + tests := []struct { + name string + opts []Options + wantErr bool + }{ + { + name: "success", + opts: []Options{ + WithPersister(types.NewMockPersister(ctrl)), + WithConsumerFactory(types.NewMockConsumerFactory(ctrl)), + }, + }, + { + name: "no persister", + wantErr: true, + opts: []Options{ + WithConsumerFactory(types.NewMockConsumerFactory(ctrl)), + }, + }, + { + name: "no consumer factoru", + wantErr: true, + opts: []Options{ + WithPersister(types.NewMockPersister(ctrl)), + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + logger := testlogger.New(t) + scope := metrics.NoopScope(0) + cl, err := New(logger, scope, tc.opts...) + if (err != nil) != tc.wantErr { + t.Errorf("New() error: %v, wantErr: %v", err, tc.wantErr) + } + + if err != nil { + return + } + + _, ok := cl.(*clientImpl) + if !ok { + t.Errorf("New() = %T, want *clientImpl", cl) + } + }) + } +} + +func TestStartStop(t *testing.T) { + defer goleak.VerifyNone(t) + ctrl := gomock.NewController(t) + consumerFactory := types.NewMockConsumerFactory(ctrl) + consumer := types.NewMockConsumer(ctrl) + consumerFactory.EXPECT().Stop(gomock.Any()).Return(nil).Times(1) + consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(1) + opts := []Options{ + WithPersister(types.NewMockPersister(ctrl)), + WithConsumerFactory(consumerFactory), + } + logger := testlogger.New(t) + scope := metrics.NoopScope(0) + cl, err := New(logger, scope, opts...) + if err != nil { + t.Fatalf("New() error: %v", err) + } + + cl.Start(context.Background()) + defer cl.Stop(context.Background()) +} diff --git a/common/mapq/example_test.go b/common/mapq/example_test.go index aac9e4b8709..79922a1dbd5 100644 --- a/common/mapq/example_test.go +++ b/common/mapq/example_test.go @@ -28,13 +28,23 @@ import ( "testing" "time" + "github.com/uber/cadence/common/log/loggerimpl" "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" "github.com/uber/cadence/common/persistence" ) func TestExample(t *testing.T) { persister := &InMemoryPersister{} + + logger, err := loggerimpl.NewDevelopment() + if err != nil { + panic(err) + } + scope := metrics.NoopScope(0) cl, err := New( + logger, + scope, WithConsumerFactory(&NoOpConsumerFactory{}), WithPersister(persister), WithPartitions([]string{"type", "sub-type", "domain"}), diff --git a/common/mapq/mapq.go b/common/mapq/mapq.go index 72e2f98e64d..919085e060a 100644 --- a/common/mapq/mapq.go +++ b/common/mapq/mapq.go @@ -25,20 +25,23 @@ package mapq import ( "fmt" + "github.com/uber/cadence/common/log" + "github.com/uber/cadence/common/log/tag" "github.com/uber/cadence/common/mapq/tree" "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" ) -type Options func(*ClientImpl) +type Options func(*clientImpl) func WithPersister(p types.Persister) Options { - return func(c *ClientImpl) { + return func(c *clientImpl) { c.persister = p } } func WithConsumerFactory(cf types.ConsumerFactory) Options { - return func(c *ClientImpl) { + return func(c *clientImpl) { c.consumerFactory = cf } } @@ -46,7 +49,7 @@ func WithConsumerFactory(cf types.ConsumerFactory) Options { // WithPartitions sets the partition keys for each level. // MAPQ creates a tree with depth = len(partitions) func WithPartitions(partitions []string) Options { - return func(c *ClientImpl) { + return func(c *clientImpl) { c.partitions = partitions } } @@ -64,13 +67,16 @@ func WithPartitions(partitions []string) Options { // - "*/xyz/*" represents the catch-all node at level 2 whose parent is xyz node // - "*/xyz/abc" represents a specific node at level 2 whose level 2 attribute value is abc and parent is xyz node func WithPolicies(policies []types.NodePolicy) Options { - return func(c *ClientImpl) { + return func(c *clientImpl) { c.policies = policies } } -func New(opts ...Options) (types.Client, error) { - c := &ClientImpl{} +func New(logger log.Logger, scope metrics.Scope, opts ...Options) (types.Client, error) { + c := &clientImpl{ + logger: logger.WithTags(tag.ComponentMapQ), + scope: scope, + } for _, opt := range opts { opt(c) @@ -84,13 +90,17 @@ func New(opts ...Options) (types.Client, error) { return nil, fmt.Errorf("consumer factory is required. Use WithConsumerFactory option to set it") } - tree, err := tree.New(c.partitions, c.policies, c.persister, c.consumerFactory) + tree, err := tree.New(logger, scope, c.partitions, c.policies, c.persister, c.consumerFactory) if err != nil { return nil, err } c.tree = tree - fmt.Printf("tree: \n%s\n", c.tree) + c.logger.Info("MAPQ client created", + tag.Dynamic("partitions", c.partitions), + tag.Dynamic("policies", c.policies), + tag.Dynamic("tree", c.tree.String()), + ) return c, nil } diff --git a/common/mapq/tree/queue_tree.go b/common/mapq/tree/queue_tree.go index 5223518285e..34f5ae95df0 100644 --- a/common/mapq/tree/queue_tree.go +++ b/common/mapq/tree/queue_tree.go @@ -27,11 +27,17 @@ import ( "fmt" "strings" + "github.com/uber/cadence/common/log" + "github.com/uber/cadence/common/log/tag" "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" ) // QueueTree is a tree structure that represents the queue structure for MAPQ type QueueTree struct { + originalLogger log.Logger + logger log.Logger + scope metrics.Scope partitions []string policyCol types.NodePolicyCollection persister types.Persister @@ -40,30 +46,49 @@ type QueueTree struct { } func New( + logger log.Logger, + scope metrics.Scope, partitions []string, policies []types.NodePolicy, persister types.Persister, consumerFactory types.ConsumerFactory, ) (*QueueTree, error) { t := &QueueTree{ + originalLogger: logger, + logger: logger.WithTags(tag.ComponentMapQTree), + scope: scope, partitions: partitions, policyCol: types.NewNodePolicyCollection(policies), persister: persister, consumerFactory: consumerFactory, } - err := t.init() - return t, err + return t, t.init() } // Start the dispatchers for all leaf nodes func (t *QueueTree) Start(ctx context.Context) error { - return t.root.Start(ctx, t.consumerFactory, nil, map[string]any{}) + t.logger.Info("Starting MAPQ tree", tag.Dynamic("tree", t.String())) + err := t.root.Start(ctx, t.consumerFactory, nil, map[string]any{}) + if err != nil { + return fmt.Errorf("failed to start root node: %w", err) + } + + t.logger.Info("Started MAPQ tree") + return nil } // Stop the dispatchers for all leaf nodes func (t *QueueTree) Stop(ctx context.Context) error { - return t.root.Stop(ctx) + t.logger.Info("Stopping MAPQ tree", tag.Dynamic("tree", t.String())) + + err := t.root.Stop(ctx) + if err != nil { + return fmt.Errorf("failed to stop nodes: %w", err) + } + + t.logger.Info("Stopped MAPQ tree") + return nil } func (t *QueueTree) String() string { @@ -106,21 +131,21 @@ func (t *QueueTree) init() error { Children: map[any]*QueueTreeNode{}, } - if err := t.root.Init(t.policyCol, t.partitions); err != nil { - return fmt.Errorf("failed to initialize root node: %w", err) + if err := t.root.Init(t.originalLogger, t.scope, t.policyCol, t.partitions); err != nil { + return fmt.Errorf("failed to initialize node: %w", err) } // Create tree nodes with catch-all nodes at all levels and predefined splits. // There will be len(partitions) levels in the tree. - err := t.addCatchAllNodes(t.root) + err := t.constructInitialNodes(t.root) if err != nil { - return fmt.Errorf("failed to initialize tree: %w", err) + return fmt.Errorf("failed to construct initial tree: %w", err) } return nil } -func (t *QueueTree) addCatchAllNodes(n *QueueTreeNode) error { +func (t *QueueTree) constructInitialNodes(n *QueueTreeNode) error { nodeLevel := nodeLevel(n.Path) if nodeLevel == len(t.partitions) { // reached the leaf level return nil @@ -136,7 +161,7 @@ func (t *QueueTree) addCatchAllNodes(n *QueueTreeNode) error { } for _, child := range n.Children { - if err := t.addCatchAllNodes(child); err != nil { + if err := t.constructInitialNodes(child); err != nil { return err } } diff --git a/common/mapq/tree/queue_tree_node.go b/common/mapq/tree/queue_tree_node.go index 462f9f984f4..520fdad5481 100644 --- a/common/mapq/tree/queue_tree_node.go +++ b/common/mapq/tree/queue_tree_node.go @@ -26,12 +26,22 @@ import ( "context" "fmt" + "github.com/uber/cadence/common/log" + "github.com/uber/cadence/common/log/tag" "github.com/uber/cadence/common/mapq/dispatcher" "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" ) // QueueTreeNode represents a node in the queue tree type QueueTreeNode struct { + // originalLogger is the logger passed in during creation. No node specific tags are added to this logger and it should be passed to child nodes + originalLogger log.Logger + + // logger is the logger for this node. It has the node specific tags added to it + logger log.Logger + scope metrics.Scope + // The path to the node Path string @@ -63,8 +73,11 @@ func (n *QueueTreeNode) Start( partitions []string, partitionMap map[string]any, ) error { + n.logger.Info("Starting node", tag.Dynamic("node", n.String())) + // If there are no children then this is a leaf node if len(n.Children) == 0 { + n.logger.Info("Creating consumer and starting a new dispatcher for leaf node") c, err := consumerFactory.New(types.NewItemPartitions(partitions, partitionMap)) if err != nil { return err @@ -81,24 +94,28 @@ func (n *QueueTreeNode) Start( partitionMap[n.PartitionKey] = child.AttributeVal err := child.Start(ctx, consumerFactory, partitions, partitionMap) if err != nil { - return err + return fmt.Errorf("failed to start child %s: %w", child.Path, err) } } + n.logger.Info("Started node") return nil } func (n *QueueTreeNode) Stop(ctx context.Context) error { - if n.Dispatcher != nil { + n.logger.Info("Stopping node") + + if n.Dispatcher != nil { // leaf node return n.Dispatcher.Stop(ctx) } for _, child := range n.Children { if err := child.Stop(ctx); err != nil { - return err + return fmt.Errorf("failed to stop child %s: %w", child.Path, err) } } + n.logger.Info("Stopped node") return nil } @@ -136,7 +153,11 @@ func (n *QueueTreeNode) String() string { return fmt.Sprintf("QueueTreeNode{Path: %q, AttributeKey: %v, AttributeVal: %v, NodePolicy: %s, Num Children: %d}", n.Path, n.AttributeKey, n.AttributeVal, n.NodePolicy, len(n.Children)) } -func (n *QueueTreeNode) Init(policyCol types.NodePolicyCollection, partitions []string) error { +func (n *QueueTreeNode) Init(logger log.Logger, scope metrics.Scope, policyCol types.NodePolicyCollection, partitions []string) error { + n.originalLogger = logger + n.logger = logger.WithTags(tag.ComponentMapQTreeNode, tag.Dynamic("path", n.Path)) + n.scope = scope + // Get the merged policy for this node policy, err := policyCol.GetMergedPolicyForNode(n.Path) if err != nil { @@ -163,7 +184,7 @@ func (n *QueueTreeNode) addChild(attrVal any, policyCol types.NodePolicyCollecti Children: map[any]*QueueTreeNode{}, } - if err := ch.Init(policyCol, partitions); err != nil { + if err := ch.Init(n.originalLogger, n.scope, policyCol, partitions); err != nil { return nil, err } diff --git a/common/mapq/tree/queue_tree_test.go b/common/mapq/tree/queue_tree_test.go new file mode 100644 index 00000000000..bc10198999b --- /dev/null +++ b/common/mapq/tree/queue_tree_test.go @@ -0,0 +1,263 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package tree + +import ( + "context" + "testing" + + "github.com/golang/mock/gomock" + "github.com/google/go-cmp/cmp" + "go.uber.org/goleak" + + "github.com/uber/cadence/common/log/testlogger" + "github.com/uber/cadence/common/mapq/types" + "github.com/uber/cadence/common/metrics" +) + +func TestStartStop(t *testing.T) { + defer goleak.VerifyNone(t) + ctrl := gomock.NewController(t) + consumerFactory := types.NewMockConsumerFactory(ctrl) + consumer := types.NewMockConsumer(ctrl) + // 7 consumers are created in the test tree for each leaf node defined by getTestPolicies() + // - */timer/deletehistory/* + // - */timer/*/domain1 + // - */timer/*/* + // - */transfer/*/domain1 + // - */transfer/*/* + // - */*/*/domain1 + // - */*/*/* + consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(7) + + tree, err := New( + testlogger.New(t), + metrics.NoopScope(0), + []string{"type", "sub-type", "domain"}, + getTestPolicies(), + types.NewMockPersister(ctrl), + consumerFactory, + ) + if err != nil { + t.Fatalf("failed to create queue tree: %v", err) + } + + if err := tree.Start(context.Background()); err != nil { + t.Fatalf("failed to start queue tree: %v", err) + } + + if err := tree.Stop(context.Background()); err != nil { + t.Fatalf("failed to stop queue tree: %v", err) + } +} + +func TestEnqueue(t *testing.T) { + tests := []struct { + name string + policies []types.NodePolicy + leafNodeCount int + items []types.Item + persistErr error + wantItemsToPersist []types.ItemToPersist + wantErr bool + }{ + { + name: "success", + policies: getTestPolicies(), + leafNodeCount: 7, + items: []types.Item{ + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain1"}), + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain2"}), + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain3"}), + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain1"}), + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain2"}), + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain3"}), + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain1"}), + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain2"}), + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain3"}), + }, + wantItemsToPersist: func() []types.ItemToPersist { + result := make([]types.ItemToPersist, 9) + partitions := []string{"type", "sub-type", "domain"} + + // deletehistory timers should go to the leaf node "*/timer/deletehistory/*" + result[0] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain1"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "*"}), + ) + result[1] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain2"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "*"}), + ) + result[2] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "domain3"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "deletehistory", "domain": "*"}), + ) + + // activitytimeout timers either goes to domain1 specific leaf node ("*/timer/*/domain1") or the catch all leaf node "*/timer/*/*" + result[3] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain1"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "*", "domain": "domain1"}), + ) + result[4] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain2"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "*", "domain": "*"}), + ) + result[5] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "timer", "sub-type": "activitytimeout", "domain": "domain3"}), + types.NewItemPartitions(partitions, map[string]any{"type": "timer", "sub-type": "*", "domain": "*"}), + ) + + // transfer tasks either goes to domain1 specific leaf node ("*/transfer/*/domain1") or the catch all leaf node "*/transfer/*/*" + result[6] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain1"}), + types.NewItemPartitions(partitions, map[string]any{"type": "transfer", "sub-type": "*", "domain": "domain1"}), + ) + result[7] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain2"}), + types.NewItemPartitions(partitions, map[string]any{"type": "transfer", "sub-type": "*", "domain": "*"}), + ) + result[8] = types.NewItemToPersist( + mockItem(t, map[string]any{"type": "transfer", "sub-type": "activity", "domain": "domain3"}), + types.NewItemPartitions(partitions, map[string]any{"type": "transfer", "sub-type": "*", "domain": "*"}), + ) + + return result + }(), + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + + defer goleak.VerifyNone(t) + ctrl := gomock.NewController(t) + consumerFactory := types.NewMockConsumerFactory(ctrl) + consumer := types.NewMockConsumer(ctrl) + // consumers will be creeted for each leaf node + consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(tc.leafNodeCount) + + var gotItemsToPersist []types.ItemToPersist + persister := types.NewMockPersister(ctrl) + persister.EXPECT().Persist(gomock.Any(), gomock.Any()).DoAndReturn(func(ctx context.Context, itemsToPersist []types.ItemToPersist) error { + gotItemsToPersist = itemsToPersist + return tc.persistErr + }) + + tree, err := New( + testlogger.New(t), + metrics.NoopScope(0), + []string{"type", "sub-type", "domain"}, + getTestPolicies(), + persister, + consumerFactory, + ) + if err != nil { + t.Fatalf("failed to create queue tree: %v", err) + } + + if err := tree.Start(context.Background()); err != nil { + t.Fatalf("failed to start queue tree: %v", err) + } + defer tree.Stop(context.Background()) + + err = tree.Enqueue(context.Background(), tc.items) + if (err != nil) != tc.wantErr { + t.Errorf("Enqueue() error: %v, wantErr: %v", err, tc.wantErr) + } + + if err != nil { + return + } + + if got, want := len(gotItemsToPersist), len(tc.wantItemsToPersist); got != want { + t.Fatalf("Items to persist count mismatch: got=%v, want=%v", got, want) + } + + for i := range gotItemsToPersist { + if diff := cmp.Diff(tc.wantItemsToPersist[i].String(), gotItemsToPersist[i].String()); diff != "" { + t.Errorf("%d - Item to persist mismatch (-want +got):\n%s", i, diff) + } + } + }) + } +} + +func mockItem(t *testing.T, attributes map[string]any) types.Item { + item := types.NewMockItem(gomock.NewController(t)) + item.EXPECT().GetAttribute(gomock.Any()).DoAndReturn(func(key string) any { + return attributes[key] + }).AnyTimes() + item.EXPECT().String().Return("mockitem").AnyTimes() + return item +} + +func getTestPolicies() []types.NodePolicy { + return []types.NodePolicy{ + { + Path: "*", // level 0 + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{"timer", "transfer"}, + }, + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 100}, + }, + { + Path: "*/.", // level 1 default policy + SplitPolicy: &types.SplitPolicy{}, + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 50}, + }, + { + Path: "*/timer", // level 1 timer node + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{"deletehistory"}, + }, + }, + { + Path: "*/./.", // level 2 default policy + SplitPolicy: &types.SplitPolicy{ + PredefinedSplits: []any{"domain1"}, + }, + }, + { + Path: "*/timer/deletehistory", // level 2 deletehistory timer node policy + SplitPolicy: &types.SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 5}, + }, + { + Path: "*/././*", // level 3 default catch-all node policy + SplitPolicy: &types.SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 1000}, + }, + { + Path: "*/././domain1", // level 3 domain node policy + SplitPolicy: &types.SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &types.DispatchPolicy{DispatchRPS: 42}, + }, + } +} diff --git a/common/mapq/types/client.go b/common/mapq/types/client.go index 4990aa17ee9..de3400d2293 100644 --- a/common/mapq/types/client.go +++ b/common/mapq/types/client.go @@ -53,13 +53,3 @@ type Client interface { // - persist the last committed offsets Stop(context.Context) error } - -type Persister interface { - Persist(ctx context.Context, items []ItemToPersist) error - GetOffsets(ctx context.Context) (*Offsets, error) - CommitOffsets(ctx context.Context, offsets *Offsets) error -} - -type Offsets struct { - // TODO: define offsets -} diff --git a/common/mapq/types/consumer.go b/common/mapq/types/consumer.go index c2d699d9132..6bc4dc24235 100644 --- a/common/mapq/types/consumer.go +++ b/common/mapq/types/consumer.go @@ -24,6 +24,8 @@ package types import "context" +//go:generate mockgen -package $GOPACKAGE -source $GOFILE -destination consumer_mock.go -package types github.com/uber/cadence/common/mapq/types ConsumerFactor,Consumer + type ConsumerFactory interface { // New creates a new consumer with the given partitions or returns an existing consumer // to process the given partitions diff --git a/common/mapq/types/consumer_mock.go b/common/mapq/types/consumer_mock.go new file mode 100644 index 00000000000..f45a7de7a49 --- /dev/null +++ b/common/mapq/types/consumer_mock.go @@ -0,0 +1,151 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// Code generated by MockGen. DO NOT EDIT. +// Source: consumer.go + +// Package types is a generated GoMock package. +package types + +import ( + context "context" + reflect "reflect" + + gomock "github.com/golang/mock/gomock" +) + +// MockConsumerFactory is a mock of ConsumerFactory interface. +type MockConsumerFactory struct { + ctrl *gomock.Controller + recorder *MockConsumerFactoryMockRecorder +} + +// MockConsumerFactoryMockRecorder is the mock recorder for MockConsumerFactory. +type MockConsumerFactoryMockRecorder struct { + mock *MockConsumerFactory +} + +// NewMockConsumerFactory creates a new mock instance. +func NewMockConsumerFactory(ctrl *gomock.Controller) *MockConsumerFactory { + mock := &MockConsumerFactory{ctrl: ctrl} + mock.recorder = &MockConsumerFactoryMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockConsumerFactory) EXPECT() *MockConsumerFactoryMockRecorder { + return m.recorder +} + +// New mocks base method. +func (m *MockConsumerFactory) New(arg0 ItemPartitions) (Consumer, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "New", arg0) + ret0, _ := ret[0].(Consumer) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// New indicates an expected call of New. +func (mr *MockConsumerFactoryMockRecorder) New(arg0 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "New", reflect.TypeOf((*MockConsumerFactory)(nil).New), arg0) +} + +// Stop mocks base method. +func (m *MockConsumerFactory) Stop(arg0 context.Context) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Stop", arg0) + ret0, _ := ret[0].(error) + return ret0 +} + +// Stop indicates an expected call of Stop. +func (mr *MockConsumerFactoryMockRecorder) Stop(arg0 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockConsumerFactory)(nil).Stop), arg0) +} + +// MockConsumer is a mock of Consumer interface. +type MockConsumer struct { + ctrl *gomock.Controller + recorder *MockConsumerMockRecorder +} + +// MockConsumerMockRecorder is the mock recorder for MockConsumer. +type MockConsumerMockRecorder struct { + mock *MockConsumer +} + +// NewMockConsumer creates a new mock instance. +func NewMockConsumer(ctrl *gomock.Controller) *MockConsumer { + mock := &MockConsumer{ctrl: ctrl} + mock.recorder = &MockConsumerMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockConsumer) EXPECT() *MockConsumerMockRecorder { + return m.recorder +} + +// Process mocks base method. +func (m *MockConsumer) Process(arg0 context.Context, arg1 Item) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Process", arg0, arg1) + ret0, _ := ret[0].(error) + return ret0 +} + +// Process indicates an expected call of Process. +func (mr *MockConsumerMockRecorder) Process(arg0, arg1 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Process", reflect.TypeOf((*MockConsumer)(nil).Process), arg0, arg1) +} + +// Start mocks base method. +func (m *MockConsumer) Start(arg0 context.Context) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Start", arg0) + ret0, _ := ret[0].(error) + return ret0 +} + +// Start indicates an expected call of Start. +func (mr *MockConsumerMockRecorder) Start(arg0 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockConsumer)(nil).Start), arg0) +} + +// Stop mocks base method. +func (m *MockConsumer) Stop(arg0 context.Context) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Stop", arg0) + ret0, _ := ret[0].(error) + return ret0 +} + +// Stop indicates an expected call of Stop. +func (mr *MockConsumerMockRecorder) Stop(arg0 interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockConsumer)(nil).Stop), arg0) +} diff --git a/common/mapq/types/item.go b/common/mapq/types/item.go index 7abee969a7f..f2c18bc30a9 100644 --- a/common/mapq/types/item.go +++ b/common/mapq/types/item.go @@ -22,6 +22,8 @@ package types +//go:generate mockgen -package $GOPACKAGE -source $GOFILE -destination item_mock.go -package types github.com/uber/cadence/common/mapq/types Item + import "fmt" type Item interface { @@ -61,6 +63,9 @@ type ItemPartitions interface { // ItemPartitions.GetPartitionValue("sub-type") returns "*" // GetPartitionValue(key string) any + + // String returns a human friendly representation of the item for logging purposes + String() string } func NewItemPartitions(partitions []string, partitionMap map[string]any) ItemPartitions { diff --git a/common/mapq/types/item_mock.go b/common/mapq/types/item_mock.go new file mode 100644 index 00000000000..1d54875834d --- /dev/null +++ b/common/mapq/types/item_mock.go @@ -0,0 +1,256 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// Code generated by MockGen. DO NOT EDIT. +// Source: item.go + +// Package types is a generated GoMock package. +package types + +import ( + reflect "reflect" + + gomock "github.com/golang/mock/gomock" +) + +// MockItem is a mock of Item interface. +type MockItem struct { + ctrl *gomock.Controller + recorder *MockItemMockRecorder +} + +// MockItemMockRecorder is the mock recorder for MockItem. +type MockItemMockRecorder struct { + mock *MockItem +} + +// NewMockItem creates a new mock instance. +func NewMockItem(ctrl *gomock.Controller) *MockItem { + mock := &MockItem{ctrl: ctrl} + mock.recorder = &MockItemMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockItem) EXPECT() *MockItemMockRecorder { + return m.recorder +} + +// GetAttribute mocks base method. +func (m *MockItem) GetAttribute(key string) any { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetAttribute", key) + ret0, _ := ret[0].(any) + return ret0 +} + +// GetAttribute indicates an expected call of GetAttribute. +func (mr *MockItemMockRecorder) GetAttribute(key interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAttribute", reflect.TypeOf((*MockItem)(nil).GetAttribute), key) +} + +// Offset mocks base method. +func (m *MockItem) Offset() int64 { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Offset") + ret0, _ := ret[0].(int64) + return ret0 +} + +// Offset indicates an expected call of Offset. +func (mr *MockItemMockRecorder) Offset() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Offset", reflect.TypeOf((*MockItem)(nil).Offset)) +} + +// String mocks base method. +func (m *MockItem) String() string { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "String") + ret0, _ := ret[0].(string) + return ret0 +} + +// String indicates an expected call of String. +func (mr *MockItemMockRecorder) String() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "String", reflect.TypeOf((*MockItem)(nil).String)) +} + +// MockItemToPersist is a mock of ItemToPersist interface. +type MockItemToPersist struct { + ctrl *gomock.Controller + recorder *MockItemToPersistMockRecorder +} + +// MockItemToPersistMockRecorder is the mock recorder for MockItemToPersist. +type MockItemToPersistMockRecorder struct { + mock *MockItemToPersist +} + +// NewMockItemToPersist creates a new mock instance. +func NewMockItemToPersist(ctrl *gomock.Controller) *MockItemToPersist { + mock := &MockItemToPersist{ctrl: ctrl} + mock.recorder = &MockItemToPersistMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockItemToPersist) EXPECT() *MockItemToPersistMockRecorder { + return m.recorder +} + +// GetAttribute mocks base method. +func (m *MockItemToPersist) GetAttribute(key string) any { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetAttribute", key) + ret0, _ := ret[0].(any) + return ret0 +} + +// GetAttribute indicates an expected call of GetAttribute. +func (mr *MockItemToPersistMockRecorder) GetAttribute(key interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAttribute", reflect.TypeOf((*MockItemToPersist)(nil).GetAttribute), key) +} + +// GetPartitionValue mocks base method. +func (m *MockItemToPersist) GetPartitionValue(key string) any { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetPartitionValue", key) + ret0, _ := ret[0].(any) + return ret0 +} + +// GetPartitionValue indicates an expected call of GetPartitionValue. +func (mr *MockItemToPersistMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitionValue), key) +} + +// GetPartitions mocks base method. +func (m *MockItemToPersist) GetPartitions() []string { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetPartitions") + ret0, _ := ret[0].([]string) + return ret0 +} + +// GetPartitions indicates an expected call of GetPartitions. +func (mr *MockItemToPersistMockRecorder) GetPartitions() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitions", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitions)) +} + +// Offset mocks base method. +func (m *MockItemToPersist) Offset() int64 { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Offset") + ret0, _ := ret[0].(int64) + return ret0 +} + +// Offset indicates an expected call of Offset. +func (mr *MockItemToPersistMockRecorder) Offset() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Offset", reflect.TypeOf((*MockItemToPersist)(nil).Offset)) +} + +// String mocks base method. +func (m *MockItemToPersist) String() string { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "String") + ret0, _ := ret[0].(string) + return ret0 +} + +// String indicates an expected call of String. +func (mr *MockItemToPersistMockRecorder) String() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "String", reflect.TypeOf((*MockItemToPersist)(nil).String)) +} + +// MockItemPartitions is a mock of ItemPartitions interface. +type MockItemPartitions struct { + ctrl *gomock.Controller + recorder *MockItemPartitionsMockRecorder +} + +// MockItemPartitionsMockRecorder is the mock recorder for MockItemPartitions. +type MockItemPartitionsMockRecorder struct { + mock *MockItemPartitions +} + +// NewMockItemPartitions creates a new mock instance. +func NewMockItemPartitions(ctrl *gomock.Controller) *MockItemPartitions { + mock := &MockItemPartitions{ctrl: ctrl} + mock.recorder = &MockItemPartitionsMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockItemPartitions) EXPECT() *MockItemPartitionsMockRecorder { + return m.recorder +} + +// GetPartitionValue mocks base method. +func (m *MockItemPartitions) GetPartitionValue(key string) any { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetPartitionValue", key) + ret0, _ := ret[0].(any) + return ret0 +} + +// GetPartitionValue indicates an expected call of GetPartitionValue. +func (mr *MockItemPartitionsMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitionValue), key) +} + +// GetPartitions mocks base method. +func (m *MockItemPartitions) GetPartitions() []string { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetPartitions") + ret0, _ := ret[0].([]string) + return ret0 +} + +// GetPartitions indicates an expected call of GetPartitions. +func (mr *MockItemPartitionsMockRecorder) GetPartitions() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitions", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitions)) +} + +// String mocks base method. +func (m *MockItemPartitions) String() string { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "String") + ret0, _ := ret[0].(string) + return ret0 +} + +// String indicates an expected call of String. +func (mr *MockItemPartitionsMockRecorder) String() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "String", reflect.TypeOf((*MockItemPartitions)(nil).String)) +} diff --git a/common/mapq/types/item_test.go b/common/mapq/types/item_test.go index 98f15cbd5a3..940a959b88d 100644 --- a/common/mapq/types/item_test.go +++ b/common/mapq/types/item_test.go @@ -21,3 +21,61 @@ // SOFTWARE. package types + +import ( + "strings" + "testing" + + "github.com/golang/mock/gomock" + "github.com/google/go-cmp/cmp" +) + +func TestNewItemToPersist(t *testing.T) { + ctrl := gomock.NewController(t) + item := NewMockItem(ctrl) + itemStr := "###item###" + item.EXPECT().String().Return(itemStr).Times(1) + item.EXPECT().GetAttribute("attr1").Return("value1").Times(1) + item.EXPECT().GetAttribute("attr2").Return("value2").Times(1) + + partitions := []string{"attr1", "attr2"} + itemPartitions := NewItemPartitions( + partitions, + map[string]any{ + "attr1": "*", + "attr2": "value2", + }, + ) + + itemToPersist := NewItemToPersist(item, itemPartitions) + if itemToPersist == nil { + t.Fatal("itemToPersist is nil") + } + + if got := itemToPersist.GetAttribute("attr1"); got != "value1" { + t.Errorf("itemToPersist.GetAttribute(attr1) = %v, want %v", got, "value1") + } + if got := itemToPersist.GetAttribute("attr2"); got != "value2" { + t.Errorf("itemToPersist.GetAttribute(attr2) = %v, want %v", got, "value2") + } + + gotPartitions := itemToPersist.GetPartitions() + if diff := cmp.Diff(partitions, gotPartitions); diff != "" { + t.Fatalf("Partitions mismatch (-want +got):\n%s", diff) + } + if got := itemToPersist.GetPartitionValue("attr1"); got != "*" { + t.Errorf("itemToPersist.GetPartitionValue(attr1) = %v, want %v", got, "*") + } + if got := itemToPersist.GetPartitionValue("attr2"); got != "value2" { + t.Errorf("itemToPersist.GetPartitionValue(attr2) = %v, want %v", got, "value2") + } + + itemToPersistStr := itemToPersist.String() + itemPartitionsStr := itemPartitions.String() + if !strings.Contains(itemToPersistStr, itemPartitionsStr) { + t.Errorf("itemToPersist.String() = %v, want to contain %v", itemToPersistStr, itemPartitionsStr) + } + if !strings.Contains(itemToPersistStr, itemStr) { + t.Errorf("itemToPersist.String() = %v, want to contain %v", itemToPersistStr, itemStr) + } +} diff --git a/common/mapq/types/offsets.go b/common/mapq/types/offsets.go new file mode 100644 index 00000000000..b8482de5e80 --- /dev/null +++ b/common/mapq/types/offsets.go @@ -0,0 +1,27 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package types + +type Offsets struct { + // TODO: define offsets +} diff --git a/common/mapq/types/persister.go b/common/mapq/types/persister.go new file mode 100644 index 00000000000..4cbcd1e21e3 --- /dev/null +++ b/common/mapq/types/persister.go @@ -0,0 +1,33 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package types + +import "context" + +//go:generate mockgen -package $GOPACKAGE -source $GOFILE -destination persister_mock.go -package types github.com/uber/cadence/common/mapq/types Persister + +type Persister interface { + Persist(ctx context.Context, items []ItemToPersist) error + GetOffsets(ctx context.Context) (*Offsets, error) + CommitOffsets(ctx context.Context, offsets *Offsets) error +} diff --git a/common/mapq/types/persister_mock.go b/common/mapq/types/persister_mock.go new file mode 100644 index 00000000000..f97b0e90e1e --- /dev/null +++ b/common/mapq/types/persister_mock.go @@ -0,0 +1,100 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// Code generated by MockGen. DO NOT EDIT. +// Source: persister.go + +// Package types is a generated GoMock package. +package types + +import ( + context "context" + reflect "reflect" + + gomock "github.com/golang/mock/gomock" +) + +// MockPersister is a mock of Persister interface. +type MockPersister struct { + ctrl *gomock.Controller + recorder *MockPersisterMockRecorder +} + +// MockPersisterMockRecorder is the mock recorder for MockPersister. +type MockPersisterMockRecorder struct { + mock *MockPersister +} + +// NewMockPersister creates a new mock instance. +func NewMockPersister(ctrl *gomock.Controller) *MockPersister { + mock := &MockPersister{ctrl: ctrl} + mock.recorder = &MockPersisterMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockPersister) EXPECT() *MockPersisterMockRecorder { + return m.recorder +} + +// CommitOffsets mocks base method. +func (m *MockPersister) CommitOffsets(ctx context.Context, offsets *Offsets) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "CommitOffsets", ctx, offsets) + ret0, _ := ret[0].(error) + return ret0 +} + +// CommitOffsets indicates an expected call of CommitOffsets. +func (mr *MockPersisterMockRecorder) CommitOffsets(ctx, offsets interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CommitOffsets", reflect.TypeOf((*MockPersister)(nil).CommitOffsets), ctx, offsets) +} + +// GetOffsets mocks base method. +func (m *MockPersister) GetOffsets(ctx context.Context) (*Offsets, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetOffsets", ctx) + ret0, _ := ret[0].(*Offsets) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetOffsets indicates an expected call of GetOffsets. +func (mr *MockPersisterMockRecorder) GetOffsets(ctx interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetOffsets", reflect.TypeOf((*MockPersister)(nil).GetOffsets), ctx) +} + +// Persist mocks base method. +func (m *MockPersister) Persist(ctx context.Context, items []ItemToPersist) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Persist", ctx, items) + ret0, _ := ret[0].(error) + return ret0 +} + +// Persist indicates an expected call of Persist. +func (mr *MockPersisterMockRecorder) Persist(ctx, items interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Persist", reflect.TypeOf((*MockPersister)(nil).Persist), ctx, items) +} diff --git a/common/mapq/types/policy_collection_test.go b/common/mapq/types/policy_collection_test.go index 90653d0e640..893708fa4e5 100644 --- a/common/mapq/types/policy_collection_test.go +++ b/common/mapq/types/policy_collection_test.go @@ -23,59 +23,45 @@ package types import ( + "math/rand" "testing" + "time" "github.com/google/go-cmp/cmp" ) +const ( + fuzzCustomSeed = 0 +) + +func TestGetPolicies(t *testing.T) { + policies := getTestPolicies() + wantOrderedPaths := make([]string, len(policies)) + for i, p := range policies { + wantOrderedPaths[i] = p.Path + } + + shufflePolicies(policies) + npc := NewNodePolicyCollection(policies) + + gotPolicies := npc.GetPolicies() + if len(gotPolicies) != len(policies) { + t.Fatalf("Policies count mismatch, got %v, want %v", len(gotPolicies), len(policies)) + } + + gotPaths := make([]string, len(policies)) + for i, p := range gotPolicies { + t.Logf("%d - %s", i, p) + gotPaths[i] = p.Path + } + + if diff := cmp.Diff(wantOrderedPaths, gotPaths); diff != "" { + t.Fatalf("Policies not sorted as expected (-want +got):\n%s", diff) + } +} + func TestGetMergedPolicyforNode(t *testing.T) { - npc := NewNodePolicyCollection([]NodePolicy{ - { - Path: "*", // level 0 - SplitPolicy: &SplitPolicy{ - PredefinedSplits: []any{"timer", "transfer"}, - }, - DispatchPolicy: &DispatchPolicy{DispatchRPS: 100}, - }, - { - Path: "*/.", // level 1 default policy - SplitPolicy: &SplitPolicy{}, - DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, - }, - { - Path: "*/timer", // level 1 timer node - SplitPolicy: &SplitPolicy{ - PredefinedSplits: []any{"deletehistory"}, - }, - }, - { - Path: "*/./.", // level 2 default policy - SplitPolicy: &SplitPolicy{ - PredefinedSplits: []any{"domain1"}, - }, - }, - { - Path: "*/timer/deletehistory", // level 2 deletehistory timer node policy - SplitPolicy: &SplitPolicy{ - Disabled: true, - }, - DispatchPolicy: &DispatchPolicy{DispatchRPS: 5}, - }, - { - Path: "*/././*", // level 3 default catch-all node policy - SplitPolicy: &SplitPolicy{ - Disabled: true, - }, - DispatchPolicy: &DispatchPolicy{DispatchRPS: 1000}, - }, - { - Path: "*/././domain1", // level 3 domain node policy - SplitPolicy: &SplitPolicy{ - Disabled: true, - }, - DispatchPolicy: &DispatchPolicy{DispatchRPS: 42}, - }, - }) + npc := NewNodePolicyCollection(getTestPolicies()) tests := []struct { name string @@ -183,3 +169,66 @@ func TestGetMergedPolicyforNode(t *testing.T) { }) } } + +// getTestPolicies returns a set of test policies for testing +// It intentionally returns the policies in a sorted order to test the sorting logic +func getTestPolicies() []NodePolicy { + return []NodePolicy{ + { + Path: "*", // level 0 + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"timer", "transfer"}, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 100}, + }, + { + Path: "*/.", // level 1 default policy + SplitPolicy: &SplitPolicy{}, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 50}, + }, + { + Path: "*/timer", // level 1 timer node + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"deletehistory"}, + }, + }, + { + Path: "*/./.", // level 2 default policy + SplitPolicy: &SplitPolicy{ + PredefinedSplits: []any{"domain1"}, + }, + }, + { + Path: "*/timer/deletehistory", // level 2 deletehistory timer node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 5}, + }, + { + Path: "*/././*", // level 3 default catch-all node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 1000}, + }, + { + Path: "*/././domain1", // level 3 domain node policy + SplitPolicy: &SplitPolicy{ + Disabled: true, + }, + DispatchPolicy: &DispatchPolicy{DispatchRPS: 42}, + }, + } +} + +func shufflePolicies(policies []NodePolicy) { + seed := time.Now().UnixNano() + if fuzzCustomSeed != 0 { + seed = fuzzCustomSeed // override seed to test a specific scenario + } + rng := rand.New(rand.NewSource(seed)) + rng.Shuffle(len(policies), func(i, j int) { + policies[i], policies[j] = policies[j], policies[i] + }) +} From 5b96d0ed063525e4412351515935be7aba47f435 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Wed, 12 Jun 2024 17:15:30 -0700 Subject: [PATCH 4/9] documentation updates --- common/mapq/README.md | 20 +++++++- common/mapq/client_impl.go | 2 +- common/mapq/dispatcher/dispatcher_test.go | 45 ++++++++++++++++++ common/mapq/example_test.go | 10 ++-- common/mapq/tree/queue_tree.go | 8 ++-- common/mapq/tree/queue_tree_test.go | 24 ++++++---- common/mapq/types/client.go | 2 +- common/mapq/types/persister.go | 5 ++ common/mapq/types/persister_mock.go | 15 ++++++ docs/images/mapq_dispatch_flow.png | Bin 0 -> 132549 bytes docs/images/mapq_enqueue_flow.png | Bin 0 -> 233230 bytes docs/images/mapq_initialization.png | Bin 0 -> 235964 bytes ...> mapq_partitioned_queue_tree_example.png} | Bin 13 files changed, 113 insertions(+), 18 deletions(-) create mode 100644 common/mapq/dispatcher/dispatcher_test.go create mode 100644 docs/images/mapq_dispatch_flow.png create mode 100644 docs/images/mapq_enqueue_flow.png create mode 100644 docs/images/mapq_initialization.png rename docs/images/{mapq_tenant_burst_visualization.png => mapq_partitioned_queue_tree_example.png} (100%) diff --git a/common/mapq/README.md b/common/mapq/README.md index 98d713b89d3..2d6ec55ad93 100644 --- a/common/mapq/README.md +++ b/common/mapq/README.md @@ -44,4 +44,22 @@ The routing key per level, partitioning/departitioning strategy, RPS limits and Once initialized the tree will have a minimal number of nodes provided in the policy but it respects policies for not-yet-existing nodes. Since MAPQ supports auto-partitioning there will be new nodes added/removed and it accepts providing policies for such nodes. For example, you might want to partition by domain only for bursty domains and allocate them specific RPS. -![MAPQ tenant burst visualization](../../docs/images/mapq_tenant_burst_visualization.png) + +#### Tree structure with policies + +![MAPQ partitioned queue tree](../../docs/images/mapq_partitioned_queue_tree_example.png) + + +#### Initialization and Object Hierarcy + +![MAPQ initialization](../../docs/images/mapq_initialization.png) + + +#### Enqueue Flow + +![MAPQ enqueue flow](../../docs/images/mapq_enqueue_flow.png) + + +#### Dispatch Flow + +![MAPQ enqueue flow](../../docs/images/mapq_enqueue_flow.png) diff --git a/common/mapq/client_impl.go b/common/mapq/client_impl.go index 9f684d1742a..e3d436cf21d 100644 --- a/common/mapq/client_impl.go +++ b/common/mapq/client_impl.go @@ -72,7 +72,7 @@ func (c *clientImpl) Stop(ctx context.Context) error { return nil } -func (c *clientImpl) Enqueue(ctx context.Context, items []types.Item) error { +func (c *clientImpl) Enqueue(ctx context.Context, items []types.Item) ([]types.ItemToPersist, error) { return c.tree.Enqueue(ctx, items) } diff --git a/common/mapq/dispatcher/dispatcher_test.go b/common/mapq/dispatcher/dispatcher_test.go new file mode 100644 index 00000000000..c28a290630c --- /dev/null +++ b/common/mapq/dispatcher/dispatcher_test.go @@ -0,0 +1,45 @@ +// The MIT License (MIT) + +// Copyright (c) 2017-2020 Uber Technologies Inc. + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package dispatcher + +import ( + "context" + "testing" + + "go.uber.org/goleak" +) + +func TestStartStop(t *testing.T) { + defer goleak.VerifyNone(t) + + d := New(nil) + err := d.Start(context.TODO()) + if err != nil { + t.Fatalf("Start() failed: %v", err) + } + + err = d.Stop(context.TODO()) + if err != nil { + t.Fatalf("Stop() failed: %v", err) + } +} diff --git a/common/mapq/example_test.go b/common/mapq/example_test.go index 79922a1dbd5..f32e5bf8e76 100644 --- a/common/mapq/example_test.go +++ b/common/mapq/example_test.go @@ -139,7 +139,7 @@ func TestExample(t *testing.T) { } defer cl.Stop(ctx) - err = cl.Enqueue(context.Background(), []types.Item{ + _, err = cl.Enqueue(context.Background(), []types.Item{ newTimerItem("d1", time.Now(), persistence.TaskTypeDecisionTimeout), newTimerItem("d1", time.Now(), persistence.TaskTypeActivityTimeout), newTimerItem("d1", time.Now(), persistence.TaskTypeUserTimer), @@ -154,7 +154,7 @@ func TestExample(t *testing.T) { panic(fmt.Errorf("expected 5 items in persister, got %v", len(persister.items))) } - err = cl.Enqueue(context.Background(), []types.Item{ + _, err = cl.Enqueue(context.Background(), []types.Item{ newTransferItem("d2", 1, persistence.TransferTaskTypeDecisionTask), newTransferItem("d2", 2, persistence.TransferTaskTypeActivityTask), newTransferItem("d2", 3, persistence.TransferTaskTypeStartChildExecution), @@ -168,7 +168,6 @@ func TestExample(t *testing.T) { if len(persister.items) != 10 { panic(fmt.Errorf("expected 10 items in persister, got %v", len(persister.items))) } - } var _ types.ConsumerFactory = (*NoOpConsumerFactory)(nil) @@ -227,6 +226,11 @@ func (p *InMemoryPersister) CommitOffsets(ctx context.Context, offsets *types.Of return nil } +// Fetch(ctx context.Context, partitions ItemPartitions, pageInfo PageInfo) ([]Item, error) +func (p *InMemoryPersister) Fetch(ctx context.Context, partitions types.ItemPartitions, pageInfo types.PageInfo) ([]types.Item, error) { + return nil, nil +} + func newTimerItem(domain string, t time.Time, timerType int) types.Item { switch timerType { case persistence.TaskTypeDecisionTimeout: diff --git a/common/mapq/tree/queue_tree.go b/common/mapq/tree/queue_tree.go index 34f5ae95df0..2933f1f0c9d 100644 --- a/common/mapq/tree/queue_tree.go +++ b/common/mapq/tree/queue_tree.go @@ -108,21 +108,21 @@ func (t *QueueTree) String() string { return sb.String() } -func (t *QueueTree) Enqueue(ctx context.Context, items []types.Item) error { +func (t *QueueTree) Enqueue(ctx context.Context, items []types.Item) ([]types.ItemToPersist, error) { if t.root == nil { - return fmt.Errorf("root node is nil") + return nil, fmt.Errorf("root node is nil") } var itemsToPersist []types.ItemToPersist for _, item := range items { itemToPersist, err := t.root.Enqueue(ctx, item, nil, map[string]any{}) if err != nil { - return err + return nil, err } itemsToPersist = append(itemsToPersist, itemToPersist) } - return t.persister.Persist(ctx, itemsToPersist) + return itemsToPersist, t.persister.Persist(ctx, itemsToPersist) } func (t *QueueTree) init() error { diff --git a/common/mapq/tree/queue_tree_test.go b/common/mapq/tree/queue_tree_test.go index bc10198999b..2a03444c328 100644 --- a/common/mapq/tree/queue_tree_test.go +++ b/common/mapq/tree/queue_tree_test.go @@ -157,10 +157,10 @@ func TestEnqueue(t *testing.T) { // consumers will be creeted for each leaf node consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(tc.leafNodeCount) - var gotItemsToPersist []types.ItemToPersist + var gotItemsToPersistByPersister []types.ItemToPersist persister := types.NewMockPersister(ctrl) persister.EXPECT().Persist(gomock.Any(), gomock.Any()).DoAndReturn(func(ctx context.Context, itemsToPersist []types.ItemToPersist) error { - gotItemsToPersist = itemsToPersist + gotItemsToPersistByPersister = itemsToPersist return tc.persistErr }) @@ -181,7 +181,7 @@ func TestEnqueue(t *testing.T) { } defer tree.Stop(context.Background()) - err = tree.Enqueue(context.Background(), tc.items) + returnedItemsToPersist, err := tree.Enqueue(context.Background(), tc.items) if (err != nil) != tc.wantErr { t.Errorf("Enqueue() error: %v, wantErr: %v", err, tc.wantErr) } @@ -190,13 +190,21 @@ func TestEnqueue(t *testing.T) { return } - if got, want := len(gotItemsToPersist), len(tc.wantItemsToPersist); got != want { - t.Fatalf("Items to persist count mismatch: got=%v, want=%v", got, want) + if got, want := len(gotItemsToPersistByPersister), len(tc.wantItemsToPersist); got != want { + t.Fatalf("Items to persist count mismatch: gotItemsToPersistByPersister=%v, want=%v", got, want) } - for i := range gotItemsToPersist { - if diff := cmp.Diff(tc.wantItemsToPersist[i].String(), gotItemsToPersist[i].String()); diff != "" { - t.Errorf("%d - Item to persist mismatch (-want +got):\n%s", i, diff) + if got, want := len(returnedItemsToPersist), len(tc.wantItemsToPersist); got != want { + t.Fatalf("Items to persist count mismatch: returnedItemsToPersist=%v, want=%v", got, want) + } + + for i := range gotItemsToPersistByPersister { + if diff := cmp.Diff(tc.wantItemsToPersist[i].String(), gotItemsToPersistByPersister[i].String()); diff != "" { + t.Errorf("%d - gotItemsToPersistByPersister mismatch (-want +got):\n%s", i, diff) + } + + if diff := cmp.Diff(tc.wantItemsToPersist[i].String(), returnedItemsToPersist[i].String()); diff != "" { + t.Errorf("%d - returnedItemsToPersist mismatch (-want +got):\n%s", i, diff) } } }) diff --git a/common/mapq/types/client.go b/common/mapq/types/client.go index de3400d2293..b1499d83bba 100644 --- a/common/mapq/types/client.go +++ b/common/mapq/types/client.go @@ -28,7 +28,7 @@ import ( type Client interface { // Enqueue adds an item to the queue - Enqueue(context.Context, []Item) error + Enqueue(context.Context, []Item) ([]ItemToPersist, error) // Ack marks the item as processed. // Out of order acks are supported. diff --git a/common/mapq/types/persister.go b/common/mapq/types/persister.go index 4cbcd1e21e3..d19e88ec495 100644 --- a/common/mapq/types/persister.go +++ b/common/mapq/types/persister.go @@ -30,4 +30,9 @@ type Persister interface { Persist(ctx context.Context, items []ItemToPersist) error GetOffsets(ctx context.Context) (*Offsets, error) CommitOffsets(ctx context.Context, offsets *Offsets) error + Fetch(ctx context.Context, partitions ItemPartitions, pageInfo PageInfo) ([]Item, error) +} + +type PageInfo struct { + // TODO: define ack levels, page size, etc. } diff --git a/common/mapq/types/persister_mock.go b/common/mapq/types/persister_mock.go index f97b0e90e1e..500e0e13441 100644 --- a/common/mapq/types/persister_mock.go +++ b/common/mapq/types/persister_mock.go @@ -70,6 +70,21 @@ func (mr *MockPersisterMockRecorder) CommitOffsets(ctx, offsets interface{}) *go return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CommitOffsets", reflect.TypeOf((*MockPersister)(nil).CommitOffsets), ctx, offsets) } +// Fetch mocks base method. +func (m *MockPersister) Fetch(ctx context.Context, partitions ItemPartitions, pageInfo PageInfo) ([]Item, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Fetch", ctx, partitions, pageInfo) + ret0, _ := ret[0].([]Item) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// Fetch indicates an expected call of Fetch. +func (mr *MockPersisterMockRecorder) Fetch(ctx, partitions, pageInfo interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Fetch", reflect.TypeOf((*MockPersister)(nil).Fetch), ctx, partitions, pageInfo) +} + // GetOffsets mocks base method. func (m *MockPersister) GetOffsets(ctx context.Context) (*Offsets, error) { m.ctrl.T.Helper() diff --git a/docs/images/mapq_dispatch_flow.png b/docs/images/mapq_dispatch_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..387aca3a0c8d53ab36a40dc7d2f7be91b7227d1b GIT binary patch literal 132549 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ΜR?J|2gs~(k5#lJ7Uv; zKaT)guAZwahh*Gt;!SvU@r{-rb4+UTBf4VC^fl+E23)T6w{zSpzRs5dq^L0pw%Iz( z!g`?}=76-^2T0511$>LNoAC|0t77v`N|_I;%6t1Z8km?OKd-O3*0aIz zgi3!~e@+|Q!(FWB8r*C;4+v|;{fD)Z-*>^N5FWHCJ6S+?+491Q=CEZZ3x2PqUPKSS zniEMH?hR_F+Yl#%u1IUZ^|36x8l7F7R-eapC0Gk8IwwLm*;d)MUj7N+x7bPB^*-gW z11@k%G^H0~%z?8x?t!pfZZp&p$>MH$QC-4pgt%>IhdW+d zElj?J95&^B8!L(Xue-M-FwL3! z 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 n-GaK5Dw?3`6I!NTA# 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

Q( z6T)+I;TZm7yrJ}W;-SFpfd@s42%UIW#Nqx>B})hR%W1n3pe^$mRZqYb1j%|Ku9!w(41SpQ+b$Ly^F?FrmO z0|k;_cUI{fiDa+4`Sd-v_sy9L_~HLr1j}-?FPcfxc{o?>99R2K}1GG?J# zqpe*i$Qt-hVq`S_{V#i0I zs-1@YQ=j#IY^eG!2jE$K{+9DO+_C?*! z>6ddR;zh!$!2dUfqCnp6W2bWU*g1-~4V)k3e}AIAiS|W5se{i1r>P<&3ytgvip*W= z$WfCxr)m`jD=mMOMCCUoTQlEFZBOxYRF}DPD6tKwV!1Mea!(6g^S^6U475MZmIx1! z(Tti%XTUJLKWV~#6QRTe;i!YCu0839Jchqc+aGJAD%1ULuX%86uUT#HoH{e)#-x4A zVs7McwR%eo8B4ZNQP}8+dJcQG9^PRcHVBc48pwHmE9xoR&&yD=_noyy+w>k~#vP?Y z>1$ApETXLnf8z||_Smr(t9&@fILC(|T=P7r;a)|#PO*3dV2`Uvo&_$u4(77*Zh)y6 zb^XPOQ}k-4P7f9c*tSNI4Ht?2BupcK6v-IWwo8z`JLbG)Adfi=w1_F-*i4@X^aMYU zR2=|S`2}FF$CvxFW&;NZc6*EU0AQjBFcl3kWW?!#{*w~+Zhm&fts^+%9g>d-peWm@ z0B=Crlq0h#=mnO&oiQIOFF1@tc6OW}SPZO?TM@v_L@`b*p41v=w}D>45hVB&B*s;1 zUEYB1PpRyTr+se}^{4YQx&cgQ7$nopKw&NYnEQCOh*>^?f11TyJ-HH~jz=H1+|a)p zZ~JldP6j}6Rvq^cM}w4!v~^ry?<3+aKEO~o&V#Jqh3WuY@_m4DZ+M6uf><7`=?07x z_G=^a6Q~~;!~o0Jfd2jhkSFS(*Ut>_@kM~L0Vw}wJ4g?zgI*TrySpq; zbUJj{D@7v{=69C*#vMf6{)x(&KjIuZe)LQmlZraR*!fI-U{ zVdv@!b=jVbM{-Qa<~R+%j2s4C$ne^`N42TxX?xBTXDrL7+jP$$`T)|f*TIU}KGH!u zB7q=XqTUHy9{=H>3wC7Pwcj~C9qO=S;aA%Y!1xZ6gByHnygqJ@G_rPC@Mux9-of4R z-5ZGgIz;ruYuAOHyp`j0XkA{#Pm0O!r+hmg$yi>vSfyBD{gNwi!#S%9#4k>Dk02S% zX`3sPm5ZAz@jvRsr{T4$J2wV)I(IBme(a7%giZ`RU$Dm9_;*(qewDC2zAcr#DGNyC zECDw#oP`trT$+VxLy)`&fKvxC1d_GOEC&FbUha3)n6Am@NNp%qizB9+U#}6nmRFg%~ z%T|zyIhGC%DKB(+Ka6p#GmGB!dz=>g>K@s>Md(d6h{ zF0=F@P)TBbi)Y zFw}jAn!E=TmBpZPcr4pssFB}S@Zz!3!A}6Sw{NIKc3&)P;W`;2n?uWZUv-lIVuF0g za4RY%{ZfjMjxBV28*u8psIWdgRkH?(D%~(oaVNoE+3q7?y`*im03dXXy~hT$WkNqa zhApRhk>JDF-`gdE3uxCp_mxP#81RjZF7~DnLFAd#w5-HB3&kB|I`(Y=s=G^ip~vCg z2{ou-e$NAbrGt}eK1n?;lE`jEoW_+{8S@I}C*taUH}t_q*~_&ALMJ^wWKE+b{PwHQ zS72!Yxcol*4CLIp^_TkUaHs80cL%GW0l$bxpCO5mMsw?b0IJgUh+T`|b!ocn#q={| z!&(6k{~3VvR>I3g^`_GctARCEt#;hhEjknUQP*+A!uU0d6SQjs+Z(Ov28fT4ZTgZ4 zRVWb9`Dr!jIv7H8ZdQJq+plPV(Xy^C8QCly4cac$Ub!&7KPPXZ%|Y@3c3>J2-|ry~ z$o`tr{t)DStvoz|Cgpk7BjGqr7>dH2-8rub&|?jsEZ;Q%FlEPkBo*O{o9Gm_EIvxM zW|PG3yZ}z1h5i6Nv7h*r!eS#AO+l}dt-_P=M$nc%Rf$i{KLkj2tTiibv#Lr7UM`YD zbX*5NtIr-~`$sj3GL-Z`&umu!O`l%E5sgnP6FjAB8QfEP-V$gX3P(=n%cJw#Y7J?2 zF9TbE4_HlvBagD_pAEqP@dA?O#O}~$Wtgde*i8;6{XjV22nk+63Wj7P! z4`s5cg0_znV`hQDO?XP)bYjrDI>`s(_U$#$t^#DCA zi~CL&ANP>TcdeB|$Ca(gKx_s{udN7hj1IkGDz-7H+!P8FVi4qCtB!}Av z2;CEbNK0C&$?H&^UPSuhslq^xWg3%DUSl$kYYR#CmAboUlc-Qv;O-S&!4z;!lAbIA z-tNJAUS&dF*6~KS$h0c@Vt?c8KIRh7;r6k9ab8aj4K!c7W~>fkzNC=F46wXk2P);esdSh4KY&CVP2vO}ent zUArgs&YN-UOrj)y>c$9}d5Eq;0V|uVmgp^m2*T)*2SWhP-jd{;YOP!_uCtA-oE0Dd zod&_4c=|(|(VHaIo@OD!ialxz%b+2>(^VuR)2ILW6GndY1((?mT%PQ$Qu{M4R9O_n zs{zWKxTUY5w^qZGHnYSS@7#Xk#z4Fpgx2jjOCR3uxyHK=XzUzBZ{7b$7!B&|e%=z- z=#y^`iYHRkS@6OEewX3~P4oy0cXQA~HZy%ugCj1egy^lXp9%SU;-dBqdpla z5}bO=A467(A?sMD&MtSHcOe0EMS%anD;8Y#5WBW}1puR1w=cMGD0Fm`i%L*@EIW{` ztMfVB(@nlaNU5e@ z3_4!YOYrwA(vw6)T{wZ!j4v9Fv+Jafs%A(}bFCJZGO+P}MrCo>AejzhjdUt?67#Y1 zD*9F}V))WsE8*e?2fGg9iDfKK5CqR5JTfcTFh9k$Lab#vXzfb}OGmGRG8t6>BG!zt zsiN=S#Kj(Z*SG<@${HeqHNC?|9R!=S>F&qQ*G>&CGXHseMY~nlr+>XsyV>>w?I3h{H3f28|!eNs82C^Cq+ znuBC&tjD^O*sFnug?JhB(+NDEuT6O#r)$&e09w@ncbF3OyJA8z8%5%_W zM-J%j2)#od7cS!yoSV^E$DXqqx9`Jd-qIE8MY1?C59a4o&Z0b|XtwmgAS3QA2*Z70 z)cTd#jf5qaF|8qZLpSm@a^4-(-#bbcqtKs>{tRGsX z*6my*_dT4^0Mcab1n&|hsB{kCd}@}GOexSUgPRp=Z?*puvrw z^JPWjYWIhx4>|;2acrX*47YdE_=^1#SGx20$qOIy{i|J*HVq_o72Bm3z#*Z5WP+q{ zD(-nY=QG)m2>P|CtcR0Iz$v(u4tsA_1pF3hz_KbjQU?f(^+c8I6T8yPQOFuL0S8Jz zwCZ>B*rl_%BrklNz>07{>pn67sLY4}POf%f?hKveim z#^=>&9asx2Rg$Pm5HxG?0N3}MGHKE1kvQm2HJb#ODUwrpKpf?%f0+CAOF4j7KKWp4 zwNEsW$jb_FhwGe|sQ}vkLsU`>Xay6np9CyIcL3Elw$OL#LHo+im`Bnk{h4&22`e0c zswdakRR&X)vlQ*ePkVu*IHl3stl!Az@gZhKFWm~LMXT{4c`(zVqA02-vG%fumoo&N_XPnhqynI-qAAS97HR|L z)hGyLWpn@w#9a_LkP@MUfsjH2P;*_~i{`q2x)7Sni>y|(;O9*1Kz(8*?qp0 z$=fx)Ea6OQ_z8vM)2A=ewTm_HNZh^iz+@1#f80hA=PuNN#%S%8F_rO*!A-K$t|bTI z#9TKd^E&rx5TayIyJP#5D_O%B@JN}#oAW8lCY*AjEF(^3*`~Rj$Ixa{0U<5e?Y&_< zco6t9KWwZKfg`?5_;uWWtC}G9Gr0BXg58-=9b-a>C6Zx-_KW+O&FgK}Thahe{`Ew9 zD}=I;>`(p|6ezYxBqWoh9}`hn`x`zCfBytk+kEq}Oo%7xNEdpgjM(jmDwShddrGJp zP6@tY9G{7e0Ryl;p>nU~d*623-l<`bo;0%*L8VWR3B>a>(iKI$Mxoj(=0#7@-=iRv zx)Qa_tH(Ir3KG+1#~VT%mY+_=abge6^wr}WXZ&UwZ=SvB{bAQh!M2GC>22gl_xv~p z5bUK)cqM?xN}J9jZv(1pkWDts*_%gYT!-ruoo&Why#vrY=pGO1YAA#@zY=lUDn+f7 z_k7w;JS#g^9@ZL5FP60WFf$;S=82-Ma?Z z{*?hiCE3<`g|iK?B=N--r)P_wCVfDvc4+rGv^-d)+9R*gMSi!Yf4>iX^<*mTjM|7? zflO)bJ4MAti0|gk4akXb*jW=gUdy3$D(HkW*&2PSIjE3wX1_Rt0-@++Q(}3_FV>Rk zA&Dp8%SwSW@E~F$hvn?x`;NaNIFVqbYk0QN#`N>18cz0Fb zNsca%En2@Iz!NUV;cyD9J7~CaTK0Hn@>;JL(}9snDu61sftcN6UKspZ-zf3? z`9b=|e(cC1+K8J8_QmbgY4j-^4zT`&cn>OWE0TYwvPmqwUyKu@`nd0Qbz}HS6JpGw z?$k7#MyO|=@$uoBE#xt!Mu>Ez1W9EhDr7`1N72|0Nvr=ZdPLSi48qY#nspRYOZJLU zXeC`GbL8$>TX2 zb4#9T`IJiRN3?F21D;#2<(FAkY)O7PXNNZd{@)uN$&**vYd*QcwaD9iGB}=VfaWX8 z{_ULTCBH(HXCdH#`Z<&|M^;PyOF7z_bfEW@)+2RMTiC}>IK7Oly0aEv$vY!V%sAa2o4{3pd{xxK- zgpl&?1v)Q6MqN)_Nr=o4LyK}lA>v_p*{3}u^$6x#XR)yeACWTl9uzPLH@HE+?OLR( z?l_F@zG(7AUx@8_mM~k{B*R2n9L;T|*VByV=XrW3*kDi|=_Hj$CskQs1G zZ4P}R(jqgNg4To-=%S7FUW1&)HyIJ*pjh`0Wn8wq9jtZ5vk&RGoa<$t8G{DW)a)#_x39~>U$FOaS$^XrBipGQ-cSfm_Lo}kQ^Gi{3J1D*;RYCV#FGxw z48+E$9OpSoSd8lA_}EZ;qI$AIyyI-bxQcGS?wmbgk`jP@b7c02x)T05%a@cb4p?2j z#U`{t(ZD6&EDEw4gJ-r6`|>c3WfZ#C19sk?-C2aY!wu6dOBP}-86_x1ur`D zKTU^e1Y%QQ4BGuHY|ig)bF~;dD3PD+fan7{5Rp-dx~vg%00kF`1zD;}rN1<%>JdH| zSXe{IvHD8?s_@gYcp!5rXL8X{Kf$~`jtlv-OCHrI8gCf00(|drNF-gx#S?y_DMOM% zOFM=6QqL!dA8BSC>p%oORCA~zg9fUHeFRq18YvPst% zf8_=%fyuQXdo!hhmeO7Yna{T)e6l2nwcvm{BVZ^VcQ-1F*@olBrvLy^>4u(#F7V@d zR2*-hN`f5WAjAOzoT{?MNRV~JtbNrk;5_7GvEu}?y|_ZR#l3XQ?;i=F*h$XuI%%i& zgswYCv!OzMPKI4+reZKPOh?5FJbrPLY!T-CLqXwy4G=y|@w=Xx``KFfaUa6Rz?2=x zenSS$*B#VYbi7};)oats&14?))}w=kiR=4IDBkN&_0T`jgRToLyf4Oy6xn_CFAiqj za(?gkZ1Cb}flEurSt z^rQ`LHF2<3Z-`nRZkTWZQ~lbqGdB(tVjBb&?M`$*2DU&ng}xWRUN4^NgJ`1COwSGi z!%}#{cv9Y_r*8C(nQX4t?bPH2MLK&QFUIUZ!AH##;mC;=K+Eh&_|~^V>z;g21z~ss zNNAJ*=H4kM3YSCB^f!LnrdTf;x5TJU15cJLw=-?@h=zS!=K;Pzx<@ns&)(x+_k0E% z^+!u-^JH^ZOGs ze9;)QJ=>?kDQ>KBq11hLhKqSLOoSxN01VFOfB+t(eHTzXOO>66pb5}xA$!mkp2KMg zcT2^A93@l<4t#~u*pA8bZ$7acQz3r;=?KY z@3m<9H!I*RHIU@97FYs_n~z9n;bHpD1!SQs3g060Te-%lgCC$3@qW5z(ApFrRR{x( zy9=Yy*w_59H-|Xykkf+f{o5#$M|vo??I!`3d>ZIXd~=iu$PmX3JvsGIgx&;p1Me3M zR2$L(3G`kY8FFzMG3Kf|&|a&TO(hBXlDzCIXM(Z-0hXTVeZ@*!zV=izR|4rb{)fqBy3T-JT946W z*o<9PyI@l1I^Z;nVry?;u~QXd&xI7^0}cQ>Ghowy`JpX#t01Y7SaJl)MqW0JEgxI$ zz|0fIR}}om=27jhMJCO~Wc#0zAgY7Ac^j`Z~WK@@V$$iQMG{Ng!w8%W4JGlqhnMc(L`Knw9)J%xEcsWY&?E(<^~xQ z9s=`gZUb5we4#KyK5AS6W5CU3jVw_WC_3Jy2<+=o0KJS}kKK}10Kq`S>--u{tPj8r zG6o@ia}g|={nx@R%1b!dUgdjd3#pQ!1^~_=;{Khg&(H;QwROx#>QG-hQLv$^!?ml} zTUSa<3G79Ojh%UFxA@3&Tw3td%ws)$Px@RF)E!;BWqj_Bj@9IxRfPO_bSd){3)(_i zZ%^0FAbxt#GP&&_4d}s5>m?@H1tyjAaNclI;P(s59UKz@T@z2%FWLQ2*AEI&8AT5yol;wTq z3kD&BtQNotI!^ok`jYc1W+evxje7t#GuXGP$M|e`UwkrhBMr3D??DER_alGBkKY79 z5hwsmabQ2AtEvT@?0nin#0y-o{jV}*_W;j-&N$WUlaa(gF*4{0MQMLHUIfe`J+*N*r`nnAsI0{acHW`HBBm?`00zjESA7LlakGsT zWOaJ_9$vl)dI3n#%sFTz2Og4C7Mmnbc%88rT`~j1u)e@^0zLjc(Fpb!SQ00G%%_0a zrx(=c#mc77(WsYDHgODWlbE!&}XDw3THXbYJCA9 zQ?(xg)>nT$8#ET*14NTHmXASmWEisOIQp5EP#XM``*eZ-C$U4YHVTl75>yQ^NYM%J zeJ_$=00G`LqjF(ZOwtDMop3Ck&p3eyXNFq6|MKxK{@8Zl+NH@vvppNNx#VF9@@Uia zrvG{Y=qRj&9Ung6MI$7n>-nY$Uhvyb6P^aUL^4tEbr-PAVW@*Kc7Ui)3S_;5u5r0x zR70i!%g0AR5hIQiW>2kA_2*3P^&s7D050U-dq5(!K}}L0nEv~5zaLEe78yA!EW}{Z zDiDHIq4$0|ZyUda5`sK;`xmT#mht=l`wzK7usw3Y>md(l(Fn1KXnRO78t+{Ar`X6d zzVt!q{9ym_lgA7pAZ`aZ1_QvV^Udl_9x`VC3L-<2(03RY7W$W8{g>O}*J^~Fkgo|^ zsJ{nNI+fsa7CCQRkT+Uw@L8Kuz4*UX$A!Z}iq5@P;P2l~E|mjL`M3J@E0cp1~cU)V*|F3}@A+rC5s!i#8yf{c}liKoFC&;k)zar5A4>SQoLM zJ4U6gI#9_WT0sHGKcbUxub0mn0HOp@pFGd@Uh3ap`~Uh%z-Q3E_(=~`Db{7T3>=S^ ztP7iY!X%s&p!U~sK1eM@hoW4|Ku6&Jf<8D61&rznVejH@nh;QGdbK27Z+31eZi#_2 z0et*u=U?@YpCoF)L4Z*P@)&p&VMn;u=wL6CE};O3NXT^4Tim*5=)x%s7j*PhU?IhX zUyxn+)rCdV1_z?#9m)PzM=xLAy~I*VC68SPA4P~oV6${N z+XkKg^9B8&U<9Pn=T7QHeR6SKNe5_Hb|i@cYENk?(dm6Eu)cOPp3{R zUK=b|50q{<2vABnwu+*XR$c*Z4{lq?oh1yaf4J{Lw??6M^%MfiWFIO(NQYE!XXcGs zbQGo+J~)^kd~jP)>fMW?^hcEf@qUTI@^$y%s}J2^`N1NF$U$SG+cV0mt2oJe-~#Gl zjqM!;&A93Bl%**R+`j6iHG&sjp{Hw2e!le}U?*H;M5E65Um}-9+Cw{7GfUR~8NGs} z;$)@7L|GPN$A}gZqlRZsaGmW5Ae^Q)UBPL{BgE$fE26n9)URSP(V@89;`c^_=x6)m zM*It_|Hue7FDuUWf7y;(;{EI?(n*%^elaKeu48O;a zY+f6spk^M8NiYqfs*-28-iz3Hw>EU4vIW?4kycwv-s!wQ^ulq2%Y$=2Sm#mR6ECf4 zuO8h5RXr zqPFtE<21?8pt7{=_N6;5`Uk~p8yR@Bi;~m-QW`VY-jUA12-T{ZRTL@W!0bM?Y>y8n&S?sEDNGm%9|t8KuhOd+}8r;QDj zgG~c-8k=r1w$}|NqqhetKQc(`oGU9VZx96H?CPGg(En3wN%#pDn`k*bWSmI#=1-P8 zt#5}-Lx`4dLgZl%3Xy^Yona5vN<&z_=cKPFTvwyOJs7COvP;|a(la`L$88OuiTvDL zu3YeDF75>kLaPxRK&W;kz$29T(a$4;_w)|t;?Y^nqYZc6SQ0cG`YEWIVSvd@WazFbmJLHmZ6fdZC(X>y zbGHuezZWibf#T?YtvKHRtp6ux)EoN=uJyxQJ#u9V^H-YWK8z6KgKMwqgHPaBMH;R+ zCXJz-FR~D@ZZYnO*I)V{i@b$n^zJoK$Xh^FzVVe0W+IT(Sl?h$ec54awVtp`6{|?w>b+iwWY`a2eU7izTe{1M_%K*3;7n)a1y6_s}9R z0%ow>|H}Gs&*XO}3fyuNm0?noEx6`mh<=`FlX8;rNkT+%@*z?z!izIn9M5eF4CxJ4 z@?$su<7%GonlW>*PVj5tAPh7;*wNBFRU8d(Td8npPU@5JylObQ^T(T0&^j!;+bv<* z=Uedwng6gCuvjNOU+~4BaPB2FcrR@aKKqu>C*m3NsKy*?D^kkh4 zxJ0FsyI};wi&wL4eU1vkwLCT^A&uc}yJ=kKpWKNgu;l6f$oD@!nH#MU6@8tUv6;dTgiF-8b}ZPzlu{BDX1!JiIgdSA>;rb?}372)v_W8d_7{e+RWA{tiUS2xAlkkUIlq@(XieaJQ@`4|^SCPJytcZ>}wNUsFs z*U!6QFC5NgH2%xkR&U7F%a<{qW}<{4aD~J3PF%TTC@!CVSl_PiOtPuXxQx#9d!-=o zKxX_pbS|0y!wmd>pN9-FZELune2MP-Ntcu?Fj1NK>Y(s#~>7%CtmitsVRme%vD`g@tk7u91ad#q%PgHId6Nu)pU$Y>9nkw%M=p35MJ6X|H(yx!l2E4@ z)-6V*TFgvXI4c2WfPy>R=Bl0z!=Ih=CsI>bfBg&7KVC3B9XBXTLMwaUtJ4YCiG9}6~#x2z<#7k zZ)dA7HOjulIZ#Q<>?AP>ZH<6uEf9T@d=g^w@iyU^;1-p9#QoEACn2>6=pb7+-uM3i zw*THqkNYG&+4uVv^260}RWVUC7>t1G^e#uasv0L8?-shoC_->o@jxDk)kHA$N2V#Y zm6@spEzJwwmxK_ItfhS!^1tgibq2y*3Nn$r&n{FmwZ>%pdM5SdZ8Ik1+9Y60tO|SY zeFM@Y&HBwbTF06Fl|X({7)?i<2-qJ$eO})u#E^n^SN3BJkl9-3-MH?(Vo9 zOAKf~aW0AXh2b1bI@b^m03fF<0CN65oo|2~JSS?Z;{Kn_znJM6W=VoFbQk*%pOM~j zL%3ynF$(zc{dBkkKZc{}Inv+%oiU3rF+n)}c2zPD{evmp1g zQhol9Z}2Bpg4lWIjB*Okkt-&dbNTy<3s6ElwPbQyJ3{VX7RoHNbsRLXlNPeVDSr^p zdG{XCU5fAiV)cmJp34fkInSw4$<71od#T_?h@x2k8%lr_lVKL&V5ZSY_x{N`njUhS zmz3GnX$kx@BxAObPQeR=A@Aai=?S$}0u|I^_{n|Gy%54O@YM1wqjT)RZ<+fgeR8xK z?{XlsjBMqGj|bn&qv0@5y{*7{NgPw8Ky}dV$q4cJG&e_oZDUg1O~@ZB{z4G;f1CdT z1SlZrpy)}ttP=WVmgF9+YA0uvu=$?iQ6^c6l$tUHerlFG%`%Km5yB!%L)>)koM8d0 zO48VHai-|`HNkpvjkc9U(#JK6)N-1xQ7bDVunsD8<8gT2!MKrnH4xgIo6}rrj)|CR z=XdrUGcZ=ASDAkc!9N6}RqC>+mipmP-_P`*iUr(gq(4a^6)S%2%2)I?Tg-t#6jD_w zcXygq`hFD@YVyZ_G~t)$K+Z^oT+IJI8(snht%5$QApaivNzXSBWdv-&w3zTOBMu46 z15n@JF}^)jSI7H6)X#X=k^IV^OJ83HE}7%M=MVid*7Z1qb2DNRn3si2MSAF|5+vpx zmgAT>g)I;dzpGhdnnH9f-pl$CUfb;-^5;4XBcpcBME?DA`Mq%b?pJBQetR7(hvL@i z=`O}A5M8a`I~fS#pkkzr8GI|S#7cNJ2|f9lieT6G{(TI>oXBBF=}0R43(xwauQu|9 z4|EJx%<*1cS?m?A!YbZYPn$m)B?Ug^J)sUa`~tL;Plf z>1Sz7I*j<~6-fC?-r@`U3C1@4*${O=W5a|?%~tle`w%>iGEK)akc1;?Uq`fLzn=#q zN=~wMW-Dx&O^7eO0WO_qa$%cMNIHs}@UyoPnN0r>-7imoL`3i#ng1=7NPCQiW&LuJ zoz>4_RjpZ_xB9hYwa;hjA{tM+;K+e|(dMygMC@0-_=iE^lz;q5sW@zxc4?zTdi;M* z?04w4&D}o0-$sGhr$+8(N(6C}&mQ z;VSJF6@MP){+C-oYmCD4@n%tk>&<|(0~NQ)gR1`Q=Sq7y16mZyS$FxO5c>b!G>fzD-OKs*5+NGCsvsYa*v0k`e*rogSmXAWqi(@abVjhk-; z#+6FVM_&;L^q<=E=;c3dj71-%IpddQxekRCP#LGq$dMRyGgftAJ3B-Q9>8QY5q17q!+!fK~2rElz5c}U=nLDa9K45C%@6_~qUPNlZy+av!| zz;xeqx2sue_$j!VF>koqs9xq?O3wT2x--W8TgVjdBQtJ3@d4)&Vh~&J?tr*y@!grL zd@azqB=qVy9J};p?$}nZz}6Pmtmk9QK|Y12d*l?RZ}a*0zTJCcaJ1JW^Lft#!6BCC z^jg7@>scA)K&FK#&&@QMEH*l`h*&ADjB4BDliC+AThELrT{RQ$pc2$_n{eNUy%Fah zly=iBdWtA)@qGNs?Te6>0K(vK1aGu~; z8^25eX8meZYyCoeTiF~YJ@CL{+R9?W_n(FXPj6M-u5TLQDihxD+395LkE^ASiu~NL z*b7dCL5{Fvk~EX*_iD>8Vazp3${)QF_%(i5oUwCLGbIfyEfH;bXA9O%ne{SihL8&N z47|uMg%z4tC8-CRhED!q4TY<*1V>BP;_U5Dz|pR|v<@`v`POl@7qZ4Nbo|K2+KV4w zCgv$$_xK|JA$@C5DAr)lpJ%Ii-=d>mtj~+nY;Q;>LEvm!m+yx^n9Qz^&@PM_y%eHK ztj~a~p?_QH9ssF!cC<#sOq7XM^rlwPF3ZUSvVmB(edZ*oU!k*Ul{<+1oeyP4&7020 znFw2h;N^Bp$b}pOaIt6s3-$;2s(sOo!E(*7+qD{k;&RaWPr>?!=#?i+*E=E^$Yh)y z^%rvH-rsAuBh>S#VD_c8T!+%*yamp5#8Fz@@ezr=l9$n>7XLS@kH@dBM24`7kFLd# zyly3GAqc;tvVz%i8XozxmaeQ8YEiJ_q3P4uQ@@B4IW?L@Dq}N{h$>7kIGZ{#Rrw~4oTzpbv7cfV* zSh-$9x0RmdnbuKsSAgEI#wi+Np-~j_Uf^XIgaC1KLO3#Ea3y?uzG{Bkl#C{BJElKR zL5b6B{Qg=3_eh{DLABLU5sX_Zsw2VZ%+ctl#C6VD<0|#CE%U9t>#UWJ58duiEW#eL zXl)m*RlWJp{KagPGrHQy|D@pPE>G=dh+_U0b%PyZr!XpF+P!IdV4rUF@7p4@8oQdQR%x``0DdYnS@Id*>yi!@7t_d zM07v08?jDR|KJO2eqUk#Er!l@u{lQe^~|0(Ws>kn%>(SC@=XF z`Mi=F1m`zoYp{wIeaK?$yf@%BCPb6k}09oz$tJZOLRYqcpcwjs$7MCby=G~XGgzQA18 ztY_9O9f94fa!-CgjLLMD1Uj-nO5L}cFa~)EgdZ1r-{T_^*wZdIZR#jat=cBFp{G!K!Dhy=- z)ovr~iaDYmf=@Ne%)&?0@xvqQu9JPy;i4GGWR<_+oQT)Av{!xzZ{3BTB<4vu`ji+; z*9LD-mcyuXo)uQQ^zYkMt)Fo_oT#v!E<`J4t#+}^p7@!Uy^lHlGzMrwbw_n7lD<#=5Uv;hA~L zQ@GSicY{6hJ3gZ+(gt6DuoU6KWP8|JwWELEIqFW>c!w8h?33q}z}=oO2@KEHll^1Q+V!)Yhi{HL5Ww3=k%50DL?a7Q7p_kAL-h)rLN4+CZ>;iT;ba@=dtbfT61ztTG@%X+m5$( zJgNXo^?`Q`5ZOFd9C`j&UH*npznodQ%Picw&3nZFko#p}7(#ZmA3U1fQ15Q{>Psj% zrRmKK9UFKVoI8=;EyDD!!hK?*B(|NYCZTu@u&ES6-9*;IVx6YEBfCQ0)Gf$WWR5!6 zQr&9d;!#wauL>8E$S3PAS|PZ>{-kmMZjd3!zv-i;Mg?ce5M+4Np;l)0!}RE}Q*F;6 zMu%;SzQFp&uHBJQeU_e=T%9x;#w&5EHEABvZiQ~)0`psvTt3Q+ihbKHIyc!#p)cfn zX-78n*RivX=8tB6$%Ha8F7wp_6)L4f&i(nfl)&x6ks!q>Up7TM`m!-?xWs&1=PV_h z$t10Vb`IK*@C5GmEm|1*Z@&|SG=(5%4nY{E4;)Xf7VdF?4ncrq#mmXfsw|#{e}I)( z8NMkPMfl~U6C1aS36D?Fq_HB5qypf8m_QvZlMb25F@zqVm~`_v{8{zzsozb43aV(lrlSxa(wRdb@ChW!J?0xRldjqIJy zj`%#IEp^t8^>F)eOd+VEFLdv{8RzDE#PEX{-}F7#>LO^it;LASI*(q#`2G-C%3R2j z{O~R-tJ9$GNSD*Bb#%oXQx%-5Z=X8d0;*nUm1awA=Q%!5t*ZZKcWw-{zo=C?nayQU z?;mIQpj9?UGu-KR-d>*KjiN`E;=zinB14|H(f{J5%JHrgu|gAlPy&?H6B?IJ~;_^`bcTHZos?N}4o z;GTHAM^d5R?qz@M?ONFZ<t>f9zvmDieIA)p#8td>vO(ry-?SF!-O7;<>EZjr4{ z-t8{o;Lnh*pz83IInGd`nAl!Q*=jGd7@6%wft1-_H%geaD*bSrGHR32`q56>OrbkJ zF0JL%a5X(H?rbH}dVQq=zl_SQX2;~mxE+a0?f$lMh06(^{jsl{T5B}3laKO`%EE0G z>t?~bzB~CI61$*;>GCLMWvgAuII;}PmX%TIDeOm9?F<2N?o+W^Krs^xnKh zyWR40w?Wx&z9WoXX{&}v5f3cOJN%xV;BUO^~N|3$X2>Et3}MdZtA+N)~3{ z(@VB?RwE65e6cWSqp4Hx%N;F!!~EnEVEJA?Oe!9&v6Ij=Oc^LeMvHULQ-uc?dGg!W zXavDL@f?NQK_%2f)pkX|ovJYFE88`;UTcUPvQuMNEAXY7f2Op#TzkFgbkEcGdB z#cI;F*G8ONfO?76OJknZ2b$Qc?R#YHKDk|CA2iQCa^9>QuI=KPvb{dEu2)5U*77pc zJZv9&GPM4~FsZwdz}D5dO`HxM$!QCk!)y1(?JVAGrcO^+4I?XGY)@(VThr)R(p5U6 zS~@;_CG6R+>qccaV`{{GSny@8fW{Fo~b)2X<( zKK(m8;koCQ^jf#2V=gWt1EXa|y}}lTx784&WY)J~jK0k`Sw?O(Rs$&|3a0C*`;5ju7-y|#4}=Vu?}+l2Ia zt|9%1v4ThksRZFjx$Y%TYqyuYh#N={n8!y(Lh2dVaT0}^q-)Ikss|`}6hz5BjrU$n zRG1&}q$hM#8+K5A1K2Ud)dSb}W>3$_H7#okq{PA(H0D$t{6Ip$=_G zM#pP~ii9{sbGZGn-|Sndw*vUZD?pL_R`bgWOs3&1D!kqCCpEhk>R=366(aa(&EVkS zKAIU0<)U?XQgPG7aXhUTK^q=9I@y84%b#C{kwKwik&7KtvEMlBloZJ{Y(@`Fg~^dL z$+s27XA2K@rs??MavKk2N;f@D+tyx7Q~$phd&{t>+U|W=kVd3L1Ox^Y5Jmd-4l2&=GZA&V(Ev3vmy5|bG0*5@QhY3rEq8B@)@Re z6YFe;Wo!;sriVvV?(+b}rVXCHdK0zWN?SRy!PTGVz+vaBT|RYb*IY}_qtn@%!wO?<6Mg`Y%g%2MwQ%R@>9!BtNh%K<1)#u`%~rG zG34}*TCZuPXnpUU#*86Xns$}Q)Mt7upYME4{;^_k1ov3v$g?vzDqq@4$9+=>M&L=@ zWB|Y*h-(*P_Jiu*89synIP*$stwg^Cl*I;%b+eXVp)ezKrB+2DjM>8=H*7on{Ljyx+0{R_V%Zs@jW?evU6^F|^K^Wh+KyCP4#gKXo zxz4n+RGynCgzwU8HsLcpr%chLVH+DsYm8(ToGsQD5D-s&jB-`2=$fISW~22FS=}xQ z*q-=5%J6^M8UfBZ@Zri{z7|~Q*mziOi~roPnh{X@;;R=@mPzNp1tLjz<>S0JA@|2W z7XOK|FGV6+$p2osB_#neMV-YSTEGqDp$VZz*ao;4#s!FSi7pQyAq1evqi;KVaZd? zC=td5^?=omT6)?{Cn{EI#Q=2=SINsgndF4~fNjH{yw}ed7`N zG4(6a(1IDp1((0tKUe>2Ql|Z=xpz%zcLg)QxCLeeguGv3(RSr{lYmhCc;Ia*L0m ztYY1bChFXma1|ZnrhJd)z^Rv~{z=C!TgssxeGFuP<6(SI$vU{W*%Mb)TN!J}PA&!S zH+T|&fEe3mY1#Mr&xwQ}u1!et09CA!(V}W7ci|$ojnYSO=HUHI{UL2L{guyitPVYX z?`74h8s9+7?X#v*cIInYKlFQUoKj>9fJ5?!@yA!C!$^C={qsFy>DkHK*R%PFZMyK^ zO^t0Daur!~x=wmZ^o%yfP4<2De3NN0xIwy@k{dSaaG0MUZJ8a0y}Dn@BHr<2!1k_| z%dFeH>tSQVgiVzcQs*Q3fY#cp)3TXb#VqCcH2g;4FRBAB4I?}6nSQ2Ty`!y%arep# zyHjZ z7@KY}mt^KOP)&3@(&D-R_-+MCO7GDFSMkqSH}v2$d2b?$6^%-r;I8vkeDxCZZ-Y4% zQEd52Zxa%(qQOdeuleBro}@*HeqPe!80Yc0ztum+&ghR_FoLB{cw{f65vlV{eo&-8 z&4rI_#OoG$w0&c^!+v*kc$5%=QQ*vN*1%biL5git(H4Qb6-1 zpSi%_IY|EdIQd_H!s7b})K|QN@2`O`CXz@iq=3tODYdv)F-~UNa;u8JB|L_R)K33x zha^c+@T}#Mt2J&4L(RGxEq2b_pPxX{&Y52M!TT3;Gmc-MI|l4Xy9j{A)!0zyzCt`? zf?JdGZ~G?bgg_?VMXR`1;f%Iw$jd{fjtFMcjE(7S53`8RPOcH=qZM?&*?V4_E5Hx^ z#1%`;R|DJ1t(UWyCo0&doba~T{2Q0 z710!H{bE|X_~+z~BqxgJc=L|nh{!96&Jr?(37X@{Wn*~#eh5voqj%AL*UA_M#0`IqlkBjCPt}%X-NoC3+C8S$HW^Cu z{vh}wNRQ=Og`s|f|>JdJooN~mAjfIUFU{Z; zC^zqmsu0h4d=%<2sXP@8Q2ySMU%W0h01Y^K)+7{sq!4dZ`_n~?O>9tf(?_+>B3aUE zFMr#vRy+U=#>9sC3*9olEs*dE!4X17H;C=S!k8x-L$S*coQvw|DC@X&4vUyq)QQZg z-I^rjwVxI{+ZTi|r7jW{^{SYQFskbt-q81G(ATPgQ}^EYw{}lt=v*EDZW!95zju6; z=9_6+fC1vX3b6}@cxWV)Ou#J5ihvEF-`9q-%Zs1CKA1Zd^BC)A#wz{ z+!0FlvZaps|?Q?qR9HK z=zOYGZc^9Ht{`|5$sumQQ(o4#Y<48@k@g^yp86}fo@`Z6J;kEyr|yVpXl+N&E2qE=^$BO5ua zfID^G7#YR8AitN1B{D3tq6ed-sO6SBGOg%1CYDsZtIY(8G5 zo-ksZ^xd(e@Go>^)CyMo)fTV+p*J17KdY8-UIY~Br7dT;x>FR9P=fF6hOYHNOayF& zCws0v*?mm=STqd{=TBoXw;K~Ew&`Pg_zhL;{S^D@gB8|S*6o8QW{b5m!^nj(@M6@q zDn_%E7%-xsqp^LnxT}1mPq5!ijS_TdYJOF{IMs4Bo$!Pi!{g~X=edO=)ZR@Ge)Oe& za<1a^d8c3m^-8Bz-j7UA^VlZ=UExFP9Gdx3oRv|ruBy`DYJI${XBScIhNrj90ykUZ z4V?AHwRwyEgsb5oatzgD^nF*1MGjTeSQw9iqeM(m^sjzv46Hwm@pigHE6DobN>IRW1QDKN2-IZZJMJDRT7{bS&}S*l$SE+gJmH6eGD z^Hj;w(r84j=t|QATC2_!J@reTE@xui=n8_o{G(aKZ(1BK4I_Vd<}rp5zdNrnc5uvL zGLrMDqCk_;urjZhv^b9CVPOj!PWL~5G45C)@qj*fFdA#D*2d&i0eV|H_ znT+SG_m%f_IIL=>w%3xzsHzwsX?8FcVZPusc&aN$}5AuP}Qp z(J>a;ZHvbnV{boT=2sGz(+=C1VV1BRvTVq6Y)Bsyk&;-YT;#r_IdQDRY}Tu@^==W@X^UL9+?==W+Cm% zI{8yxHkskecuinhzi75|-CPE}%_`y70g|=dMSA_gb#E4f@5SrT{aK}6oyd z1>*!7*1IlXV}-B}K|Z0Y_3-?Kd-Lf?P0p$)+mGE3k5hQ{P&Humto9}_ZWH;_H*TO(rNI*!Q>bR6@!PtYO zZ$oXZc(30uB}%K5#`>TkAf66Ib$cB|6N>|J)sas$7hD)v0d`)+BChPaa_Bf5$OXqN zj8+Y|Y}XsVH<7D!N?Giuie=@E1juP_JR(ovP_p70En25$F1{M&2Ds8~k0}C2f!#k0 zdsIL7J75X%hg8vM)5^>(3e*_cSRbbdzT8!&Wboy%8LF} zOUKHyk2?MwVO?C;3X=&ndB#aS16r7rq}WA6EV0ZyBiBb_YBzx~qHhjIVRkhFlb5)X^fZjO(JqobNoub8^-v#HnV`no>| zrsC4-jAe}J)7!nvc@xNHq+Wf#cpD(6VSLPIZvy6WY3!4JkGvdxURZR|P9=~hM@eQc z1Z0qoa(|?#9#uDOUCn)m&4b!j1 zsj<0{&vQQl$DmrEvH6lmq~XdS8Mv_7y~@z|d-^og>Z;3f#@Xf7>U3EaH0;5ObVjQ2 zWl#fV>2&dI>;IfYfCusr2QVQ6r~%I zjfe7mi;aQ)ci-gA6Ad}jftd;ON4e?P7H~0NwN%JE@G>v|gna!YtF(1h;^!2XRwWzA zTKpL97$gGX+w0BJ74?hyT(??)tp6?f;B)H7!4-g%Xese$9CLHe?dPrWe7sct5{*aZ zOUHU#@gD5F51Zv`B=8=s{hj)J%n|#|^Il0{4Cral!xibjpmcKF^nY810pbPFR8y^v zUEt{S`E1h{@C4c`a*(fJ8Tw>&N}W+hY-XeEgB{Pr!%HlCgWpO^|D3;xsKB>_{uzAi zY%9Js==y4#TiKyFl5_S!ukXQK&c=lIU$pV0d#&tRJ_^M!B~!iZ-`n5AD^rQmFvPy9 z{zdOmuh`n71=;t2vdD~>SJ6Nk!<_CyA;uZY;uLK*1C9APhrfp`7W%T_N+PEt`y&9! zhA|v!3Y`!zA8};V7C*|ZEq|=sST>md7P8>tHStnKM7fq8X z`=1q`sr?k zR{gYa#|<|ym4cHL#q{}_TRfYYKi_gP#f0<_j=@j-NxzS!Y#EhpE!*QqyO(pqIx^jZ zUiH)obOO)SQ>ex@F0?=VIv^5I4U9aB z$V$9tMct6R@&zD7M%TxsYcXP)Yh%Y63*soW&xIPaO1OJpPJJEF*jdR-JfHz$n#ih|^+>KIGJ$ zuebAN7C@s_KK}_#-aBs!U?6FlQ8hWqLJ@!WUVUq5rZoCcR%o4BmRtRY5Q|2MZXBC) zZ~FxTrI-0q$v6&(pB~?q+G|!DTPRn!j~ZC?m+;|pS<6Mn$=k0FW`*$bBr|O$vRyvg z3F`oJ)I%A8Vn4<9c!=i0rj=^P*-T+%SOb*N?CN}iG7=eP@s#r@$Ex}pIznsS=`85M zN?&tZFuTObus|P&T z7yV_9tJh0WIW4SG=!4bF!vVM4!RbgzG;FrD#IQfo`CBD1!zGio-#&E>$eC14Tw2bK z-k0+^MjTu6KI>Hu{dnOR;C6*X)ZB%tg`L1IkALY-EOQ<^M3ToibiRr`0bfS4JiOF7 zPMxf(O3r$r@We{uKO$-bSea$mr8%6^;3LpKZF$&dLN$|6uh`@IoU^^!v0h8l;xW~V zbVVw_6NygWrBo|8mYFEIEwtRq#|P}T;_tVBG~NLzuM$SjTHZ*~p5(PyS#yOkFkmhgS5W<2!T^ z)9z2Kx!lNPWX6!G(}-qv}I#(vTJ)t;)DtrDN|48IAs1B36?Z^B0d+)w3)WNQvoY^)l`a6uhZr=-Y3 z)VV9q2SR@eJn8QIZJfM`Aa63fi!@y{=p_p%JrQAz|1N)_7r3o!U?r^LQ*h!2IRii2>Q69GQ4ZnGS|(`;wR} zyE^J_%_qwO{F)r*<3x|I7JoHwA}+1xlx!Ee$r{HtkF6}IwPe8Zl?~Q;1@Fo`RHt43 zoL?;X-8CI^;7-=RT3*6fPIhHQ|+y|3q!UE4XncFT4IwElJu4OM%=IbEi1?by9F;_uc-I)TfYbCH8!b|}$^E1^_$mXG9fgHW;?$0ViX zIM~~QHu@A+jAe<#3EP*WLsS%AW5m$tT}6Y)K>7co=qm}`J{eSU44Lv+wAYw)+jY} zF0)a#M#oa4khVhH36yV>D=_(n^7N;ag}Yd_xzIWHUd zqgAmZFg1N_uv~3(UBXqYmb3Wjw)O~Xf+@UnVI+(Cp?QRWz&vqQNL{{fMLv{XEs@2e zR+{SagHDm1+#Bo3VDUR6ncwGj;w-k}L5=2)-`J zDZl>`{PiB_6MBCThWubM{6+gdhf%EQlhNQa*q`jdLH){?POF`3t42H4w6oJQl~Tg- zt=P}IZ@16;DPdq@8d&PcWh$pF_r%OIDs^}xT&{65jyRw433Fat?0gtA73nMGJM8W) z4)Ho3cKPb18A+yo>U598w7*k!YgIN6j?s&Sz7|GsGO^e*#oT+w+Kg50KwdjR@iuCm z%X|(2Ei<}8={@Q+KtwPSmRPdeF7(O$vh%AUV(}jd{E6tMh6j!G>vVZ^`MVh0BUoVssrOv)3@!6)(4VJwZ z2qa~M)NK0taQ}_$TaXJ1VXfdg|6qFP2ePLLe}_7ZOOzh}(#{z_Wwu4|5_VVhy_}Z&R_lU4l5A6^qY9}f*KLk z-YnRzkBWt0b#@@5_+L_$B)EpIJI!dOj`QkRjh2r~mO7RoNEKD}@wY=~XKJw68eO8- zA-x|bTt6ziQI^3g2RvZ(W%p*+!nXhsWS-sA75Ja46M2821r&qc1a$=i75(XZ|CfPq z9IVJSDZ2Omfv4*GElnI!n~6Q3@Kv;p!^KeI-3%FDy<1_vaRL@6p>lQkpW9|4bcaSw zLzY-v7(|P*9)$i@R#a9$>lq4IT+}!+o!C#^M4`z;eAF9sUioxX{>=wB0*0uLgR`) ze-X!s_>DH%dyhS)WSo&-=L_cFOA3k;1EBadfSmm|!fqjBhelu{))u5lAPL|!*qOI5 zW1vgN>=^(v95H`3tfv89XD46zcE}8ekCmcG?JkE&i@lA{{_*(&wo;9jq(&`zV+}}oRqu7IFh~v?Ef~RuHcxtY zB4gF~1;wq!$p9`Rfv&P^zr(%#CI1qNF1=Sc*w9YdPf&xfgk{!wH$`F2(E-@hOt`RG3$mHr+Vo(PBz`@q>0vG9DX3waQoMEP0z0g9TeaNsY|w^>juQTkcf zM-8I4YWlE+8^e6Z`x_+lU61UqwRJ95YT9V(47|t9LPXQ8ZtCgXY#uC8(5wfC$xBfv;rj^m+mG4<0r18b z)W0=?xBs~YA@Li+5x{RRF0#Zeu94HIL7qMZ#^GVD@TCLc;&hF(dW!u(ua_@Y4JuKc z9s2jV2dMsnP4)DZu9ptXe!xXQH&S5r0i5i$2}AkU@_#=H(i31Uhsd;vziW~GqSJcE z`wu}0RS%EDF`&-n8YIxL!`_>KKuVF|4 z;KZ=&$+vc1)T44_=;z)S|D`{&z_R-M|Df`pRRJqP6!>(3wm?_w?Z6{6)=yq%!fpUa z$k;hB?s_{Bd?+TYvup8vW+4djKs(r;X=u(yXA7(@y7M^c7IWUflm@%SYpeV(^LO(Y zC~&Pnb=EDZ?99TT0W6SmM+KPyZxAhj6w!!GDAv!9UT4l(%(QEt@YOVK{1oUFU`IN; zoDGz3@%RtIfq@9ub`Xz74M&!MUJ!(bRRfcA+D*nF4hZs>ZXyYu&CGw3?bAa;5bNcd zY)T{iB0x+G1&aQbim3t-Xrq2lhgc-{!vC;lvEQJsKlM7aOBDfnd2jx7BLiU0HNk(deI1kj z<H&{0ef%TMTszp+t{bK<}|?gaMJ4J_Uu313I5n8QIJ8@4X}t>T6;8 zmx21{5gkO(K|v~9gzA;agjSa1MUpvd@C-?c+8h>i2Zqr7Ax?+&00-sF*@#DC(BL1Z z1Dd!N^$|(apa0<@1A_#g(!@0cuJxDH9hhrDvZ``{;6k4h<#_REoUp!}0^{39!Fzxy z!LpXTcPAIs`zi5rneZeYi{J>X`22d?W4xcXJBm%^ZS4-;yzMbiSvFXnL5&0c7 z#bm)8QrTfcKdo3aS1iG_G_(WQfa4#wVltR6X*B&|d9oKc^s^n`s{KcaZgXws&jK-6 zH6umiB&(-#bhV}ExBC4v5!hKL;!M8(@ewH32QA}u{nEG?BRO}E%iEAg~KoBaPe_zWf#KdoHuSEK0O2lVgx z(ERuA>q{7lF))!|=)R{&?4m*?2)v8pif5|y{RcDnkm+5iy_eye$2{UH|`hO{bw=6>%OAtNF^qO-kHdTJZ3t*dHko3^p@ixXD zjq8hm@lUXh8$SJ|R^hIAAK09y@9SqwOiPUWaS%QOcQt44p%OeZN8K{Y9RIWY z>c*Nq^%a!$DZ-mL?l1|Hi?C00{8+JjIaC9QMvNh8WR4JJ z#%M$iV$UxI72VRq(fizNa?MSB4+*Z1Vp?JP%$~{udhib-uD`1+^v-lmnPn&03p5;m zufux}*%q5xjeyQE42*@70CN+Mz^FwMeN9wH) zBak#gJ$Yz%VJ>`-eA*sX=6nXbstM!#k->L%zkPV-=wzU1Lq&K<)LA{eX>agtv8987g2k4+WOkaQv0&fh|7VzrFBxBv)n62SVf@Y11PyHpl`why#)&Wd{WFSp95ttS|qFF($pM^WoL zY`&YEIkzj3o%FQ>w$F%p$M@E4{goRC)1{>c{hfc|ntW_P19U)=?I{qUpo89{L+4;@ znuJm{=csmaDp>k-fPe9v8MC(ynIU;&nzf#Z{3HUz20z46(G+97Ey{}6(N-VR_YwYrOxgFkc4}-x#g{$Wk@6^T+kN)YW%`(G%7^Bjj zWbWIq8A<&WKGBTU88a|EO8BG`VeLFMuE9|mvtrqwh`rS&2XQTXeM!Qe1ZG!*wK9t` z(*a8p)%wqNMUDm9yvtT>VZI$%ms|?6yV54FJDppfyvum=iSyjO!HrEPMD21-$!u|N zAw#~wu3#Y6Dk_u0L5jWnz6RN^I2#-d92kX$>V?mcKvDFZ_RkkHVB&{X?2jE}kO`R~ zaV2FapX;PQdgMx44JL(@eVBrbHLN?DxCt|wy#4l>EsyBgJHJv6=dLLDEqlD zr-feckZRnT4h&zxyW(&g#(IU7&KXG8Mz( z)9!h--oTEY7wJMgm?!G{rp*U26L{qoWn)_3##PV84Mbr3u1C~t>$=$=GvV>IGu{4Y zCtcbG-q_6J->jV(oh3^~|M=+%7dh5fKj&Ha#WI-?^fQU~znm$E4{HTE@poa`maKrq z-BRFN=z;m;6CSmqPfxD{l0YAzy22GL`4dNyz*Y<;ik2WSQV=#0(>=1Jwfhmc@e%gc zLFy$CNe}>buX6YvzZ&yD`I0`Ww;MKs!+eH;86$MJ)m^nMZ?7{(&gSJ8gj;RW$)7OT zsTedLx#JOH6BEQSmmFla7+SsT)G|adDu7YZUcR;|{=Cu!X~}5uQ?nTAp04K6_c3^( z+e%G(Oz%@i{)MLGj8XQPnC^b+Dvd$dQINUeqnA=M%QmRO5~g>VG-}W4Fl?a3ICo4OMn>jZ*N<$Eu*XxX?yxT09m7g%R+joRTkQSLhQWwwHs#}H!E|6K%V})V1 zQ43~I77%kGaE~xEOT+4=n1#wKvnA|QHt43Q_E}u=fTV2lk&vUM^E&yV1%D)k ztARjD6|CrL!hHMBRH7!5avKt^&2fqbgQcI?tM?}CHNg)TP|G1%%s6f+Y3r+JXWTBd zFEwGu=obb5zuig(k3@gMIX7bD%j3h;9 zI&^>jv)5)PsZnPS-f&QMi2;qYhX3PP*=+aax-)-ECi1G+KW4=FNuLz*)wNdVCjAi*6nII z5rPe9(BP5n$N{SOjrg;j)Wmi=hQ)`{#-lCy+6k*M@XG^)O>extF4gpG*hA#{H&v%Y zZR$Sh(~6u&N}8&DnZi-DOKmRa{jCMS6{B03tC=z+QBOkJvI-kdgkPI#Jo6sU4O2M8 zEmodY8gdHMFyOr!?F-Y`ZWS1cs_o5Trj~`WIM%-!+4ss=MdZd6*<=PI4v%&v8A7n##-;?vVT+vpvsgum0)eWNaP%Sl+0h-R&sM0ZQ1*5J8q z;Xxh_Yn%CqU5BjSkhtu1v2GGO#|ApX)kk5nsyj*}PB3!MD=FBC6BeQ_po^ulT(tDt`GqlJ+-zBCS%&Z3SfPB3 zp8gMlRLX=b-J&S!gbmVq6W5r}n~j!J^VDHwXA4IhD71{=m45bxBDg3nqLn;MkCczE z`@TeUzDurV)lrGD!pQ8T4&ON{H}m9GH$d3#v0S=vOBm*$tREyNY9N=A8<*ir0&F8K zA;l+t_Ty<)D#K2!nwI7zW`gi8x4L}K3xrS6p1~*N(x&T0)uhEw{V+Kg1qgAJynQ{8zOSl#IO~ z16)ZWs8T#|=q=^(G7yK`g*`W1t+M2Vl$TSfwfE4O>C{7VS?lZ357m2}B|ebE$todd zvcB4^!F;!hK~4ekwauU20#3q|BpY=O7GTeIbUen9czPct@FxP zYHq(P!7fA5Z4l%4wL3qEQjSU#&L2KMg)d~P?_Ct&rMxkY!1i9TG~(kE0Z6Y6!*2xdZR_=*nHc0$4hHw*P`qRm4?t>PYwzCu8EbQx7)xS z#{3(F=0EZC4cY}rot&Al$Q@^-V1d$VeVOrVo2#2B%zSgPp8_nMt$=tssW(_J+tp| zv`t2_Fiu!r=W!S}e%YYj8nzFl+l?aY@JzbC4i{5p}oG`J-YnN#) zj}Ax}G@Czp3trp}b9a_Ai;1z?wp@-G&_1F`rOL5H z7)HW7g{B)P5#%;y+SyE(863y5J9Uw{?Hh^TDP`N+B4H_I4F`+rmxo8k6q+(t#KOwe z@%awz)cDvuDjP?ee3Y_*zldPd)%zSBnZ2jHM(i)YzLvmWo6Y>FxlgWI-chK>i;^6A z=BqhzTFgRX3&>hw&!Wer7%w@sjpYCskew#;N(GJM&*W*Vh?YsNnO^|Vlc47pGrpu) zz7Wc~Qb37pH2NCe0fG5k+nKhM)iyNBpuYB`i!Ske+v2l%BOQcR?WdNz=eLy?w z(W8NU;yyjj`Y)0zj|d<>%?5fd#1~j)3?Wm$Ln_~fuQ@dGDx zSS1#vfuq|}F!`ZO#cqqZjYqBag$rTbclo>vU!kU`I{pzpz4&TD;=E6;{j80FUmMaa z0omgl%fA*K32ie;kSBTyr9>MU*&0#i!rZ}SWcH8B%9_#X9_uI3!V2?Gg9j_@U6^@ zeo7j&kl5vx7>1UP1XK_DFfHYB&1x3+NQHpg8R$2@S~3XieS7|{5<2J_*;AXlHe&~I z5#Vm&@jQSj$T+AwT$ z@+XwxbC7&)uy0sAty9->A{un8Jt%oOUXF;fZ|z%UbuVQ(Usx6|85+l`p6p&)Ph#Qx zDjJ;NUc!leK`qlK_EV^)Nrb(!T<~3<_^lT*Tl& zf8xAHEX|e1EPg%dMkRylGu6>=hn_EmL*HA=R%`<1+iH9Lsa$?6PLAnW(9=ln)yp7Q zyTGA-#ljdB%>7We!e~ZF;k{yKVAV#}k9;Yas?M0!=7@l`VAZ}w963YYF}XayoeH*{ z3;(^XWem2x-R_u09xKJ)o7SRZOe;-X{(cN6p{~HUWuI5L zW*_viX!MUFE^4lHQ~l9U>xb0FTvGvuf5ot~Zt{v(M;qMW%JRZh>l1Hmh0R34K7Yf}flqn7@+u@a(M=rFG>JVdesOmwwee+o9bVZ|WuSfBTXZ()c6nU&| zZKu6Cx)M5Jv9YlzcmtcEK(pQ?tb&@YXZ`B8<kOn5 zvgE!z_NaT;z`a1Zk|?y9Ir&Qr(9ikOLNlQdObXoPp(eLWhJ!DR{h3+ZQ4*JR`gI|?AS8>+Faa16;IIB;(Zj-8m! z9^h>EQZsUv>eU*Pg={&w0mPiv=+A0~f|%M%{|7;s9HEzbbm<&(E zO_2V>pI%c+K$lBj+>0nut3y~BhGr{n{CnCYV4HIVoA~ET(+SU5)wk8P@0rhYzI>NM zp0v%g7TMg~I?UWJUw1ENpTCl*8YYRd^oS z9`i~+L9mg)tG}Yt5Gg)}DaW@@;90JfUqomFeCGqQdCKRpS$}tC&3$rNUAxGc4w-TO z{a^$fyZ#kCNXiO6dW(VtIzN>&Hgjmj&ZoWPU3C+>U{x((Sa)D*kExm%f;>ze@AC`E zX1XKJX{5OPC7r2I9Js+{IjfG3+CE1~RXQ$k1G^jV*Xv0q`P!W3-G~4N;x6C4{g3j8 zopvS~Qv7wLnddWRwhO_zW_$_~X0R=ivdbKJ;zHT7p_4P`Wp2u(yZ9!65FkbGw69Mm zwHuSK+8SrkzN(OFNUWA>?HPNf={aFkzJM{%3mQ;>`9PrM43Ba6;w6C(5mZLeoKNdZ z@o2`UWXsW#HdTH$mpt~-z2kwM9Gk8C^jG-sdX3}y{9=V6NoG)K?Jw-M_E5e?WKi|x z?3fWcRKRKqY_a`#JrnN3#zOO>_=8VT*4?&FARWqdPPW-QOtuiIn#EZZpB@q#AA%6a zq?s*G-|gR7+O9wQ-oYFi<$2GTrf`djWu0R?R--L0QVQP=XN)@Nzx~4;5!OR4G)+D2 zAFcb;ojzx?kFNpp9BuN2rAu+YTyxE;VX73y%sfH1i_;%;?+k(u{*>e%)+qk$FIjMMuZ-2S3DBpKA(xxTKrC$!}01;Wl~q9Vatb zdOM3mzjjx0XeV5P36GT1pO zkFDN`Oql83s1b4zeg)a>r{|v(GgV`X&ks2hP-iOk*mM;<+!*R!{NWIzM`V}VR)L@W z=X6`Eu|QeisZ$xH$4j$s=QA=~(%--1$R_?ub8D+&n#X6n++#fQ8ENbL z>W!U4EWk8FY=)Ep`~8+K?RwTJin#saUUbqk>_am5WMRwTA7aE`NPs_&jWa{Ws#HLnMPg@t%CtK$}zW!&_@#Jxb;UDdDFlA z#;ROX{iXd=r#9K`lbP8*PzJ%UZ|(v*5jW3J8f4)K2njs;yrCOL*qM|-gBeU z5i#gI`%0ANc)PWM4Q{ew!6d{;fNKbMCd(fhApw8`e8nNrkWe+eK0iM(A;s|IsZBMW z_`Bh8CpyK_x6AY-^)LKzM>Zp=jum!3`R`F>%{|hbncLT2aKRnG0dkRTSuL<*-6k#} zXPN>Oeq1p5^|;`V?1a{yd9M~N>xiYR+o{sP#aGOo;SJ=#er54bjwO;(aFna%ckcCQCt}{)q0mUSz^B6L@BN z3et3+4}L+7yIB7+zwY4IvHf11&Z?9S7NY0x?0u}PuOO3EXnMNH)3w2k*E%F_8wY{l zf2|&SzJdEHK~FTcjl#;#Vc^8f4tZQQ;nc>YomJE2o|hO$V%a^jdnxR^>`EO*=xM=d zRF$WnxOY?($9$N^c@fbAbE)uwj385S-V{#RrfkuWNR!~L1QXv{_iMTzbb_Y*lig!( zNsC3PkPeILn*5g3M%8P5d}-9}^jR0UKY7=<)l9DwU=qw^C^X*8Jsx{okf1#FQffGs zzr##3Y~-p;{60rr(~Me#Kecp3ruJ#C(qYfuKU@M^YH38`>{a3!}c^^uge23 z!8)KRjeGKl&<@V_IzVuV5X=5zz7V{>6i@hfOv>tiUF@^0shlnZBdHUpNh3t^H8L~* zKfc~Ntg3bG9u@>CkrFBClv>i#9nvM;Dc#)&NQZQT(%oH>DzPZ(?q2kw`OW3t`|NYx z>-xTbxBJq$o_Rmxt}(`RNL1D%xL7&g+QD5qY2|82vZY}+WKSPce7{YOW7^k}spoL9 z;RN-#$oqscR*;Ln{dkw|&E;47{1$4YF!L>#`AAJS%Rz*8i+V?^+94*xIR;{=2%AvT zHa1?&m+Lh@+=)ap-fwbMJ~rBZq%O?VP`V`QvDDeeA;IM@36*uPs@;~8J|u3nkI=b4 zWt?p`?^KsOQ*U<G5Z;X$dH77Cf)UWOuXYeG+FhXg(LSfgoyotD)_sha znd}Fe(KnJNEImyZkKyP`ZXsO_Sw%9HVcN^OWTbM(zxUl7(LMIoLiC7}BU-m~t4)r* zA#+}e4<>v;!)!)!i+W83%^5)7>-M@lM`rr{AyLN}8h^dxZ3ym$VB;3?_~d@5{{Ln= z5oEE`{(Ry+nM7vv!R=G33{2yXFM$n6ntyn02s+VLBKYSCAmg1(tj$@0_$(pgo5smG zwV!>$P4o1Ec&`>Jo0NiUJ%kM9?+|o^Q*pzK@t>b0lVTw`kYP$s<_=RFgg(_t^A`%o zv0rx3P-(vW?|vB@wkTOjuT!)28{8JAPZPe=hiIK1UthF;wRPuW2oEnnXJYd^l;^&$ zCgrab^!Ux)u8X@KP!jeMq}8j>4iZj&<$ZUyd3qqFuOZB@Zm5p6-e-As+3vY#Q{gX# z!%W1YEirr?j5K)$+bGKQvn7X19W;m6I;+@;gY|z8dEwv3yx-qwX!JcDzeo#x0AIz2)r^iSo-l_>t|5ZYHub$U|i0u$@ zd>y~<9r_wZd*Ty4D&iG?s1AA+_xYh#R`15B7`OuL%Ojrz$6ixujndVJ7H)X7q0SGmsw7>fID5q6wQQabXrG(mVG>$X1o)Qg1p?wxg; z&(mv`h0Mwa9E=SZ zE@-C}B*cfzcX!d4~K@x-yB- zEPI(LLA~^@0n6&z-BZ-b26>x+sgk3>W{0QNiO2oepiwiLJk}0iu$Aq++mav7@YmSR&0ottcHM2(@c>I9phg80BV7=FM2^{75E78+CjKOfb&~e7p8vA&;(@VmNA!Z9!)7P;cbu(+*2s?;oX`(a8Wn}hqQISOj+k%8hdqd`v)pyJz@*pD-NVFymM zh~WHOR-*S!kIN`oqW?^@$flvX6oSTPx~`TjHO%xaFx^jQc^qx*<3ysur}U09`Ndct zPJJk+w|;z@smXcHiwDN(^hCjv(E!wKJ@&OGW^{N_rr^o6m7%(FL(7%V`l_>7RbRO2Dur#CsU1F5fgq2N4=^`qL00C(KUUVed!B43R36G zhUOr@PB5~X_UD<5L}tnYnIIslF9TQW--oa z@lLm%y>3+n>37%ZGBdBMejm&D-RW^y>cbS3QqpXw(b5~|N$8+bsqQ3~B11e8a(J7c zy1G0U8XtHVGb5FdIv+)LfP^FO6uoN)>G-7l&B&oxzc~TRF_EoIlAPEcoClHbZArbW-JVve~!s<3XQz8%u_*j8WF6+~5THuZ6$WZ;UwF1UtsJZ;)a`*v(! zp;66Dx1k7YvE}*iWVs2zP}$s>S7CfK>J`0}`0o3F*P~PyPLgT9{H)0g58b z2yA0mkh4kWpPG(W*>oNRuZbJ)5|r&6T7t3NHNm>>hrck!CYkq9Z_Csh4dN`?B zNH-07(C&tDHLr4CYTo2OW_%i=HGq)wD2shf6G>6injQH9W z=n!^=R}68Y&-z4H-xb2<Rhjl9+V7Y_-)UgHs0czs#&_ zY}b;hiPyfezC})B3OkrZLTkk|HwQ1UDgWJLlwbn{^b)pDxR~lih{X3xQm>R*O5$d20>M74EXSRC&5ji z&&H3q2d5WbDRV#pt?Y~-exl@v3i$jr2{MhyB6P}waH6Fk4ikR+VraQRTomq2o!#=% zSyGbzIbAS8v*GdW?I3no&AvnSz_sWuKjB;EBhQLS{ERB-?=j>wrJ2q0< z+)IJ^;Oi8_5kP~627Gv3>OFj@zOtj%+Y)~SjcG)Ll&(F1MIYLPjhtD4CPsGUYeXap zP;*TlI>0IuPdgxFd%y0u&4d1i5>=QsVVF| zBw#-8Kg)jDJ2c@9XlrvI-vHRX-B%M~LdPPQ(*@By;qE8#7edM`)Hv{>-;no&Osw)bZXRTZHr z=$@EolrZfcw^S4v^1H@khq5Sv%b20uT7al=H{*mWtvLW#Q^X_2h8yfsKoQWjzU`p}BSGX~Yy(;Ds)JVXGSJMbeuIN2R|6PJR z?vRZl{<%(;4ET*rjV9fZTXxTZJ5(OkSaHXa$NtYKdJLwrBBqu8cWLpTM+g_vgQ?@p zCY{;vkwbAcG+qX2)ltou^T4UQ2he8rf*abW$sFJFS$Wdwz#p|Eo*1o;h#Q_q7nQy( znxOsrj^4svP6xMn??1=)Pl&|!0je<5lMS}>G8%ukin6SSGEzRhmM^skWhpXVqU>p} zx6YND5DwbK%MFI{j&xqCLH;H--?qkZB78&bZutvj&ZakEhyT}YL;!?n{|&?cVJ!+h z!~P-jLtLZpIq+F}gaAI2!~V1)j3U-r)}1#+7n9he!+VdSrXM_vP1g zj8;Y`Qy=ml>A(y1l%9A=v*-Vax`YT}3Z7^2LH{!>qaz=an^ zIK_4VqyxzKg_u7S;VW{`a>YaBS$lrP`(G%3&S6kcWx=(Fu({KRqmU<#C;02$1`)_j zphU*cUgNsVp57>MKr?l@^?vJR5>sW zQ2KBxE#FPA8b&V4>O69U+yeOm|& zfO}z|=l3-7H8-p5n=i)X2D6sBM=aHtdGakdRe?%Jpk0CZlj>#9Wk+o^>bY@lfa;!V8IRtaR<_jTab1xWXIV)1zi`*vrZ81@H~Xi62$fnQu8lDP_j*7w`y zoIiE+&jDeR$qOJSq_QPP0)yXw3Xv}I91!k#C)SxKnL%mqP1pCS7+2DA{;>v0Zsa`H z025vH>bIfJOmj%VKkpP2eNvWd9hx;lC~_Zg7HmQRehx5MjP*g#$wka^s2B5U^!=KBhTQVPDQqCF9c&*Hh9oy9B?-TvKkhJvZRJF#q)un2J0+uD)F$<6i+ZhQ zx$nah<92<#-ody_Jj=nDM$df~MpfSL7I7VwNXc^BPP__;1fOm(EXNv*r^V_v>ve>u z6nt;SYFd^k?v0uK>^73=Hh~eRGYt@0ndTVt|HX`V1Qd-pj;61r?Sly$WLZh2X9U<> zNRP<%3!=H)b;|M$D0UreNne%J=LY43`D%P5z1)V93y4&lYv^mB1a#A^JlG`c+-e%e zBtDR1hWYz0mFCEBwMmInBtG)(XNG#oKFlgnIw5P=r7Y;Pn#-f{VDASE+R$F{W^2ICm_8ufq!K6xPzWXk8%z~hV3 zCK>(*_5!RaS31g^2aZsi+;cX+tl|SeD@Hc?v`37OvFS!?cI&nO55~ozcPcWsp;lE>ytdk!&25WloH>s1^UMuZ1nHixL7)l?i*QM*)f< z9oGst37?cFfe}57Yc3}I*$y#bcuI5c)q!1=kVb3;TZ%?&`A1+rd+`V7K!b9%rXEKy zA&@`NO|ucoMGZI+UcrQCQsTh`xP1B#guzMPBPdZ*SXIV9G%{Eq8{knZq#&ler-8m@@}fOs2-D*5?5Q7l12fogP!hwQ`Nymk*X`H4U&a z?mJnsE1p%mwjS$u05gg86OgQjQY0n*l@``S`}=T*saKSxdp>&}kN{9LkxN;|I=Y5r zh7yzisQFng@ZkdLC=DLX);1;P0>ZJ6?P&4HV!ri8}dS2|ElRl@E zqJx9B<{nCQLNs%yfqwJX=sc)iQ^{}pTzv)j!n#-&t_!*M(AO~YBFrDyFq}5|NXbBCKfU&9YBK$ZBDresFE-{2vq~TSuM&?Ray8n~F_^07C`f!J-IBk2b4r za~|5$=cU2@n^YjI`GV}^T%9*{s~pl=f5cu2~) zH4gXu-a1tKtn?{7R(y&qAALsfxvcn_3K z(w*Er|Is6p#nvMn48pfLnI2*rtiYOv%grjn?WJt?NeMtonl*g0;tR+KAI??+0DBdh zZeZ_>2?8QvP5g^1Yk>d#ki;l%=WN~b7-m&(%p0bB5bS63x`ox~1Z%al-)+|D=psb4 ziiEYCd#wSQ_Kgx5K)8vS=HHHC#q0+OHWQ=&v&aVA6sElmnf?teE#NsK7?OTy;XeoV zq5v!%iHiEc!boMbr2XJ8Nj~K;+;6kSQHE~R%iJ>6SX8_&8)Z*M3DO@54njZ< zqB4N=rG+7l#fC}&E-T}(5}iGbQTAUE_pEf6FV=RSOhd(!e)NDz+T+DLCdXS*@Zj7y zZ7|0xa&--M6QHg^q4J-h2(Y){IYgd;;FfFEe*s#dg3SBkk8hzVsu{S}^o)NVrnJh8 z?EYq0W??fr^f&@m0br*3Klpqlg0BC__yPR0$}n~5WHu$^zosvmz)_+|jwW8nz&(Mz z4*Ctkn_1SMnl;>cHaDZXjnNl_p1HUKAU+*iAY91zo5C9OfJ?Vv0xT}!kj3PlREtj* z(WM|Fl+C~ktKZS2d&%Bu05ObH1;s}|*cD9vNfO}c-LdfiZL`&G5PWZDU79qAAOia1 zztD|cMQ(qc4q~K$oi#hmWLW)&E8Jemjqj~3@#{WrCf>jW*QPaL~4LXQ$-QC9Rm+n9sEuf_s$IQ&2T z6mTL5GzR)Dz{TFR=za&-z+jF(W<6M3G7@;+=96IPZB#J=|Bose5FEH>a74<%{`a=I zm&cAEf!c0<8iCgq)NIHaN-vh5vKkA-bEDo~_tsXLC>K`B(i&7U9Q{lcn25xHPn82& zaWgRJpYa3`ZWapuj|I}VZ%m$G{@{VX>SN_U0mZnXTGBrwy#{P6;oW{k54sQ+{SU}zrENC-wt zuFDXK3=vYpt^!2>FJ<$b?IUvDYq;K5Z@8%ORYQT?QkT{RjkuBx!X@uw6X3I;Zih{B zAlD4C`_0L(Xnbx)RN*h1S;1zkE+GVX2sN<$dXQo+f$|@W9tSWQ|CgU~{^q$MJ3>v8 zf4ke8CwjJKhpaGgB!F)tlT9t|ihT*|fF9zz_-P(wEm(X|W*~4uQ0ZlE#^;0OJ7Tw6 zx5kD;PkhW+;qG}6h1F@mZ;d|*ZQ)4q3Qreg-kQ#x+SHgVG8b#Kq_CGLOB1GLV~aOpj zt?d_8n)Jm{5-%#BdvD`Y*TbjBGif{~>}BrZ&nPed07!rcnE`1C#ST5fl{4@=du9ER zPFcQvqX1y{34ACM_LD@Ki6no99T9u1Y>N#N9Mb5zF9ZngA#ns}DF;f&_bju$yP$OB zna+Dm8MBEpKs9XgDj)?x_x8n|0*oMlgJ+lMqJ1ef98R6Tiju#P(2v{uQ3t!`|5r3C zd*?pq+5BKvdoSAAr0wESU`P4rQS=mdn7!@VYqlNgpR9YCV#MmF0aX;gw>X4k(v@-@ zoR5Gw&W<O5L49OY!6z-2@Z^2@-=FY6AB zJ!>#!SX6E_i+#FX@!MpSpkCBeGV}5xBg%20^{nS|qQel;M zt^*$(k=a-#o<#Fvq*4t|Jq{UnNR=Y;Y-SFl zZd0X;vvGZ`AKW(4XUW9;e(~o-0zJHs=OdTn)g#qQ4iT;W9&1&c7lVW5jg2SC3R}Xg z(?-Wl6<%Ih-mE9)+~e-^T4#xq-z72g2lUhJ4YX` zBcs8L|G_Y|6d9h+b_xqWx2$=g77lt^S~Y%&2FSH8 z4L*hxhIgIR)LqM<)pby~LT|AC} z5%}yV>B5wJ3nv{>!)1QuP?DX~)a}_BwzH;TbY~#<)ooOHKHzwWYw3ij%cDM>fxRR5 z@vLImbfn~v)#E!&XL1$Khv>KyX!c7o?AB8|r;Snzt9#vZ%MY3(R(@@DWl9p!Z}h|* zWi@)oB)qRKcM>01HwRxPLm-EA1Bq|86bAQK(x$h6nXCAo;O)=1hh$7t)YP%w?{Gqs zmp8)VWbV6Jb-x|mV9;*t-kvgQo}bx`|8}qU;=!o2corGmbL|@yMBNh&Bu_aPzmH!Aj*|fGIyEgZWcw#Tk9-m!OV*WqB%2}*_^TWM zCAIBo%{$)hY$Z{$MC6%UED(#bg<4g96;Kl4%?W0YouncH#o?+HL#i+=qYW7wMgj$i zp<*G}n#|zwavjoPonq6E956%$+odHV(fm}VG#Im)!5zNq4%qBGN&*D&lb|Z@Z}%vt zjgMAZ21ei*E$SHGx=}01KEdpTaT;|g-r-5i*uNyxM`yp5jM^p_;=bxxcB82A^{n49 zB;@RuMSs{#WJnJ>c+Wl6?Cb0gt(OX9W~yApfj;^w)@7hi%+zi=oG#TfiCnItwon8U z>9pEZo_k(Nc4{1#0&9o}!u)nl+7!j?ZH$XxmdWEtkj|pci1mjzCVnc(cF7$QK_90j z*bQlIL~GR{u@fYh9;6e#OD!GsfUm}g8PWmB)1e?T^S(5BszuM^+B*llul7z@U1(E; z=lzyeq-*G^^)FRn^*S9om=zaUI?AylS-N?4wJ2FT%JJyi_HB%P^4RwXS6=k-X7SZ8 z6a4SJr(E5u)fLk^ZWfH!dg9dn?p+7E@eyHJUOszPs4Jv<^WW3Otk03@bDG%d&nsv`b~a!_AW!iVA`-(zU)uRe2L&Mj^QVYANo-sg}Ic; zL?9!#JL6m!2Np-jho>qtfzC6Joln5+s) zE`43)M?YJ*lmOV!5~L4cR*#d2{D(`>p=uxR!+QLL$<{d2(#calTSmWKrD5I|P^+3% z_YoYGHtUO=#4{7FVpSeHkZvJA%WyhF`MbYXMnZN*wtg-BJPZ6Ipb+ho?l()`!8pz~ zGaU-Baw31&^NpLcQsW!QJ3%XlR4mn_w@Z5^ueBG>1PZ1{Vg?(2$>O|F>519nsnBX@ z>WsOo5Z6{3D4LG3_0(-j54qQ_9^0l?xGll&ou1QJimdkx#_n%jf}3q|>U_z+hYUVy zvqq)f8RzW0w)l3y1ubxOiAkK|7(~zkSNP;cbEQ7G5%M0qE|L_wxZ-m7saC9i{c%@S zFjm{1s3obea)B9$=lJ0e8Ga|?#!6kz4Ila`mz*J5A}>J6EjKiNar3SRnI?u~zkgB9 zZjN&6k{UN^pjUA^bE(rDU)!7r?9%uAj3kO)syv)}fyR*-1hDdH7?&spxei#)G$$86 zOUvwQnZh4gHPgeocp)-41oxaoppye?C8}V5AHyNhp1hR;fPqH_4^*01E3t_#fKyKG ziwyA2m8>8%<;p%UaR^opvTaqrmH2*E`B$(5*upu)Y8)hFh7+na%CUq@%#6Qv7JmMh zjEiB5Vgiu5fX;J68q#l78+ER)-@BWyX*I7Oa_c3=Yrm#_#K)XlkDuTAKSJ$fj-4Ly z)2&8^{4y+_wzZw~N=-%mMAA0-Q^gu=2cgQgKgFL@rx#!7Czne-4{BdZX=IO*~`2)Mx zXrV5y$7V@^vT7o+k~Ki24cFt?Wa<%abhEQ%Doj!I`<}i}Tr6I0YXuV{!&fT? zo?6%C&yARuELum)O5cr=JUe=8$ZN-4ZdPRUz>Yg!*X~s2R_Bs6Q4 z2cOP(s|_!v8wOGy{NpLUYv*zB(kuo|SqXz!8)Uujw9!t@-NW3KPgp`{_FR!^xgz>x zqkv?Aoqdbf&xU!rlV4vTtEpd`7oe+CAL+E>9$o<84CBK+f7lMxnJyWbXoNby4gB>( zgnItrXUrWPnyfqc5*@Ig(a`kREH(8N&SG-X&Hf{Mb`0YgNWEQ6>}NW7tT2WPD+}WX!p97s9%du&0+5zDu}xm+9tRdLsX>N}=4J2a@Ks zs|y(#=HT4CC^*TRo<*Ksu&Kl%)H~~cO~A2kzw;rz@{FZ>K~i+_(T3m;V`WXwA4%(k zM%oJ)5Y-?9Sgx733%Kw7hyYsTHsrW$m^o0NU&A5)vjCmD*>R&Am@TKTQxg5Fvpa?l zX7IeMQBQ#W$wqam%fVL$d{cjXYnt6w+FrRyYY_&lk*9Ss*G%H`jlRK zhYCL4CHn69fz>56j2rap!Gj^t36a0m0XElN?zPHF!RRtY9)tx|I=gGE0D;z%{?}FA zXWHw*BKNNuC(d<-gCrn*zhY>0Tw~+lX6}G~7q>m4E@WX+tKw}g5(YjfxEhIjSlxjgp}c2pb^8j?FdIh~Yzo841v$rAC$_c>C;1Y3kS-R_L0~ip^D%v z3L#V~7iS`E^ReZd*S-G&{xsi?$9aktUYCI@xm%5T2ypdFNj%eAnX{T}Qgs$i+?$UM zJx+i2X5R-^v{hgLvbXu)CrNB;V@&hVn*rkTEBSeQn+BUb4)uc~%BMkE-wkrra04oiD*;n&QzunU%p`Pwpz!0@TpCpe6g49W>`QXc}lhyYO0I%Km=n}H5 z{|tj9W9ifPn>_55YjtIZ3C&knRbaCwkoj01n<}yien1hTZf<|O<2uQ#0iU$R$F4$2 z=8FijrOy0vXFFA9)x@F+ofzrAR74vuWboyT)kaMROJ=NvAZg0rAk~Q~OZvAw4l5X0 zUBZZJmAdoNo}8Dn6%_RXF$yOUbOM|r^yobW=|owIz{PbHemWog5xE~Q6*$P8E_RHR z#drK72)+oc-`PESaOQuvze@m^E75=snb+g?Xx8JTxzLB*`bum6r~uC3`mILW&3~Un zQ{FoQb`XjCnGRN)`@2?hDXkPWch^~2Dg9HA&`5O0LuCCQzd+Ai5|9Kn8RPM+Q5kkT z*UmOsy*IEcTX2(h!f^3+t3x>XmV)4%8$TlG67Im1K@Y zn1O`mT6jzesk(FlpYywymU;E~?9U;p{9M0VeCym6+C8W}9$S)@s)?e1Po?wMwF;JP zPUu%A6bfi=m@>W1eaE3=P?a+{g=Vf&l_P_g6q9Bp--A}7Yo2B$DVn=Nl#IpK2sz1-#=iooR6S1S0kky~JO zf3t8h0g!($;+@vMFiWcn_4Dp^dqlqExjbx>bKI>JFf_u!F>(Ybi-w50+%y|z*^)ko zI}3gv5ezsmf;C^m*x{_+EnEV`1Ip`$3Vr5B7qcx{SX+b;2b%eLv(($U-I#}+-xgY> zW!_$Hw%-dXsXAe!$KK>87o1kUVIyZ;_b&46`-p6>F;1RL^$J5fLJ_?SI~yR{Cvb>tl4gcS|gp_-$c zo*Ry1k$))-zofsMaJcoNz2WaJb6s!Q>I-AHiPVdYiU}*PzMBp{nU3`4@4O@) z>PQyqt&!UN2PcouJ8>R(ehms%WPntSXS!+Dr=YKX2oBslI9=4kF>Ri|sxIHXL-x>d zz1ECyWp?JHm#zsEBv&gcS-uC%f%il(EG*|Bu z0#L6(^t{G9&Z!;lwUeb4q1M*4Sc4M!Qml=U8KdE=!&^&D9L9 zb8yLe_-imkM=q@A3VXQkpev(pxOvCBVM1X=XW$HYG$h z56t5Vofm*fsm&#U9UUyfJiH}7QzSgH14wyoE*UjMX&~r^^}=LnfyPq|xdmG;<+3)> z--oluhg)0y2{0tT!2v?7ehN8Lixiuu8K3=bMtiy;ma`sS9N9MYW3+B{A4uY5uAY<8 ztd8(>Bh=+f!3P;ccH`S>kpllAQCiwXK_#`a`Q6~^T8gB5iKc3ppu9}!zXjzI?s>U* z-*BDLS-NYm^qJ1mQVsdEKcJji=M&go)uCXx#qlIc&)JF|eL~dbCrnD7c<%r@tRquOn(TX75RYsz(q-~k7d>Lb*z zMpf^Aj*Ik>RWGH5BXW3M=P$@(*g>ULy&WWS+Uyj(>4ugQkIf4%0D6s{PR%z8-Unw5 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 CCZ*N@ literal 0 HcmV?d00001 diff --git a/docs/images/mapq_tenant_burst_visualization.png b/docs/images/mapq_partitioned_queue_tree_example.png similarity index 100% rename from docs/images/mapq_tenant_burst_visualization.png rename to docs/images/mapq_partitioned_queue_tree_example.png From 5f8a649d87f694bc5c0f19e0456527097cb87e21 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Thu, 13 Jun 2024 10:52:24 -0700 Subject: [PATCH 5/9] readme update --- common/mapq/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/mapq/README.md b/common/mapq/README.md index 2d6ec55ad93..8584a1a2b0b 100644 --- a/common/mapq/README.md +++ b/common/mapq/README.md @@ -62,4 +62,4 @@ Once initialized the tree will have a minimal number of nodes provided in the po #### Dispatch Flow -![MAPQ enqueue flow](../../docs/images/mapq_enqueue_flow.png) +![MAPQ enqueue flow](../../docs/images/mapq_dispatch_flow.png) From 8c3427232e2190a427caef74637202da7be15274 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Thu, 13 Jun 2024 16:39:20 -0700 Subject: [PATCH 6/9] minor updates --- common/mapq/client_impl_test.go | 52 +++++++++++++++++++++++ common/mapq/dispatcher/dispatcher.go | 15 +++---- common/mapq/dispatcher/dispatcher_test.go | 7 ++- common/mapq/types/consumer.go | 2 +- common/mapq/types/policy.go | 22 +--------- 5 files changed, 65 insertions(+), 33 deletions(-) diff --git a/common/mapq/client_impl_test.go b/common/mapq/client_impl_test.go index 1df5470e0a3..c5c84d99098 100644 --- a/common/mapq/client_impl_test.go +++ b/common/mapq/client_impl_test.go @@ -107,3 +107,55 @@ func TestStartStop(t *testing.T) { cl.Start(context.Background()) defer cl.Stop(context.Background()) } + +func TestAck(t *testing.T) { + ctrl := gomock.NewController(t) + consumerFactory := types.NewMockConsumerFactory(ctrl) + consumer := types.NewMockConsumer(ctrl) + consumerFactory.EXPECT().Stop(gomock.Any()).Return(nil).Times(1) + consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(1) + opts := []Options{ + WithPersister(types.NewMockPersister(ctrl)), + WithConsumerFactory(consumerFactory), + } + logger := testlogger.New(t) + scope := metrics.NoopScope(0) + cl, err := New(logger, scope, opts...) + if err != nil { + t.Fatalf("New() error: %v", err) + } + + cl.Start(context.Background()) + defer cl.Stop(context.Background()) + + err = cl.Ack(context.Background(), nil) + if err != nil || err.Error() != "not implemented" { + t.Errorf("Ack() error: %v, want %v", err, "not implemented") + } +} + +func TestNack(t *testing.T) { + ctrl := gomock.NewController(t) + consumerFactory := types.NewMockConsumerFactory(ctrl) + consumer := types.NewMockConsumer(ctrl) + consumerFactory.EXPECT().Stop(gomock.Any()).Return(nil).Times(1) + consumerFactory.EXPECT().New(gomock.Any()).Return(consumer, nil).Times(1) + opts := []Options{ + WithPersister(types.NewMockPersister(ctrl)), + WithConsumerFactory(consumerFactory), + } + logger := testlogger.New(t) + scope := metrics.NoopScope(0) + cl, err := New(logger, scope, opts...) + if err != nil { + t.Fatalf("New() error: %v", err) + } + + cl.Start(context.Background()) + defer cl.Stop(context.Background()) + + err = cl.Nack(context.Background(), nil) + if err != nil || err.Error() != "not implemented" { + t.Errorf("Ack() error: %v, want %v", err, "not implemented") + } +} diff --git a/common/mapq/dispatcher/dispatcher.go b/common/mapq/dispatcher/dispatcher.go index a96289dcc45..99419d9d395 100644 --- a/common/mapq/dispatcher/dispatcher.go +++ b/common/mapq/dispatcher/dispatcher.go @@ -40,14 +40,16 @@ type Dispatcher struct { } func New(c types.Consumer) *Dispatcher { + ctx, cancelCtx := context.WithCancel(context.Background()) return &Dispatcher{ - consumer: c, + consumer: c, + ctx: ctx, + cancelCtx: cancelCtx, } } func (d *Dispatcher) Start(ctx context.Context) error { d.wg.Add(1) - d.ctx, d.cancelCtx = context.WithCancel(ctx) go d.run() return nil } @@ -65,13 +67,6 @@ func (d *Dispatcher) Stop(ctx context.Context) error { } func (d *Dispatcher) run() { - d.wg.Done() + defer d.wg.Done() // TODO: implement - for { - select { - case <-d.ctx.Done(): - return - default: - } - } } diff --git a/common/mapq/dispatcher/dispatcher_test.go b/common/mapq/dispatcher/dispatcher_test.go index c28a290630c..3471866bfbb 100644 --- a/common/mapq/dispatcher/dispatcher_test.go +++ b/common/mapq/dispatcher/dispatcher_test.go @@ -25,6 +25,7 @@ package dispatcher import ( "context" "testing" + "time" "go.uber.org/goleak" ) @@ -33,12 +34,14 @@ func TestStartStop(t *testing.T) { defer goleak.VerifyNone(t) d := New(nil) - err := d.Start(context.TODO()) + err := d.Start(context.Background()) if err != nil { t.Fatalf("Start() failed: %v", err) } - err = d.Stop(context.TODO()) + ctx, cancel := context.WithTimeout(context.Background(), 50*time.Millisecond) + defer cancel() + err = d.Stop(ctx) if err != nil { t.Fatalf("Stop() failed: %v", err) } diff --git a/common/mapq/types/consumer.go b/common/mapq/types/consumer.go index 6bc4dc24235..b636de22c2b 100644 --- a/common/mapq/types/consumer.go +++ b/common/mapq/types/consumer.go @@ -24,7 +24,7 @@ package types import "context" -//go:generate mockgen -package $GOPACKAGE -source $GOFILE -destination consumer_mock.go -package types github.com/uber/cadence/common/mapq/types ConsumerFactor,Consumer +//go:generate mockgen -package $GOPACKAGE -source $GOFILE -destination consumer_mock.go -package types github.com/uber/cadence/common/mapq/types ConsumerFactory,Consumer type ConsumerFactory interface { // New creates a new consumer with the given partitions or returns an existing consumer diff --git a/common/mapq/types/policy.go b/common/mapq/types/policy.go index 27865a1c923..8db1f49f898 100644 --- a/common/mapq/types/policy.go +++ b/common/mapq/types/policy.go @@ -44,6 +44,7 @@ func (dp DispatchPolicy) String() string { } type SplitPolicy struct { + // Disabled is used to disable the split policy for the node. Disabled bool `json:"disabled,omitempty"` // PredefinedSplits is a list of predefined splits for the attribute key @@ -52,29 +53,10 @@ type SplitPolicy struct { // The max number of children to split the node into. MaxNumChildren int `json:"maxNumChildren,omitempty"` - - // Strategy for splitting the node - Strategy *SplitStrategy `json:"strategy,omitempty"` } func (sp SplitPolicy) String() string { - return fmt.Sprintf("SplitPolicy{Disabled:%v, PredefinedSplits:%v, MaxNumChildren:%d, Strategy:%s}", sp.Disabled, sp.PredefinedSplits, sp.MaxNumChildren, sp.Strategy) -} - -type SplitStrategy struct { - // Split items into child queues when the RPS of items sharing same attribute value for given key - // exceeds this threshold - // If 0, then no split by RPS - SplitEnqueueRPSThreshold int `json:"splitRPSThreshold,omitempty"` - - // Enable burst detection for this level - // If enabled, then the node will keep track of the burst score per item group (grouped by attribute value) - // and split the node if the burst score exceeds the threshold - EnableBurstDetection bool `json:"enableBurstDetection,omitempty"` -} - -func (ss SplitStrategy) String() string { - return fmt.Sprintf("SplitStrategy{SplitEnqueueRPSThreshold:%d, EnableBurstDetection:%v}", ss.SplitEnqueueRPSThreshold, ss.EnableBurstDetection) + return fmt.Sprintf("SplitPolicy{Disabled:%v, PredefinedSplits:%v, MaxNumChildren:%d}", sp.Disabled, sp.PredefinedSplits, sp.MaxNumChildren) } type NodePolicy struct { From 2aaa4a0b058b76ce12daf56785b94c896b299b41 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Thu, 13 Jun 2024 17:19:28 -0700 Subject: [PATCH 7/9] remove unused fields from policy --- common/mapq/client_impl_test.go | 8 ++++---- common/mapq/example_test.go | 5 ----- common/mapq/types/policy.go | 5 +---- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/common/mapq/client_impl_test.go b/common/mapq/client_impl_test.go index c5c84d99098..2d49aa08fa4 100644 --- a/common/mapq/client_impl_test.go +++ b/common/mapq/client_impl_test.go @@ -129,8 +129,8 @@ func TestAck(t *testing.T) { defer cl.Stop(context.Background()) err = cl.Ack(context.Background(), nil) - if err != nil || err.Error() != "not implemented" { - t.Errorf("Ack() error: %v, want %v", err, "not implemented") + if err == nil || err.Error() != "not implemented" { + t.Errorf("Ack() error: %q, want %q", err, "not implemented") } } @@ -155,7 +155,7 @@ func TestNack(t *testing.T) { defer cl.Stop(context.Background()) err = cl.Nack(context.Background(), nil) - if err != nil || err.Error() != "not implemented" { - t.Errorf("Ack() error: %v, want %v", err, "not implemented") + if err == nil || err.Error() != "not implemented" { + t.Errorf("Ack() error: %q, want %q", err, "not implemented") } } diff --git a/common/mapq/example_test.go b/common/mapq/example_test.go index f32e5bf8e76..0bc79bee91b 100644 --- a/common/mapq/example_test.go +++ b/common/mapq/example_test.go @@ -84,15 +84,10 @@ func TestExample(t *testing.T) { // level 2: nodes per pairs // - default 1000 RPS for per sub-type node // - split by domain. predefined split for d3 domain - // - allow top 5 domains to be split based on burst { Path: "*/./.", SplitPolicy: &types.SplitPolicy{ - MaxNumChildren: 5, // allow top 4 tomains to be split. 5th domain will be catch-all PredefinedSplits: []any{"d3"}, - Strategy: &types.SplitStrategy{ - SplitEnqueueRPSThreshold: 100, - }, }, }, // override for timer delete history event: diff --git a/common/mapq/types/policy.go b/common/mapq/types/policy.go index 8db1f49f898..cd1fda72386 100644 --- a/common/mapq/types/policy.go +++ b/common/mapq/types/policy.go @@ -50,13 +50,10 @@ type SplitPolicy struct { // PredefinedSplits is a list of predefined splits for the attribute key // Child nodes for these attributes will be created during initialization PredefinedSplits []any `json:"predefinedSplits,omitempty"` - - // The max number of children to split the node into. - MaxNumChildren int `json:"maxNumChildren,omitempty"` } func (sp SplitPolicy) String() string { - return fmt.Sprintf("SplitPolicy{Disabled:%v, PredefinedSplits:%v, MaxNumChildren:%d}", sp.Disabled, sp.PredefinedSplits, sp.MaxNumChildren) + return fmt.Sprintf("SplitPolicy{Disabled:%v, PredefinedSplits:%v}", sp.Disabled, sp.PredefinedSplits) } type NodePolicy struct { From 9733ab06ae3cfa5faeafc76a00feb46acd1b8987 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Mon, 24 Jun 2024 10:47:48 -0700 Subject: [PATCH 8/9] fixes --- common/mapq/example_test.go | 2 +- common/mapq/types/item.go | 24 ++++++++++++------------ common/mapq/types/item_test.go | 4 ++-- common/mapq/types/offsets.go | 3 ++- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/common/mapq/example_test.go b/common/mapq/example_test.go index 0bc79bee91b..c1f3284f94a 100644 --- a/common/mapq/example_test.go +++ b/common/mapq/example_test.go @@ -201,7 +201,7 @@ func (p *InMemoryPersister) Persist(ctx context.Context, items []types.ItemToPer for _, item := range items { partitionsKV := map[string]any{} actualKV := map[string]any{} - for _, k := range item.GetPartitions() { + for _, k := range item.GetPartitionKeys() { partitionsKV[k] = item.GetPartitionValue(k) actualKV[k] = item.GetAttribute(k) } diff --git a/common/mapq/types/item.go b/common/mapq/types/item.go index f2c18bc30a9..7304c19aea7 100644 --- a/common/mapq/types/item.go +++ b/common/mapq/types/item.go @@ -53,8 +53,8 @@ func NewItemToPersist(item Item, itemPartitions ItemPartitions) ItemToPersist { } type ItemPartitions interface { - // GetPartitions returns the partition keys ordered by their level in the tree - GetPartitions() []string + // GetPartitionKeys returns the partition keys ordered by their level in the tree + GetPartitionKeys() []string // GetPartitionValue returns the partition value to determine the target queue // e.g. @@ -68,20 +68,20 @@ type ItemPartitions interface { String() string } -func NewItemPartitions(partitions []string, partitionMap map[string]any) ItemPartitions { +func NewItemPartitions(partitionKeys []string, partitionMap map[string]any) ItemPartitions { return &defaultItemPartitions{ - partitions: partitions, - partitionMap: partitionMap, + partitionKeys: partitionKeys, + partitionMap: partitionMap, } } type defaultItemPartitions struct { - partitions []string - partitionMap map[string]any + partitionKeys []string + partitionMap map[string]any } -func (i *defaultItemPartitions) GetPartitions() []string { - return i.partitions +func (i *defaultItemPartitions) GetPartitionKeys() []string { + return i.partitionKeys } func (i *defaultItemPartitions) GetPartitionValue(key string) any { @@ -89,7 +89,7 @@ func (i *defaultItemPartitions) GetPartitionValue(key string) any { } func (i *defaultItemPartitions) String() string { - return fmt.Sprintf("ItemPartitions{partitions:%v, partitionMap:%v}", i.partitions, i.partitionMap) + return fmt.Sprintf("ItemPartitions{partitionKeys:%v, partitionMap:%v}", i.partitionKeys, i.partitionMap) } type defaultItemToPersist struct { @@ -109,8 +109,8 @@ func (i *defaultItemToPersist) GetAttribute(key string) any { return i.item.GetAttribute(key) } -func (i *defaultItemToPersist) GetPartitions() []string { - return i.itemPartitions.GetPartitions() +func (i *defaultItemToPersist) GetPartitionKeys() []string { + return i.itemPartitions.GetPartitionKeys() } func (i *defaultItemToPersist) GetPartitionValue(key string) any { diff --git a/common/mapq/types/item_test.go b/common/mapq/types/item_test.go index 940a959b88d..78536746373 100644 --- a/common/mapq/types/item_test.go +++ b/common/mapq/types/item_test.go @@ -59,9 +59,9 @@ func TestNewItemToPersist(t *testing.T) { t.Errorf("itemToPersist.GetAttribute(attr2) = %v, want %v", got, "value2") } - gotPartitions := itemToPersist.GetPartitions() + gotPartitions := itemToPersist.GetPartitionKeys() if diff := cmp.Diff(partitions, gotPartitions); diff != "" { - t.Fatalf("Partitions mismatch (-want +got):\n%s", diff) + t.Fatalf("Partition keys mismatch (-want +got):\n%s", diff) } if got := itemToPersist.GetPartitionValue("attr1"); got != "*" { t.Errorf("itemToPersist.GetPartitionValue(attr1) = %v, want %v", got, "*") diff --git a/common/mapq/types/offsets.go b/common/mapq/types/offsets.go index b8482de5e80..f53177b7781 100644 --- a/common/mapq/types/offsets.go +++ b/common/mapq/types/offsets.go @@ -22,6 +22,7 @@ package types +// Offsets encapsulates the whole queue tree state including the offsets of each leaf node type Offsets struct { - // TODO: define offsets + // TODO: complete } From 2643b5871529b2b106485f767aebe0dc4bfb2256 Mon Sep 17 00:00:00 2001 From: taylan isikdemir Date: Mon, 24 Jun 2024 11:16:08 -0700 Subject: [PATCH 9/9] update mock --- common/mapq/types/item_mock.go | 56 +++++++++++++++++----------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/common/mapq/types/item_mock.go b/common/mapq/types/item_mock.go index 1d54875834d..91e62580033 100644 --- a/common/mapq/types/item_mock.go +++ b/common/mapq/types/item_mock.go @@ -134,32 +134,32 @@ func (mr *MockItemToPersistMockRecorder) GetAttribute(key interface{}) *gomock.C return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAttribute", reflect.TypeOf((*MockItemToPersist)(nil).GetAttribute), key) } -// GetPartitionValue mocks base method. -func (m *MockItemToPersist) GetPartitionValue(key string) any { +// GetPartitionKeys mocks base method. +func (m *MockItemToPersist) GetPartitionKeys() []string { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetPartitionValue", key) - ret0, _ := ret[0].(any) + ret := m.ctrl.Call(m, "GetPartitionKeys") + ret0, _ := ret[0].([]string) return ret0 } -// GetPartitionValue indicates an expected call of GetPartitionValue. -func (mr *MockItemToPersistMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { +// GetPartitionKeys indicates an expected call of GetPartitionKeys. +func (mr *MockItemToPersistMockRecorder) GetPartitionKeys() *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitionValue), key) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionKeys", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitionKeys)) } -// GetPartitions mocks base method. -func (m *MockItemToPersist) GetPartitions() []string { +// GetPartitionValue mocks base method. +func (m *MockItemToPersist) GetPartitionValue(key string) any { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetPartitions") - ret0, _ := ret[0].([]string) + ret := m.ctrl.Call(m, "GetPartitionValue", key) + ret0, _ := ret[0].(any) return ret0 } -// GetPartitions indicates an expected call of GetPartitions. -func (mr *MockItemToPersistMockRecorder) GetPartitions() *gomock.Call { +// GetPartitionValue indicates an expected call of GetPartitionValue. +func (mr *MockItemToPersistMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitions", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitions)) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemToPersist)(nil).GetPartitionValue), key) } // Offset mocks base method. @@ -213,32 +213,32 @@ func (m *MockItemPartitions) EXPECT() *MockItemPartitionsMockRecorder { return m.recorder } -// GetPartitionValue mocks base method. -func (m *MockItemPartitions) GetPartitionValue(key string) any { +// GetPartitionKeys mocks base method. +func (m *MockItemPartitions) GetPartitionKeys() []string { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetPartitionValue", key) - ret0, _ := ret[0].(any) + ret := m.ctrl.Call(m, "GetPartitionKeys") + ret0, _ := ret[0].([]string) return ret0 } -// GetPartitionValue indicates an expected call of GetPartitionValue. -func (mr *MockItemPartitionsMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { +// GetPartitionKeys indicates an expected call of GetPartitionKeys. +func (mr *MockItemPartitionsMockRecorder) GetPartitionKeys() *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitionValue), key) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionKeys", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitionKeys)) } -// GetPartitions mocks base method. -func (m *MockItemPartitions) GetPartitions() []string { +// GetPartitionValue mocks base method. +func (m *MockItemPartitions) GetPartitionValue(key string) any { m.ctrl.T.Helper() - ret := m.ctrl.Call(m, "GetPartitions") - ret0, _ := ret[0].([]string) + ret := m.ctrl.Call(m, "GetPartitionValue", key) + ret0, _ := ret[0].(any) return ret0 } -// GetPartitions indicates an expected call of GetPartitions. -func (mr *MockItemPartitionsMockRecorder) GetPartitions() *gomock.Call { +// GetPartitionValue indicates an expected call of GetPartitionValue. +func (mr *MockItemPartitionsMockRecorder) GetPartitionValue(key interface{}) *gomock.Call { mr.mock.ctrl.T.Helper() - return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitions", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitions)) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetPartitionValue", reflect.TypeOf((*MockItemPartitions)(nil).GetPartitionValue), key) } // String mocks base method.