Skip to content

Commit 305b770

Browse files
rodrigozhouyycptt
authored andcommitted
Change disable order by dynamic config to per namespace (#4063)
1 parent 07cf951 commit 305b770

File tree

6 files changed

+14
-14
lines changed

6 files changed

+14
-14
lines changed

common/persistence/visibility/factory.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func NewManager(
6363
advancedVisibilityWritingMode dynamicconfig.StringPropertyFn,
6464
enableReadFromSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFnWithNamespaceFilter,
6565
enableWriteToSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFn,
66-
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFn,
66+
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter,
6767

6868
metricsHandler metrics.Handler,
6969
logger log.Logger,
@@ -201,7 +201,7 @@ func NewAdvancedManager(
201201

202202
advancedVisibilityPersistenceMaxReadQPS dynamicconfig.IntPropertyFn,
203203
advancedVisibilityPersistenceMaxWriteQPS dynamicconfig.IntPropertyFn,
204-
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFn,
204+
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter,
205205

206206
metricsHandler metrics.Handler,
207207
logger log.Logger,
@@ -320,7 +320,7 @@ func newAdvancedVisibilityStore(
320320
esProcessorConfig *elasticsearch.ProcessorConfig,
321321
searchAttributesProvider searchattribute.Provider,
322322
searchAttributesMapperProvider searchattribute.MapperProvider,
323-
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFn,
323+
visibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter,
324324
metricsHandler metrics.Handler,
325325
logger log.Logger,
326326
) store.VisibilityStore {

common/persistence/visibility/store/elasticsearch/visibility_store.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ type (
7474
searchAttributesMapperProvider searchattribute.MapperProvider
7575
processor Processor
7676
processorAckTimeout dynamicconfig.DurationPropertyFn
77-
disableOrderByClause dynamicconfig.BoolPropertyFn
77+
disableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter
7878
metricsHandler metrics.Handler
7979
}
8080

@@ -103,7 +103,7 @@ func NewVisibilityStore(
103103
searchAttributesMapperProvider searchattribute.MapperProvider,
104104
processor Processor,
105105
processorAckTimeout dynamicconfig.DurationPropertyFn,
106-
disableOrderByClause dynamicconfig.BoolPropertyFn,
106+
disableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter,
107107
metricsHandler metrics.Handler,
108108
) *visibilityStore {
109109

@@ -679,7 +679,7 @@ func (s *visibilityStore) buildSearchParametersV2(
679679
// using a field that was not indexed by ES. Since slow queries can block
680680
// writes for unreasonably long, this option forbids the usage of ORDER BY
681681
// clause to prevent slow down issues.
682-
if s.disableOrderByClause() && len(fieldSorts) > 0 {
682+
if s.disableOrderByClause(request.Namespace.String()) && len(fieldSorts) > 0 {
683683
return nil, serviceerror.NewInvalidArgument("ORDER BY clause is not supported")
684684
}
685685

common/persistence/visibility/store/elasticsearch/visibility_store_read_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ func (s *ESVisibilitySuite) SetupTest() {
119119
s.Assertions = require.New(s.T())
120120

121121
esProcessorAckTimeout := dynamicconfig.GetDurationPropertyFn(1 * time.Minute * debug.TimeoutMultiplier)
122-
visibilityDisableOrderByClause := dynamicconfig.GetBoolPropertyFn(false)
122+
visibilityDisableOrderByClause := dynamicconfig.GetBoolPropertyFnFilteredByNamespace(false)
123123

124124
s.controller = gomock.NewController(s.T())
125125
s.mockMetricsHandler = metrics.NewMockHandler(s.controller)
@@ -493,7 +493,7 @@ func (s *ESVisibilitySuite) TestBuildSearchParametersV2DisableOrderByClause() {
493493
matchNamespaceQuery := elastic.NewTermQuery(searchattribute.NamespaceID, request.NamespaceID.String())
494494

495495
// disable ORDER BY clause
496-
s.visibilityStore.disableOrderByClause = dynamicconfig.GetBoolPropertyFn(true)
496+
s.visibilityStore.disableOrderByClause = dynamicconfig.GetBoolPropertyFnFilteredByNamespace(true)
497497

498498
// test valid query
499499
request.Query = `WorkflowId="guid-2208"`

service/frontend/service.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ type Config struct {
6767
EnableReadVisibilityFromES dynamicconfig.BoolPropertyFnWithNamespaceFilter
6868
EnableReadFromSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFnWithNamespaceFilter
6969
ESIndexMaxResultWindow dynamicconfig.IntPropertyFn
70-
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFn
70+
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter
7171

7272
HistoryMaxPageSize dynamicconfig.IntPropertyFnWithNamespaceFilter
7373
RPS dynamicconfig.IntPropertyFn
@@ -186,7 +186,7 @@ func NewConfig(dc *dynamicconfig.Collection, numHistoryShards int32, enableReadF
186186
EnableReadVisibilityFromES: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadVisibilityFromES, enableReadFromES),
187187
EnableReadFromSecondaryAdvancedVisibility: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadFromSecondaryAdvancedVisibility, false),
188188
ESIndexMaxResultWindow: dc.GetIntProperty(dynamicconfig.FrontendESIndexMaxResultWindow, 10000),
189-
VisibilityDisableOrderByClause: dc.GetBoolProperty(dynamicconfig.VisibilityDisableOrderByClause, false),
189+
VisibilityDisableOrderByClause: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.VisibilityDisableOrderByClause, false),
190190

191191
HistoryMaxPageSize: dc.GetIntPropertyFilteredByNamespace(dynamicconfig.FrontendHistoryMaxPageSize, common.GetHistoryMaxPageSize),
192192
RPS: dc.GetIntProperty(dynamicconfig.FrontendRPS, 2400),

service/history/configs/config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ type Config struct {
5555
EnableWriteToSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFn
5656
EnableReadVisibilityFromES dynamicconfig.BoolPropertyFnWithNamespaceFilter
5757
EnableReadFromSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFnWithNamespaceFilter
58-
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFn
58+
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter
5959

6060
EmitShardLagLog dynamicconfig.BoolPropertyFn
6161
MaxAutoResetPoints dynamicconfig.IntPropertyFnWithNamespaceFilter
@@ -323,7 +323,7 @@ func NewConfig(dc *dynamicconfig.Collection, numberOfShards int32, isAdvancedVis
323323
EnableWriteToSecondaryAdvancedVisibility: dc.GetBoolProperty(dynamicconfig.EnableWriteToSecondaryAdvancedVisibility, false),
324324
EnableReadVisibilityFromES: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadVisibilityFromES, isAdvancedVisibilityConfigExist),
325325
EnableReadFromSecondaryAdvancedVisibility: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadFromSecondaryAdvancedVisibility, false),
326-
VisibilityDisableOrderByClause: dc.GetBoolProperty(dynamicconfig.VisibilityDisableOrderByClause, false),
326+
VisibilityDisableOrderByClause: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.VisibilityDisableOrderByClause, false),
327327

328328
EmitShardLagLog: dc.GetBoolProperty(dynamicconfig.EmitShardLagLog, false),
329329
HistoryCacheInitialSize: dc.GetIntProperty(dynamicconfig.HistoryCacheInitialSize, 128),

service/worker/service.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ type (
121121
AdvancedVisibilityPersistenceMaxWriteQPS dynamicconfig.IntPropertyFn
122122
EnableReadVisibilityFromES dynamicconfig.BoolPropertyFnWithNamespaceFilter
123123
EnableReadFromSecondaryAdvancedVisibility dynamicconfig.BoolPropertyFnWithNamespaceFilter
124-
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFn
124+
VisibilityDisableOrderByClause dynamicconfig.BoolPropertyFnWithNamespaceFilter
125125
}
126126
)
127127

@@ -345,7 +345,7 @@ func NewConfig(dc *dynamicconfig.Collection, persistenceConfig *config.Persisten
345345
AdvancedVisibilityPersistenceMaxWriteQPS: dc.GetIntProperty(dynamicconfig.AdvancedVisibilityPersistenceMaxWriteQPS, 9000),
346346
EnableReadVisibilityFromES: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadVisibilityFromES, enableReadFromES),
347347
EnableReadFromSecondaryAdvancedVisibility: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.EnableReadFromSecondaryAdvancedVisibility, false),
348-
VisibilityDisableOrderByClause: dc.GetBoolProperty(dynamicconfig.VisibilityDisableOrderByClause, false),
348+
VisibilityDisableOrderByClause: dc.GetBoolPropertyFnWithNamespaceFilter(dynamicconfig.VisibilityDisableOrderByClause, false),
349349
}
350350
return config
351351
}

0 commit comments

Comments
 (0)