Skip to content

Commit a58b66f

Browse files
authored
Add maxStreamDuration to global UrlMap (#13037)
1 parent 2a0685b commit a58b66f

File tree

2 files changed

+90
-0
lines changed

2 files changed

+90
-0
lines changed

mmv1/products/compute/UrlMap.yaml

+86
Original file line numberDiff line numberDiff line change
@@ -754,6 +754,28 @@ properties:
754754
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
755755
inclusive.
756756
required: true
757+
- name: 'maxStreamDuration'
758+
type: NestedObject
759+
description: |
760+
Specifies the maximum duration (timeout) for streams on the selected route.
761+
Unlike the `Timeout` field where the timeout duration starts from the time the request
762+
has been fully processed (known as end-of-stream), the duration in this field
763+
is computed from the beginning of the stream until the response has been processed,
764+
including all retries. A stream that does not complete in this duration is closed.
765+
default_from_api: true
766+
properties:
767+
- name: 'nanos'
768+
type: Integer
769+
description: |
770+
Span of time that's a fraction of a second at nanosecond resolution. Durations
771+
less than one second are represented with a 0 `seconds` field and a positive
772+
`nanos` field. Must be from 0 to 999,999,999 inclusive.
773+
- name: 'seconds'
774+
type: String
775+
description: |
776+
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
777+
inclusive.
778+
required: true
757779
- name: 'urlRewrite'
758780
type: NestedObject
759781
description: |
@@ -1487,6 +1509,28 @@ properties:
14871509
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
14881510
inclusive.
14891511
required: true
1512+
- name: 'maxStreamDuration'
1513+
type: NestedObject
1514+
description: |
1515+
Specifies the maximum duration (timeout) for streams on the selected route.
1516+
Unlike the `Timeout` field where the timeout duration starts from the time the request
1517+
has been fully processed (known as end-of-stream), the duration in this field
1518+
is computed from the beginning of the stream until the response has been processed,
1519+
including all retries. A stream that does not complete in this duration is closed.
1520+
default_from_api: true
1521+
properties:
1522+
- name: 'nanos'
1523+
type: Integer
1524+
description: |
1525+
Span of time that's a fraction of a second at nanosecond resolution. Durations
1526+
less than one second are represented with a 0 `seconds` field and a positive
1527+
`nanos` field. Must be from 0 to 999,999,999 inclusive.
1528+
- name: 'seconds'
1529+
type: String
1530+
description: |
1531+
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
1532+
inclusive.
1533+
required: true
14901534
- name: 'urlRewrite'
14911535
type: NestedObject
14921536
description: |
@@ -1916,6 +1960,27 @@ properties:
19161960
description: |
19171961
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented
19181962
with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
1963+
- name: 'maxStreamDuration'
1964+
type: NestedObject
1965+
description: |
1966+
Specifies the maximum duration (timeout) for streams on the selected route.
1967+
Unlike the `Timeout` field where the timeout duration starts from the time the request
1968+
has been fully processed (known as end-of-stream), the duration in this field
1969+
is computed from the beginning of the stream until the response has been processed,
1970+
including all retries. A stream that does not complete in this duration is closed.
1971+
default_from_api: true
1972+
properties:
1973+
- name: 'nanos'
1974+
type: Integer
1975+
description: |
1976+
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented
1977+
with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
1978+
- name: 'seconds'
1979+
type: String
1980+
description: |
1981+
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
1982+
Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
1983+
required: true
19191984
- name: 'retryPolicy'
19201985
type: NestedObject
19211986
description: |
@@ -2452,6 +2517,27 @@ properties:
24522517
at_least_one_of:
24532518
- 'default_route_action.0.timeout.0.seconds'
24542519
- 'default_route_action.0.timeout.0.nanos'
2520+
- name: 'maxStreamDuration'
2521+
type: NestedObject
2522+
description: |
2523+
Specifies the maximum duration (timeout) for streams on the selected route.
2524+
Unlike the `Timeout` field where the timeout duration starts from the time the request
2525+
has been fully processed (known as end-of-stream), the duration in this field
2526+
is computed from the beginning of the stream until the response has been processed,
2527+
including all retries. A stream that does not complete in this duration is closed.
2528+
default_from_api: true
2529+
properties:
2530+
- name: 'nanos'
2531+
type: Integer
2532+
description: |
2533+
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented
2534+
with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
2535+
- name: 'seconds'
2536+
type: String
2537+
description: |
2538+
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
2539+
Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
2540+
required: true
24552541
- name: 'retryPolicy'
24562542
type: NestedObject
24572543
description: |

mmv1/templates/terraform/examples/url_map_traffic_director_path_partial.tf.tmpl

+4
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ resource "google_compute_url_map" "{{$.PrimaryResourceId}}" {
4343
}
4444
}
4545
}
46+
max_stream_duration {
47+
nanos = 500000
48+
seconds = 9
49+
}
4650
}
4751
}
4852
}

0 commit comments

Comments
 (0)