Duration format
All Stackable operators use a human-readable duration format. It very closely resembles the format used by the Go programming language - which Kubernetes uses internally.
Every duration field of a CustomResource, for example, the spec.workers.roleConfig.gracefulShutdownTimeout
field, supports this format.
There is no official format specification, but the source code of time.ParseDuration
in the Go standard library can be used as an implementation reference.
The format looks like this: 15d18h34m42s
.
Trino, for example, uses it in the following way:
# ...
spec:
workers:
roleConfig:
gracefulShutdownTimeout: 15d18h34m42s
Valid time units are: d
, h
, m
, s
, and ms
.
Separating the duration fragments, which is a tuple of time value and time unit (15d
), by spaces is not supported and will result in an error.
The maximum amount of time which can safely be represented without precision loss or integer overflow is 584,942,417,355 years.
See here for more information.