diff --git a/.rr.yaml b/.rr.yaml index 5bf290c3c..b5febff10 100644 --- a/.rr.yaml +++ b/.rr.yaml @@ -495,7 +495,7 @@ service: # Allowed time before stop. # - # Default: 0 (infinity), can be 1s, 2m, 2h (seconds, minutes, hours) + # Default: 0 (infinity), can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. exec_timeout: 0s # Show the name of the service in logs (e.g. service.some_service_1) @@ -547,7 +547,7 @@ service: # Allowed time before stop. # - # Default: 0 (infinity), can be 1s, 2m, 2h (seconds, minutes, hours) + # Default: 0 (infinity), can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. exec_timeout: 0s # Remain process after exit. In other words, restart process after exit with any exit code. @@ -1930,6 +1930,7 @@ grpc: # zero or the connection establishment. # # This option is optional. Default value: infinity. + # Can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. max_connection_idle: 0s # MaxConnectionAge is a duration for the maximum amount of time a @@ -1938,11 +1939,13 @@ grpc: # connection storms. # # This option is optional. Default value: infinity. + # Can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. max_connection_age: 0s # MaxConnectionAgeGrace is an additive period after MaxConnectionAge after # which the connection will be forcibly closed. - max_connection_age_grace: 0s8h + # Can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. + max_connection_age_grace: 8h # MaxConnectionAgeGrace is an additive period after MaxConnectionAge after # which the connection will be forcibly closed. @@ -1955,6 +1958,7 @@ grpc: # If set below 1s, a minimum value of 1s will be used instead. # # This option is optional. Default value: 2h + # Can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. ping_time: 1s # After having pinged for keepalive check, the server waits for a duration @@ -1962,6 +1966,7 @@ grpc: # closed. # # This option is optional. Default value: 20s + # Can be 1s, 2m, 2h (seconds, minutes, hours) and complex 2h2m1s. timeout: 200s # Usual workers pool configuration diff --git a/schemas/config/2.0.schema.json b/schemas/config/2.0.schema.json index e3cdefeed..9971849aa 100644 --- a/schemas/config/2.0.schema.json +++ b/schemas/config/2.0.schema.json @@ -2232,13 +2232,16 @@ "Duration": { "description": "Time duration", "type": "string", - "pattern": "^[0-9]+[ms]|[s,h]", + "pattern": "^([0-9]*(\\.[0-9]*)?(ms|h|m|s))+$", "examples": [ - "10h", - "1m", - "1h", - "30s", - "300ms" + "1h", + "2.5h", + "2m", + ".2m", + "30s", + "30.03s", + "300ms", + "1h3m40s500ms" ] }, "HostAndPortWithTCP": { diff --git a/schemas/config/3.0.schema.json b/schemas/config/3.0.schema.json index 98563373b..f65e86cb8 100644 --- a/schemas/config/3.0.schema.json +++ b/schemas/config/3.0.schema.json @@ -2359,14 +2359,17 @@ "Duration": { "description": "Time duration", "type": "string", - "pattern": "^[0-9]+[ms]|[s,h]", + "pattern": "^([0-9]*(\\.[0-9]*)?(ms|h|m|s))+$", "examples": [ - "10h", - "1m", - "1h", + "1h", + "2.5h", + "2m", + ".2m", "30s", - "300ms" - ] + "30.03s", + "300ms", + "1h3m40s500ms" + ] }, "HostAndPortWithTCP": { "description": "Host and port with tcp:// prefix", diff --git a/schemas/readme.md b/schemas/readme.md index 534c4a781..65a8de98e 100644 --- a/schemas/readme.md +++ b/schemas/readme.md @@ -7,7 +7,7 @@ This directory contains public schemas for the most important parts of applicati - You can validate existing config file using the following command: ```bash - $ docker run --rm -v "$(pwd):/src" -w "/src" node:14-alpine sh -c \ +docker run --rm -v "$(pwd):/src" -w "/src" node:14-alpine sh -c \ "npm install -g ajv-cli && \ ajv validate --all-errors --verbose \ -s ./schemas/config/3.0.schema.json \