This is an automated email from the ASF dual-hosted git repository. bneradt pushed a commit to branch 11-Dev in repository https://gitbox.apache.org/repos/asf/trafficserver.git
commit dda49009c5aa0fb1f31cf5315646b4b8d1d6265d Merge: ee5a4fe5a5 43b68ee65a Author: bneradt <[email protected]> AuthorDate: Thu Jan 2 14:17:57 2025 -0600 Merge latest master into 11-Dev The conflict is a result of #11157 but is easy enough to resolve since Conflicts: src/api/InkAPI.cc CMakeLists.txt | 2 +- CMakePresets.json | 3 +- NOTICE | 5 + README.md | 2 - cmake/Findopentelemetry.cmake | 4 + cmake/add_atsplugin.cmake | 26 +- cmake/layout.cmake | 2 +- configs/logging.yaml.default | 10 + contrib/docker/ubuntu/noble/Dockerfile | 242 +++++ doc/admin-guide/files/jsonrpc.yaml.en.rst | 4 + doc/admin-guide/files/logging.yaml.en.rst | 16 + doc/admin-guide/files/records.yaml.en.rst | 25 +- doc/admin-guide/files/sni.yaml.en.rst | 2 +- doc/admin-guide/files/volume.config.en.rst | 24 +- .../monitoring/statistics/core/eventloop.en.rst | 45 + doc/admin-guide/plugins/header_rewrite.en.rst | 201 +++-- doc/admin-guide/plugins/index.en.rst | 5 +- doc/admin-guide/plugins/lua.en.rst | 28 +- doc/admin-guide/plugins/multiplexer.en.rst | 56 +- doc/admin-guide/plugins/origin_server_auth.en.rst | 11 +- doc/admin-guide/plugins/otel_tracer.en.rst | 40 +- doc/appendices/command-line/traffic_ctl.en.rst | 21 +- .../api/functions/TSHttpOverridableConfig.en.rst | 1 + .../api/functions/TSHttpTxnIsInternal.en.rst | 2 +- .../api/types/TSOverridableConfigKey.en.rst | 1 + doc/developer-guide/config-vars.en.rst | 6 +- doc/developer-guide/cripts/cripts-global.en.rst | 153 ++++ doc/developer-guide/cripts/index.en.rst | 1 + doc/developer-guide/release-process/index.en.rst | 35 +- example/cripts/global.cc | 83 ++ include/{proxy => api}/HttpAPIHooks.h | 0 include/api/InkAPIInternal.h | 2 +- include/cripts/Bundle.hpp | 2 +- include/cripts/Context.hpp | 10 +- include/cripts/Epilogue.hpp | 518 +++++++++-- include/cripts/Instance.hpp | 8 +- include/cripts/Preamble.hpp | 26 +- include/cripts/Transaction.hpp | 29 +- include/iocore/aio/AIO.h | 36 +- include/iocore/cache/CacheVC.h | 6 +- include/iocore/eventsystem/EThread.h | 78 +- include/iocore/hostdb/HostDBProcessor.h | 31 +- include/iocore/net/NetEvent.h | 6 +- include/iocore/net/NetTimeout.h | 15 +- include/iocore/net/TLSBasicSupport.h | 28 + include/iocore/net/quic/QUICStream.h | 57 +- include/mgmt/rpc/server/IPCSocketServer.h | 16 +- include/proxy/FetchSM.h | 3 +- include/proxy/ProxySession.h | 3 - include/proxy/TransformInternal.h | 7 + include/proxy/http/HttpConfig.h | 27 +- include/proxy/http/HttpSM.h | 6 +- include/proxy/http/HttpTransact.h | 2 + include/proxy/http/HttpTransactHeaders.h | 2 +- include/proxy/http/remap/PluginDso.h | 8 +- include/proxy/http/remap/PluginFactory.h | 4 +- include/proxy/http/remap/RemapConfig.h | 8 +- include/proxy/http/remap/UrlMappingPathIndex.h | 3 +- include/proxy/http/remap/UrlRewrite.h | 9 +- include/proxy/http2/Http2CommonSessionInternal.h | 24 +- include/proxy/logging/Log.h | 3 +- include/proxy/logging/LogFilter.h | 339 ++----- include/proxy/logging/LogObject.h | 11 +- include/shared/rpc/IPCSocketClient.h | 9 +- include/shared/rpc/MessageStorage.h | 104 +++ include/shared/rpc/RPCClient.h | 7 +- include/ts/apidefs.h.in | 1 + include/ts/ats_probe.h | 35 +- include/tscore/ArgParser.h | 8 + include/tscore/Diags.h | 58 +- include/tscore/DiagsTypes.h | 3 +- include/tscore/ink_cap.h | 4 +- include/tscore/ink_file.h | 9 +- include/tscore/ink_sock.h | 3 +- include/tsutil/Bravo.h | 4 +- plugins/escalate/escalate.cc | 102 ++- plugins/esi/test/utils_test.cc | 3 +- plugins/experimental/memcache/tsmemcache.cc | 49 +- plugins/experimental/otel_tracer/otel_tracer.cc | 31 +- plugins/experimental/otel_tracer/tracer_common.h | 28 +- plugins/experimental/stale_response/BodyData.h | 4 +- plugins/experimental/stale_response/CacheUpdate.cc | 42 +- .../experimental/stale_response/ServerIntercept.cc | 67 +- .../experimental/stale_response/stale_response.cc | 155 ++-- .../experimental/stale_response/stale_response.h | 4 +- plugins/experimental/stale_response/ts_wrap.h | 16 +- .../stale_response/unit_tests/test_BodyData.cc | 2 +- plugins/experimental/stek_share/log_store.cc | 41 +- .../txn_box/plugin/include/txn_box/ts_util.h | 8 - plugins/experimental/txn_box/plugin/src/Config.cc | 2 +- .../experimental/txn_box/plugin/src/Modifier.cc | 4 +- .../experimental/txn_box/plugin/src/text_block.cc | 2 +- plugins/experimental/txn_box/plugin/src/txn_box.cc | 2 +- plugins/header_rewrite/condition.cc | 18 +- plugins/header_rewrite/conditions.cc | 16 + plugins/header_rewrite/conditions.h | 32 + plugins/header_rewrite/factory.cc | 2 + plugins/header_rewrite/header_rewrite_test.cc | 22 + plugins/header_rewrite/matcher.h | 1 + plugins/header_rewrite/operators.cc | 29 +- plugins/header_rewrite/parser.cc | 11 +- plugins/header_rewrite/ruleset.cc | 5 + plugins/header_rewrite/statement.cc | 27 + plugins/header_rewrite/statement.h | 1 + plugins/lua/ts_lua_client_request.cc | 63 ++ plugins/lua/ts_lua_http_config.cc | 18 +- plugins/lua/ts_lua_misc.cc | 35 + plugins/multiplexer/ats-multiplexer.cc | 2 +- plugins/origin_server_auth/origin_server_auth.cc | 47 +- rc/trafficserver.in | 4 +- src/api/CMakeLists.txt | 1 + src/{proxy => api}/HttpAPIHooks.cc | 2 +- src/api/HttpHookState.cc | 11 +- src/api/InkAPI.cc | 63 +- src/api/InkAPITest.cc | 13 +- src/api/InkContInternal.cc | 9 +- src/api/InkVConnInternal.cc | 26 +- src/cripts/Bundles/LogsMetrics.cc | 6 + src/cripts/Instance.cc | 22 +- src/cripts/Urls.cc | 17 +- src/iocore/aio/AIO.cc | 150 +++- src/iocore/aio/CMakeLists.txt | 2 +- src/iocore/aio/Inline.cc | 30 - src/iocore/aio/P_AIO.h | 142 --- src/iocore/aio/test_AIO.cc | 1 - src/iocore/cache/CMakeLists.txt | 2 +- src/iocore/cache/Cache.cc | 21 +- src/iocore/cache/CacheDir.cc | 10 +- src/iocore/cache/CacheEvacuateDocVC.cc | 2 +- src/iocore/cache/CacheHosting.cc | 21 +- src/iocore/cache/CacheProcessor.cc | 2 + src/iocore/cache/CacheTest.cc | 16 +- src/iocore/cache/CacheVC.cc | 2 +- src/iocore/cache/CacheWrite.cc | 13 +- src/iocore/cache/HttpTransactCache.cc | 2 +- src/iocore/cache/P_Cache.h | 1 - src/iocore/cache/P_CacheDir.h | 23 +- src/iocore/cache/P_CacheDisk.h | 38 +- src/iocore/cache/P_CacheHosting.h | 13 +- src/iocore/cache/P_CacheInternal.h | 2 + src/iocore/cache/P_CacheStats.h | 74 +- src/iocore/cache/PreservationTable.cc | 37 + src/iocore/cache/PreservationTable.h | 23 +- src/iocore/cache/Stripe.cc | 156 ++-- src/iocore/cache/Stripe.h | 32 +- src/iocore/cache/StripeSM.cc | 52 +- src/iocore/cache/StripeSM.h | 37 +- src/iocore/cache/unit_tests/main.cc | 3 +- src/iocore/cache/unit_tests/main.h | 2 +- src/iocore/cache/unit_tests/stub.cc | 24 +- src/iocore/cache/unit_tests/test_Stripe.cc | 50 +- src/iocore/cache/unit_tests/test_doubles.h | 14 + src/iocore/eventsystem/Lock.cc | 12 +- src/iocore/eventsystem/UnixEThread.cc | 31 +- src/iocore/eventsystem/UnixEventProcessor.cc | 3 + src/iocore/hostdb/HostDB.cc | 73 +- src/iocore/io_uring/IOUringEventIO.cc | 2 +- src/iocore/net/NetHandler.cc | 13 +- src/iocore/net/P_QUICNetVConnection.h | 6 +- src/iocore/net/P_SSLNetVConnection.h | 28 +- src/iocore/net/P_UnixNetVConnection.h | 14 +- src/iocore/net/QUICNetVConnection.cc | 45 +- src/iocore/net/SNIActionPerformer.cc | 4 +- src/iocore/net/SSLClientUtils.cc | 13 +- src/iocore/net/SSLNetVConnection.cc | 38 +- src/iocore/net/SSLSecret.cc | 10 +- src/iocore/net/SSLStats.cc | 114 ++- src/iocore/net/SSLStats.h | 9 + src/iocore/net/SSLUtils.cc | 46 +- src/iocore/net/TLSBasicSupport.cc | 17 + src/iocore/net/UnixNetVConnection.cc | 998 ++++++++++----------- src/iocore/net/UnixUDPNet.cc | 35 +- src/mgmt/config/FileManager.cc | 21 +- src/mgmt/rpc/handlers/config/Configuration.cc | 4 +- src/mgmt/rpc/handlers/plugins/Plugins.cc | 8 +- src/mgmt/rpc/handlers/server/Server.cc | 11 +- src/mgmt/rpc/handlers/storage/Storage.cc | 8 +- src/mgmt/rpc/jsonrpc/JsonRPCManager.cc | 14 +- src/mgmt/rpc/server/IPCSocketServer.cc | 61 +- src/mgmt/rpc/server/RPCServer.cc | 10 +- src/mgmt/rpc/server/unit_tests/test_rpcserver.cc | 70 +- src/proxy/CMakeLists.txt | 1 - src/proxy/ProxyTransaction.cc | 8 +- src/proxy/Transform.cc | 95 +- src/proxy/http/HttpConfig.cc | 48 +- src/proxy/http/HttpSM.cc | 49 +- src/proxy/http/HttpTransact.cc | 108 ++- src/proxy/http/HttpTransactHeaders.cc | 2 +- src/proxy/http/remap/PluginDso.cc | 6 +- src/proxy/http/remap/PluginFactory.cc | 45 +- src/proxy/http/remap/RemapConfig.cc | 8 + src/proxy/http/remap/UrlRewrite.cc | 1 - .../http/remap/unit-tests/nexthop_test_stubs.cc | 3 +- src/proxy/http/remap/unit-tests/test_PluginDso.cc | 2 - .../http/remap/unit-tests/test_PluginFactory.cc | 11 +- .../http/remap/unit-tests/test_RemapPlugin.cc | 2 +- src/proxy/http2/Http2CommonSession.cc | 5 +- src/proxy/http2/Http2Stream.cc | 8 +- src/proxy/http2/test_HPACK.cc | 4 +- src/proxy/http3/Http3FrameDispatcher.cc | 4 +- src/proxy/logging/Log.cc | 25 +- src/proxy/logging/LogField.cc | 9 +- src/proxy/logging/LogFilter.cc | 460 +++++----- src/proxy/logging/LogObject.cc | 4 - .../logging/unit-tests/benchmark_LogObject.cc | 2 +- src/records/P_RecCore.cc | 4 + src/records/P_RecDefs.h | 2 +- src/records/RecCore.cc | 2 +- src/records/RecHttp.cc | 20 +- src/records/RecRawStats.cc | 28 +- src/records/RecUtils.cc | 4 +- src/records/RecordsConfig.cc | 10 +- src/records/RecordsConfigUtils.cc | 14 +- src/shared/overridable_txn_vars.cc | 1 + src/shared/rpc/IPCSocketClient.cc | 129 +-- src/traffic_crashlog/backtrace.cc | 22 +- src/traffic_ctl/CtrlCommands.cc | 38 +- src/traffic_ctl/CtrlCommands.h | 3 +- src/traffic_ctl/CtrlPrinters.cc | 27 +- src/traffic_ctl/CtrlPrinters.h | 60 +- src/traffic_ctl/traffic_ctl.cc | 6 +- src/traffic_logcat/logcat.cc | 48 +- src/traffic_logstats/logstats.cc | 71 +- src/traffic_quic/quic_client.cc | 24 +- src/traffic_quic/traffic_quic.cc | 9 +- src/traffic_server/Crash.cc | 19 +- src/traffic_server/SocksProxy.cc | 2 +- src/traffic_server/traffic_server.cc | 390 ++++---- src/tscore/BaseLogFile.cc | 4 +- src/tscore/Diags.cc | 6 +- src/tscore/Encoding.cc | 10 +- src/tscore/JeMiAllocator.cc | 9 +- src/tscore/MatcherUtils.cc | 6 +- src/tscore/hugepages.cc | 30 +- src/tscore/ink_cap.cc | 96 +- src/tscore/ink_file.cc | 2 +- src/tscore/ink_queue.cc | 78 +- src/tscore/ink_sock.cc | 4 +- src/tscore/lockfile.cc | 2 +- src/tsutil/CMakeLists.txt | 3 +- src/{tscore => tsutil}/unit_tests/test_Bravo.cc | 0 tests/CMakeLists.txt | 16 +- .../gold_tests/cache/cache-request-method.test.py | 43 +- .../chunked_encoding/bad_chunked_encoding.test.py | 4 +- .../replays/chunked_trailer_dropped.replay.yaml | 10 +- .../replays/chunked_trailer_proxied.replay.yaml | 10 +- .../replays/malformed_chunked_header.replay.yaml | 6 +- .../command_argument/verify_global_plugin.test.py | 9 +- .../command_argument/verify_remap_plugin.test.py | 5 +- tests/gold_tests/dns/dns_host_down.test.py | 3 +- .../gold_tests/dns/replay/server_down.replay.yaml | 4 +- .../headers/cachedDuplicateHeaders.test.py | 60 ++ .../headers/replays/cache-test.replay.yaml | 257 ++++++ .../pluginTest/escalate/escalate.test.py | 130 +++ .../escalate_failover.replay.yaml} | 96 +- .../escalate_original.replay.yaml} | 63 +- .../pluginTest/multiplexer/multiplexer.test.py | 20 + .../replays/multiplexer_copy.replay.yaml | 29 + .../replays/multiplexer_copy_skip_post.replay.yaml | 29 + .../replays/multiplexer_original.replay.yaml | 33 + .../multiplexer_original_skip_post.replay.yaml | 33 + .../records/ts_max_records_param.test.py | 56 ++ tests/gold_tests/tls/test-0rtt-s_client.py | 9 +- tests/gold_tests/traffic_ctl/gold/describe.gold | 14 + tests/gold_tests/traffic_ctl/gold/diff.gold | 15 + tests/gold_tests/traffic_ctl/gold/diff_yaml.gold | 10 + tests/gold_tests/traffic_ctl/gold/match.gold | 5 + tests/gold_tests/traffic_ctl/gold/t1_yaml.gold | 4 + tests/gold_tests/traffic_ctl/gold/t2_yaml.gold | 5 + tests/gold_tests/traffic_ctl/gold/t3_yaml.gold | 7 + tests/gold_tests/traffic_ctl/gold/t4_yaml.gold | 10 + .../traffic_ctl/traffic_ctl_config_output.test.py | 210 +++++ tools/ebpf/trylock-stats/README.md | 19 + tools/ebpf/trylock-stats/trylock-stats.bpf.c | 211 +++++ tools/ebpf/trylock-stats/trylock-stats.py | 120 +++ 275 files changed, 6737 insertions(+), 3319 deletions(-)
