Skip to content

Commit 8f2c438

Browse files
wentzeldjmank88
andauthored
Update limits (#1644)
* Update limits Update limits * cleanup --------- Co-authored-by: Jordan Krage <[email protected]>
1 parent 55948ff commit 8f2c438

File tree

4 files changed

+62
-79
lines changed

4 files changed

+62
-79
lines changed

pkg/settings/cresettings/defaults.json

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,37 @@
11
{
22
"WorkflowLimit": "200",
3-
"WorkflowExecutionConcurrencyLimit": "50",
3+
"WorkflowExecutionConcurrencyLimit": "200",
44
"WorkflowTriggerRateLimit": "200rps:200",
5-
"GatewayUnauthenticatedRequestRateLimit": "100rps:100",
6-
"GatewayUnauthenticatedRequestRateLimitPerIP": "1rps:1",
7-
"GatewayIncomingPayloadSizeLimit": "10kb",
5+
"GatewayIncomingPayloadSizeLimit": "1mb",
86
"PerOrg": {
97
"WorkflowDeploymentRateLimit": "every1m0s:1",
108
"ZeroBalancePruningTimeout": "24h0m0s"
119
},
1210
"PerOwner": {
13-
"WorkflowExecutionConcurrencyLimit": "50",
14-
"WorkflowTriggerRateLimit": "200rps:200"
11+
"WorkflowExecutionConcurrencyLimit": "5",
12+
"WorkflowTriggerRateLimit": "5rps:5"
1513
},
1614
"PerWorkflow": {
17-
"TriggerLimit": "10",
1815
"TriggerRateLimit": "every30s:3",
1916
"TriggerRegistrationsTimeout": "10s",
20-
"TriggerSubscriptionTimeout": "5s",
17+
"TriggerSubscriptionTimeout": "15s",
2118
"TriggerSubscriptionLimit": "10",
2219
"TriggerEventQueueLimit": "1000",
2320
"TriggerEventQueueTimeout": "10m0s",
2421
"CapabilityConcurrencyLimit": "3",
25-
"CapabilityCallTimeout": "8m0s",
26-
"SecretsConcurrencyLimit": "3",
27-
"ExecutionConcurrencyLimit": "10",
28-
"ExecutionTimeout": "10m0s",
22+
"CapabilityCallTimeout": "3m0s",
23+
"SecretsConcurrencyLimit": "5",
24+
"ExecutionConcurrencyLimit": "5",
25+
"ExecutionTimeout": "5m0s",
2926
"ExecutionResponseLimit": "100kb",
30-
"WASMExecutionTimeout": "1m0s",
3127
"WASMMemoryLimit": "100mb",
3228
"WASMBinarySizeLimit": "100mb",
3329
"WASMCompressedBinarySizeLimit": "20mb",
34-
"WASMConfigSizeLimit": "30mb",
35-
"WASMSecretsSizeLimit": "30mb",
36-
"WASMResponseSizeLimit": "5mb",
37-
"ConsensusObservationSizeLimit": "10kb",
38-
"ConsensusCallsLimit": "2",
30+
"WASMConfigSizeLimit": "1mb",
31+
"WASMSecretsSizeLimit": "1mb",
32+
"WASMResponseSizeLimit": "100kb",
33+
"ConsensusObservationSizeLimit": "100kb",
34+
"ConsensusCallsLimit": "2000",
3935
"LogLineLimit": "1kb",
4036
"LogEventLimit": "1000",
4137
"CRONTrigger": {
@@ -52,20 +48,20 @@
5248
"FilterTopicsPerSlotLimit": "10"
5349
},
5450
"ChainWrite": {
55-
"TargetsLimit": "3",
51+
"TargetsLimit": "10",
5652
"ReportSizeLimit": "1kb",
5753
"EVM": {
5854
"TransactionGasLimit": "5000000"
5955
}
6056
},
6157
"ChainRead": {
62-
"CallLimit": "3",
58+
"CallLimit": "10",
6359
"LogQueryBlockLimit": "100",
6460
"PayloadSizeLimit": "5kb"
6561
},
6662
"Consensus": {
67-
"ObservationSizeLimit": "10kb",
68-
"CallLimit": "2"
63+
"ObservationSizeLimit": "100kb",
64+
"CallLimit": "2000"
6965
},
7066
"HTTPAction": {
7167
"CallLimit": "5",

pkg/settings/cresettings/defaults.toml

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,37 @@
11
WorkflowLimit = '200'
2-
WorkflowExecutionConcurrencyLimit = '50'
2+
WorkflowExecutionConcurrencyLimit = '200'
33
WorkflowTriggerRateLimit = '200rps:200'
4-
GatewayUnauthenticatedRequestRateLimit = '100rps:100'
5-
GatewayUnauthenticatedRequestRateLimitPerIP = '1rps:1'
6-
GatewayIncomingPayloadSizeLimit = '10kb'
4+
GatewayIncomingPayloadSizeLimit = '1mb'
75

86
[PerOrg]
97
WorkflowDeploymentRateLimit = 'every1m0s:1'
108
ZeroBalancePruningTimeout = '24h0m0s'
119

1210
[PerOwner]
13-
WorkflowExecutionConcurrencyLimit = '50'
14-
WorkflowTriggerRateLimit = '200rps:200'
11+
WorkflowExecutionConcurrencyLimit = '5'
12+
WorkflowTriggerRateLimit = '5rps:5'
1513

1614
[PerWorkflow]
17-
TriggerLimit = '10'
1815
TriggerRateLimit = 'every30s:3'
1916
TriggerRegistrationsTimeout = '10s'
20-
TriggerSubscriptionTimeout = '5s'
17+
TriggerSubscriptionTimeout = '15s'
2118
TriggerSubscriptionLimit = '10'
2219
TriggerEventQueueLimit = '1000'
2320
TriggerEventQueueTimeout = '10m0s'
2421
CapabilityConcurrencyLimit = '3'
25-
CapabilityCallTimeout = '8m0s'
26-
SecretsConcurrencyLimit = '3'
27-
ExecutionConcurrencyLimit = '10'
28-
ExecutionTimeout = '10m0s'
22+
CapabilityCallTimeout = '3m0s'
23+
SecretsConcurrencyLimit = '5'
24+
ExecutionConcurrencyLimit = '5'
25+
ExecutionTimeout = '5m0s'
2926
ExecutionResponseLimit = '100kb'
30-
WASMExecutionTimeout = '1m0s'
3127
WASMMemoryLimit = '100mb'
3228
WASMBinarySizeLimit = '100mb'
3329
WASMCompressedBinarySizeLimit = '20mb'
34-
WASMConfigSizeLimit = '30mb'
35-
WASMSecretsSizeLimit = '30mb'
36-
WASMResponseSizeLimit = '5mb'
37-
ConsensusObservationSizeLimit = '10kb'
38-
ConsensusCallsLimit = '2'
30+
WASMConfigSizeLimit = '1mb'
31+
WASMSecretsSizeLimit = '1mb'
32+
WASMResponseSizeLimit = '100kb'
33+
ConsensusObservationSizeLimit = '100kb'
34+
ConsensusCallsLimit = '2000'
3935
LogLineLimit = '1kb'
4036
LogEventLimit = '1000'
4137

@@ -53,20 +49,20 @@ FilterAddressLimit = '5'
5349
FilterTopicsPerSlotLimit = '10'
5450

5551
[PerWorkflow.ChainWrite]
56-
TargetsLimit = '3'
52+
TargetsLimit = '10'
5753
ReportSizeLimit = '1kb'
5854

5955
[PerWorkflow.ChainWrite.EVM]
6056
TransactionGasLimit = '5000000'
6157

6258
[PerWorkflow.ChainRead]
63-
CallLimit = '3'
59+
CallLimit = '10'
6460
LogQueryBlockLimit = '100'
6561
PayloadSizeLimit = '5kb'
6662

6763
[PerWorkflow.Consensus]
68-
ObservationSizeLimit = '10kb'
69-
CallLimit = '2'
64+
ObservationSizeLimit = '100kb'
65+
CallLimit = '2000'
7066

7167
[PerWorkflow.HTTPAction]
7268
CallLimit = '5'

pkg/settings/cresettings/settings.go

Lines changed: 26 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -44,44 +44,40 @@ var DefaultGetter Getter
4444
var Config Schema
4545

4646
var Default = Schema{
47-
WorkflowLimit: Int(200),
48-
WorkflowExecutionConcurrencyLimit: Int(50),
49-
WorkflowTriggerRateLimit: Rate(200, 200),
50-
GatewayUnauthenticatedRequestRateLimit: Rate(rate.Every(time.Second/100), 100),
51-
GatewayUnauthenticatedRequestRateLimitPerIP: Rate(rate.Every(time.Second), 1),
52-
GatewayIncomingPayloadSizeLimit: Size(10 * config.KByte),
47+
WorkflowLimit: Int(200),
48+
WorkflowExecutionConcurrencyLimit: Int(200),
49+
WorkflowTriggerRateLimit: Rate(200, 200),
50+
GatewayIncomingPayloadSizeLimit: Size(1 * config.MByte),
5351

5452
PerOrg: Orgs{
5553
WorkflowDeploymentRateLimit: Rate(rate.Every(time.Minute), 1),
5654
ZeroBalancePruningTimeout: Duration(24 * time.Hour),
5755
},
5856
PerOwner: Owners{
59-
WorkflowExecutionConcurrencyLimit: Int(50),
60-
WorkflowTriggerRateLimit: Rate(200, 200),
57+
WorkflowExecutionConcurrencyLimit: Int(5),
58+
WorkflowTriggerRateLimit: Rate(5, 5),
6159
},
6260
PerWorkflow: Workflows{
63-
TriggerLimit: Int(10),
6461
TriggerRateLimit: Rate(rate.Every(30*time.Second), 3),
6562
TriggerRegistrationsTimeout: Duration(10 * time.Second),
6663
TriggerEventQueueLimit: Int(1_000),
6764
TriggerEventQueueTimeout: Duration(10 * time.Minute),
68-
TriggerSubscriptionTimeout: Duration(5 * time.Second),
65+
TriggerSubscriptionTimeout: Duration(15 * time.Second),
6966
TriggerSubscriptionLimit: Int(10),
7067
CapabilityConcurrencyLimit: Int(3),
71-
CapabilityCallTimeout: Duration(8 * time.Minute),
72-
SecretsConcurrencyLimit: Int(3),
73-
ExecutionConcurrencyLimit: Int(10),
74-
ExecutionTimeout: Duration(10 * time.Minute),
68+
CapabilityCallTimeout: Duration(3 * time.Minute),
69+
SecretsConcurrencyLimit: Int(5),
70+
ExecutionConcurrencyLimit: Int(5),
71+
ExecutionTimeout: Duration(5 * time.Minute),
7572
ExecutionResponseLimit: Size(100 * config.KByte),
76-
WASMExecutionTimeout: Duration(60 * time.Second),
7773
WASMMemoryLimit: Size(100 * config.MByte),
7874
WASMBinarySizeLimit: Size(100 * config.MByte),
7975
WASMCompressedBinarySizeLimit: Size(20 * config.MByte),
80-
WASMConfigSizeLimit: Size(30 * config.MByte),
81-
WASMSecretsSizeLimit: Size(30 * config.MByte),
82-
WASMResponseSizeLimit: Size(5 * config.MByte),
83-
ConsensusObservationSizeLimit: Size(10 * config.KByte),
84-
ConsensusCallsLimit: Int(2),
76+
WASMConfigSizeLimit: Size(config.MByte),
77+
WASMSecretsSizeLimit: Size(config.MByte),
78+
WASMResponseSizeLimit: Size(100 * config.KByte),
79+
ConsensusObservationSizeLimit: Size(100 * config.KByte),
80+
ConsensusCallsLimit: Int(2000),
8581
LogLineLimit: Size(config.KByte),
8682
LogEventLimit: Int(1_000),
8783

@@ -100,20 +96,20 @@ var Default = Schema{
10096
},
10197

10298
ChainWrite: chainWrite{
103-
TargetsLimit: Int(3),
99+
TargetsLimit: Int(10),
104100
ReportSizeLimit: Size(config.KByte),
105101
EVM: evmChainWrite{
106102
TransactionGasLimit: Uint64(5_000_000),
107103
},
108104
},
109105
ChainRead: chainRead{
110-
CallLimit: Int(3),
106+
CallLimit: Int(10),
111107
LogQueryBlockLimit: Uint64(100),
112108
PayloadSizeLimit: Size(5 * config.KByte),
113109
},
114110
Consensus: consensus{
115-
ObservationSizeLimit: Size(10 * config.KByte),
116-
CallLimit: Int(2),
111+
ObservationSizeLimit: Size(100 * config.KByte),
112+
CallLimit: Int(2000),
117113
},
118114
HTTPAction: httpAction{
119115
CallLimit: Int(5),
@@ -126,12 +122,10 @@ var Default = Schema{
126122
}
127123

128124
type Schema struct {
129-
WorkflowLimit Setting[int] `unit:"{workflow}"`
130-
WorkflowExecutionConcurrencyLimit Setting[int] `unit:"{workflow}"`
131-
WorkflowTriggerRateLimit Setting[config.Rate]
132-
GatewayUnauthenticatedRequestRateLimit Setting[config.Rate]
133-
GatewayUnauthenticatedRequestRateLimitPerIP Setting[config.Rate]
134-
GatewayIncomingPayloadSizeLimit Setting[config.Size]
125+
WorkflowLimit Setting[int] `unit:"{workflow}"`
126+
WorkflowExecutionConcurrencyLimit Setting[int] `unit:"{workflow}"`
127+
WorkflowTriggerRateLimit Setting[config.Rate]
128+
GatewayIncomingPayloadSizeLimit Setting[config.Size]
135129

136130
PerOrg Orgs `scope:"org"`
137131
PerOwner Owners `scope:"owner"`
@@ -148,7 +142,6 @@ type Owners struct {
148142
}
149143

150144
type Workflows struct {
151-
TriggerLimit Setting[int] `unit:"{trigger}"`
152145
TriggerRateLimit Setting[config.Rate]
153146
TriggerRegistrationsTimeout Setting[time.Duration]
154147
TriggerSubscriptionTimeout Setting[time.Duration]
@@ -165,13 +158,13 @@ type Workflows struct {
165158
ExecutionTimeout Setting[time.Duration]
166159
ExecutionResponseLimit Setting[config.Size]
167160

168-
WASMExecutionTimeout Setting[time.Duration]
169161
WASMMemoryLimit Setting[config.Size]
170162
WASMBinarySizeLimit Setting[config.Size]
171163
WASMCompressedBinarySizeLimit Setting[config.Size]
172164
WASMConfigSizeLimit Setting[config.Size]
173165
WASMSecretsSizeLimit Setting[config.Size]
174-
WASMResponseSizeLimit Setting[config.Size]
166+
// Deprecated: use ExecutionResponseLimit
167+
WASMResponseSizeLimit Setting[config.Size]
175168

176169
// Deprecated: use Consensus.ObservationSizeLimit
177170
ConsensusObservationSizeLimit Setting[config.Size]

pkg/settings/cresettings/settings_test.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,6 @@ func TestSchema_Unmarshal(t *testing.T) {
9898
}`), &cfg))
9999

100100
assert.Equal(t, 500, cfg.WorkflowLimit.DefaultValue)
101-
assert.Equal(t, config.Rate{Limit: 200, Burst: 50}, cfg.GatewayUnauthenticatedRequestRateLimit.DefaultValue)
102-
assert.Equal(t, config.Rate{Limit: 1, Burst: 100}, cfg.GatewayUnauthenticatedRequestRateLimitPerIP.DefaultValue)
103101
assert.Equal(t, 14*config.KByte, cfg.GatewayIncomingPayloadSizeLimit.DefaultValue)
104102
assert.Equal(t, 48*time.Hour, cfg.PerOrg.ZeroBalancePruningTimeout.DefaultValue)
105103
assert.Equal(t, 99, cfg.PerOwner.WorkflowExecutionConcurrencyLimit.DefaultValue)

0 commit comments

Comments
 (0)