File tree Expand file tree Collapse file tree 2 files changed +77
-0
lines changed
providers/openfeature-provider-flagd/src/openfeature/contrib/provider/flagd/resolvers Expand file tree Collapse file tree 2 files changed +77
-0
lines changed Original file line number Diff line number Diff line change
1
+ import json
1
2
import logging
2
3
import threading
3
4
import time
@@ -80,6 +81,44 @@ def _generate_channel(self, config: Config) -> grpc.Channel:
80
81
("grpc.initial_reconnect_backoff_ms" , config .retry_backoff_ms ),
81
82
("grpc.max_reconnect_backoff_ms" , config .retry_backoff_max_ms ),
82
83
("grpc.min_reconnect_backoff_ms" , config .deadline_ms ),
84
+ (
85
+ "grpc.service_config" ,
86
+ json .dumps (
87
+ {
88
+ "methodConfig" : [
89
+ {
90
+ "name" : [
91
+ {"service" : "flagd.sync.v1.FlagSyncService" },
92
+ {"service" : "flagd.evaluation.v1.Service" },
93
+ ],
94
+ "retryPolicy" : {
95
+ "maxAttempts" : 3 ,
96
+ "initialBackoff" : "1s" ,
97
+ "maxBackoff" : "5s" ,
98
+ "backoffMultiplier" : 2.0 ,
99
+ "retryableStatusCodes" : [
100
+ "CANCELLED" ,
101
+ "UNKNOWN" ,
102
+ "INVALID_ARGUMENT" ,
103
+ "NOT_FOUND" ,
104
+ "ALREADY_EXISTS" ,
105
+ "PERMISSION_DENIED" ,
106
+ "RESOURCE_EXHAUSTED" ,
107
+ "FAILED_PRECONDITION" ,
108
+ "ABORTED" ,
109
+ "OUT_OF_RANGE" ,
110
+ "UNIMPLEMENTED" ,
111
+ "INTERNAL" ,
112
+ "UNAVAILABLE" ,
113
+ "DATA_LOSS" ,
114
+ "UNAUTHENTICATED" ,
115
+ ],
116
+ },
117
+ }
118
+ ]
119
+ }
120
+ ),
121
+ ),
83
122
]
84
123
if config .tls :
85
124
channel_args = {
Original file line number Diff line number Diff line change @@ -62,6 +62,44 @@ def _generate_channel(self, config: Config) -> grpc.Channel:
62
62
("grpc.initial_reconnect_backoff_ms" , config .retry_backoff_ms ),
63
63
("grpc.max_reconnect_backoff_ms" , config .retry_backoff_max_ms ),
64
64
("grpc.min_reconnect_backoff_ms" , config .stream_deadline_ms ),
65
+ (
66
+ "grpc.service_config" ,
67
+ json .dumps (
68
+ {
69
+ "methodConfig" : [
70
+ {
71
+ "name" : [
72
+ {"service" : "flagd.sync.v1.FlagSyncService" },
73
+ {"service" : "flagd.evaluation.v1.Service" },
74
+ ],
75
+ "retryPolicy" : {
76
+ "maxAttempts" : 3 ,
77
+ "initialBackoff" : "1s" ,
78
+ "maxBackoff" : "5s" ,
79
+ "backoffMultiplier" : 2.0 ,
80
+ "retryableStatusCodes" : [
81
+ "CANCELLED" ,
82
+ "UNKNOWN" ,
83
+ "INVALID_ARGUMENT" ,
84
+ "NOT_FOUND" ,
85
+ "ALREADY_EXISTS" ,
86
+ "PERMISSION_DENIED" ,
87
+ "RESOURCE_EXHAUSTED" ,
88
+ "FAILED_PRECONDITION" ,
89
+ "ABORTED" ,
90
+ "OUT_OF_RANGE" ,
91
+ "UNIMPLEMENTED" ,
92
+ "INTERNAL" ,
93
+ "UNAVAILABLE" ,
94
+ "DATA_LOSS" ,
95
+ "UNAUTHENTICATED" ,
96
+ ],
97
+ },
98
+ }
99
+ ]
100
+ }
101
+ ),
102
+ ),
65
103
]
66
104
if config .default_authority is not None :
67
105
options .append (("grpc.default_authority" , config .default_authority ))
You can’t perform that action at this time.
0 commit comments