Skip to content

Commit be089e5

Browse files
authored
Merge branch 'master' into docs_records_yaml
2 parents 27cf628 + 38f9191 commit be089e5

File tree

3 files changed

+90
-17
lines changed

3 files changed

+90
-17
lines changed

doc/release-notes/upgrading.en.rst

Lines changed: 59 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,14 @@ version of ATS. Deprecated features should be avoided, with the expectation that
3434
removed in the next major release of ATS.
3535

3636
* Removed Features
37+
* HostDB no longer supports persistent storage for DNS resolution
38+
* Removed support for the MMH crypto hash function
39+
40+
* Traffic Manager is no longer part of |TS|. Administrative tools now interact with |TS| directly by using the :ref:`jsonrpc-node`.
41+
42+
* traffic_ctl ``server``
43+
44+
As a part of the above feature removal the ``backtrace``, ``restart``, ``start``, ``status`` options are no longer available in this |TS| version.
3745

3846
* Deprecated Features
3947

@@ -45,8 +53,15 @@ The following features have been changed in this version of ATS.
4553

4654
* Remap ACLs
4755

48-
Fixes with @action=allow to deny transactions that are not explicitly allowed. Changed in-line ACLs to match before activated ACL rules.
49-
For detail refer to: https://github.com/apache/trafficserver/pull/11033
56+
Changed in-line ACLs to match before activated ACL rules.
57+
For details refer to: https://github.com/apache/trafficserver/pull/11033 and :ref:`acl-filters`.
58+
59+
60+
61+
* Administrative API (RPC)
62+
63+
Moved away from the binary serialization mechanism used to comunicate between |TS| and the tools to a JSON-RPC text based protocol. Underlying
64+
Unix Domain Socket protocol remains the same. Check :ref:`jsonrpc-protocol` for more details.
5065

5166

5267
API Changes
@@ -56,6 +71,8 @@ The following APIs have changed, either in semantics, interfaces, or both.
5671
* Changed TS API
5772

5873
* TSHttpTxnAborted
74+
* TSMimeHdrPrint
75+
* Enum values for hooks and events have been changed (ABI incompatible change)
5976

6077
* Removed TS API
6178

@@ -96,15 +113,6 @@ The following APIs have changed, either in semantics, interfaces, or both.
96113
* INKUDPPacketDestroy
97114
* INKUDPPacketGet
98115

99-
* Removed Lua API
100-
101-
* ts.http.client_packet_tos_set
102-
* ts.http.server_packet_tos_set
103-
* ts.client_request.get_uri_params
104-
* ts.client_request.set_uri_params
105-
* ts.server_request.get_uri_params
106-
* ts.server_request.set_uri_params
107-
108116

109117
Cache
110118
-----
@@ -121,14 +129,31 @@ Check :ref:`rec-config-to-yaml` and :file:`records.yaml` for more details.
121129
The following :file:`records.yaml` changes have been made:
122130

123131
- The records.yaml entry ``proxy.config.http.down_server.abort_threshold`` has been removed.
124-
- The records.yaml entry ``proxy.config.http.connect_attempts_max_retries_dead_server`` has been renamed to ``proxy.config.http.connect_attempts_max_retries_down_server``.
125-
- The entry ``proxy.config.http.connect.dead.policy`` has been renamed to ``proxy.config.http.connect.down.policy``.
132+
- The records.yaml entry ``proxy.config.http.connect_attempts_max_retries_dead_server`` has been renamed to :ts:cv:`proxy.config.http.connect_attempts_max_retries_down_server`.
133+
- The entry ``proxy.config.http.connect.dead.policy`` has been renamed to :ts:cv:`proxy.config.http.connect.down.policy`.
126134
- The records.yaml entry ``proxy.config.http.parent_proxy.connect_attempts_timeout`` and
127135
``proxy.config.http.post_connect_attempts_timeout`` have been removed. Instead use
128-
``proxy.config.http.connect_attempts_timeout`` to control all connection to origin timeouts.
136+
:ts:cv:`proxy.config.http.connect_attempts_timeout` to control all connection to origin timeouts.
129137
- The per server origin connection feature had a few configurations that were not used removed.
130138
``proxy.config.http.per_server.connection.queue_size`` and ``proxy.config.http.per_server.connection.queue_delay``
131139
have been removed.
140+
- The default value for records.yaml entry ``proxy.config.ssl.client.verify.server.policy`` has been changed
141+
from ``PERMISSIVE`` to ``STRICT``.
142+
- The records.yaml entry ``proxy.config.http.keepalive_internal_vc`` has been removed. This entry
143+
was previously undocumented.
144+
- The records.yaml entries ``proxy.config.http.parent_proxy.connect_attempts_timeout`` and
145+
``proxy.config.http.post_connect_attempts_timeout`` were previously referenced in default config
146+
files, but they did not have any effect. These have been removed from default configs files.
147+
- The default values for :ts:cv:`proxy.config.http.request_header_max_size`, :ts:cv:`proxy.config.http.response_header_max_size`, and
148+
:ts:cv:`proxy.config.http.header_field_max_size` have been changed to 32KB.
149+
- The records.yaml entry :ts:cv:`proxy.config.http.server_ports` now also accepts the
150+
``allow-plain`` option
151+
- The records.yaml entry :ts:cv:`proxy.config.http.cache.max_open_write_retry_timeout` has been added to specify a timeout for starting a write to cache
152+
- The records.yaml entry :ts:cv:`proxy.config.net.per_client.max_connections_in` has
153+
been added to limit the number of connections from a client IP. This works the
154+
same as :ts:cv:`proxy.config.http.per_server.connection.max`
155+
- The records.yaml entry :ts:cv:`proxy.config.http.no_dns_just_forward_to_parent` is
156+
not overridable
132157
- The default values for ``proxy.config.http.request_header_max_size``, ``proxy.config.http.response_header_max_size``, and
133158
``proxy.config.http.header_field_max_size`` have been changed to 32KB.
134159
- The records.yaml entry ``proxy.config.output.logfile`` has been renamed to :ts:cv:`proxy.config.output.logfile.name`.
@@ -139,10 +164,11 @@ The following :file:`records.yaml` changes have been made:
139164
- The records.yaml entry ``proxy.config.ssl.TLSv1_3`` has been renamed to :ts:cv:`proxy.config.ssl.TLSv1_3.enabled`.
140165
- The records.yaml entry ``proxy.config.ssl.client.TLSv1_3`` has been renamed to :ts:cv:`proxy.config.ssl.client.TLSv1_3.enabled`.
141166

142-
143167
The following changes have been made to the :file:`sni.yaml` file:
144168

145169
- ``disable_h2`` has been removed. Use ``http2`` with :code:`off` instead.
170+
- The ``ip_allow`` key can now take a reference to a file containing the ip
171+
allow rules
146172

147173
Plugins
148174
-------
@@ -162,16 +188,32 @@ The following plugins have been changed in this version of ATS.
162188

163189
Lua Plugin
164190
~~~~~~~~~~
165-
The following Http config constants have been renamed:
191+
* The following Http config constants have been renamed:
166192

167193
TS_LUA_CONFIG_HTTP_CONNECT_ATTEMPTS_MAX_RETRIES_DEAD_SERVER has been renamed to TS_LUA_CONFIG_HTTP_CONNECT_ATTEMPTS_MAX_RETRIES_DOWN_SERVER.
168194

169195
TS_LUA_CONFIG_HTTP_CONNECT_DEAD_POLICY has been renamed to TS_LUA_CONFIG_HTTP_CONNECT_DOWN_POLICY.
170196

197+
* The following functions have been removed:
198+
199+
* ts.http.client_packet_tos_set
200+
* ts.http.server_packet_tos_set
201+
* ts.client_request.get_uri_params
202+
* ts.client_request.set_uri_params
203+
* ts.server_request.get_uri_params
204+
* ts.server_request.set_uri_params
205+
206+
171207
Metrics
172208
-------
173209

174-
The HTTP connection metric proxy.process.http.dead_server.no_requests has been renamed to proxy.process.http.down_server.no_requests.
210+
- The HTTP connection metric proxy.process.http.dead_server.no_requests has been renamed to proxy.process.http.down_server.no_requests.
211+
- The network metric ``proxy.process.net.calls_to_readfromnet_afterpoll`` has been removed
212+
- The network metric ``proxy.process.net.calls_to_writetonet_afterpoll`` has been removed
213+
- New cache metrics ``proxy.process.cache.stripes`` and
214+
``proxy.process.cache.volume_X.stripes`` that counts cache stripes
215+
- All metric names that ended in ``_stat`` have had that suffix dropped and no
216+
longer end with ``_stat``
175217

176218
Logging
177219
-------

doc/release-notes/whats-new.en.rst

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,14 @@ total of <z> contributors have participated in this development cycle.
3131
New Features
3232
------------
3333

34+
* JSON-RPC based interface for administrative API
35+
36+
|TS| now exposes a JSON-RPC node to interact with external tools. Check :ref:`developer-guide-jsonrpc` for more details.
37+
38+
* :file:`ip_allow.yaml` and :file:`remap.config` now support named IP ranges via IP
39+
Categories. See the ``ip_categories`` key definition in :file:`ip_allow.yaml`
40+
for information about their use and definitions.
41+
3442

3543
New or modified Configurations
3644
------------------------------
@@ -42,6 +50,17 @@ The configuration settings :ts:cv: `proxy.config.http.parent_proxy.connect_attem
4250
All connect timeouts are controlled by :ts:cv: `proxy.config.http.connect_attempts_timeout`.
4351

4452

53+
ip_allow.yaml and remap.config ACL actions
54+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
55+
56+
There are two new sets of actions for HTTP request method filtering introduced in |TS| 10.x:
57+
58+
- Both :file:`ip_allow.yaml` and :file:`remap.config` now support the ``set_allow`` and ``set_deny`` actions. These
59+
actions both behave like ``allow`` and ``deny`` did for :file:`ip_allow.yaml` pre |TS| 10.x.
60+
- In addition, :file:`remap.config` now supports ``add_allow`` and ``add_deny`` actions. These behave like ``allow``
61+
and ``deny`` actions did for :file:`remap.config` ACLs pre |TS| 10.x.
62+
63+
The details about the motivation and behavior of these actions are documented in :ref:`acl-filters`.
4564

4665

4766
Logging and Metrics
@@ -50,6 +69,10 @@ Logging and Metrics
5069
Plugins
5170
-------
5271

72+
* JSON-RPC
73+
74+
Remote clients, like :ref:`traffic_ctl_jsonrpc` have now bi-directional access to the plugin space. For more details check :ref:`jsonrpc_development`.
75+
5376
Switch to C++20
5477
^^^^^^^^^^^^^^^
5578

@@ -67,3 +90,9 @@ Symbols With INKUDP Prefix
6790
^^^^^^^^^^^^^^^^^^^^^^^^^^
6891

6992
In the plugin API, all types and functions starting with the prefix INKUDP are removed.
93+
94+
New plugin hook for request sink transformation
95+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
96+
97+
A new hook, ``TS_HTTP_REQUEST_CLIENT_HOOK``, has been added. This provides the analoguas functionality of
98+
``TS_HTTP_RESPONSE_CLIENT_HOOK``, for request bodies.

src/records/RecordsConfig.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -580,6 +580,8 @@ static const RecordElement RecordsConfig[] =
580580
,
581581
{RECT_CONFIG, "proxy.config.http.cache.max_open_write_retries", RECD_INT, "1", RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL}
582582
,
583+
{RECT_CONFIG, "proxy.config.http.cache.max_open_write_retry_timeout", RECD_INT, "0", RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL}
584+
,
583585
// # open_write_fail_action has 3 options:
584586
// #
585587
// # 0 - default. disable cache and goto origin

0 commit comments

Comments
 (0)