You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by bn...@apache.org on 2022/05/31 18:52:40 UTC
[trafficserver] 01/01: Merge latest ASF master into 10-Dev
This is an automated email from the ASF dual-hosted git repository.
bneradt pushed a commit to branch 10-Dev
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
commit 3142802a73202a6c0f3d2d4ee33f7e6db48d32a0
Merge: d68719dab 138c1aabc
Author: Brian Neradt <br...@gmail.com>
AuthorDate: Tue May 31 18:36:51 2022 +0000
Merge latest ASF master into 10-Dev
This merges the latest ASF master branch into 10-Dev.
Conflicts:
src/traffic_server/traffic_server.cc
CODEOWNERS | 96 ---
build/crypto.m4 | 19 +
build/nuraft.m4 | 2 +-
config.layout | 21 +
configure.ac | 5 +-
doc/admin-guide/files/records.config.en.rst | 31 +-
doc/admin-guide/files/remap.config.en.rst | 6 +-
.../plugins/cache_range_requests.en.rst | 38 +
doc/admin-guide/plugins/http_stats.en.rst | 78 +++
doc/admin-guide/plugins/icap.en.rst | 5 +-
doc/admin-guide/plugins/index.en.rst | 4 +
doc/admin-guide/plugins/money_trace.en.rst | 2 +-
doc/admin-guide/plugins/otel_tracer.en.rst | 6 +-
doc/admin-guide/plugins/prefetch.en.rst | 8 +-
doc/admin-guide/plugins/slice.en.rst | 2 +-
doc/admin-guide/security/mtls.en.rst | 2 +-
doc/conf.py | 4 +
doc/developer-guide/api/functions/TSDebug.en.rst | 21 +-
doc/developer-guide/debugging/debug-tags.en.rst | 53 +-
.../plugins/plugin-interfaces.en.rst | 17 +-
doc/manpages.py | 81 ++-
.../cpp-api/serverresponse/ServerResponse.cc | 2 +-
include/ts/apidefs.h.in | 6 +
include/ts/ts.h | 31 +-
.../NextHopRoundRobin.h => include/tscore/DbgCtl.h | 40 +-
include/tscore/Diags.h | 189 +++--
include/tscore/DiagsTypes.h | 51 +-
include/tscore/LogMessage.h | 3 +-
include/tscore/PendingAction.h | 2 +
include/tscore/Throttler.h | 2 +-
include/tscore/ink_base64.h | 3 -
include/tscore/ink_thread.h | 24 +-
include/tscpp/api/TransactionPlugin.h | 2 +-
include/tscpp/util/ts_meta.h | 2 +-
include/wccp/Wccp.h | 2 +-
iocore/cache/Cache.cc | 7 +-
iocore/cache/CacheDir.cc | 3 +-
iocore/cache/CacheHosting.cc | 2 +-
iocore/cache/CacheWrite.cc | 4 +-
iocore/cache/P_CacheDisk.h | 2 +-
iocore/cache/test/main.cc | 8 +-
iocore/dns/DNS.cc | 14 +-
iocore/dns/P_DNSProcessor.h | 11 +-
iocore/eventsystem/I_Continuation.h | 8 +
iocore/eventsystem/I_EThread.h | 1 +
iocore/eventsystem/I_Thread.h | 2 +-
iocore/eventsystem/P_Thread.h | 4 +-
iocore/eventsystem/P_UnixEThread.h | 5 +-
iocore/eventsystem/Thread.cc | 18 +-
iocore/eventsystem/UnixEThread.cc | 29 +-
iocore/hostdb/HostDB.cc | 2 +-
iocore/net/P_SSLNetVConnection.h | 2 +-
iocore/net/P_SSLSNI.h | 26 +-
iocore/net/P_UnixNetState.h | 2 +-
iocore/net/P_UnixNetVConnection.h | 6 +-
iocore/net/SSLConfig.cc | 3 +
iocore/net/SSLDiags.cc | 38 +-
iocore/net/SSLDiags.h | 10 +-
iocore/net/SSLSNIConfig.cc | 21 +-
iocore/net/SSLUtils.cc | 22 +-
iocore/net/TLSSessionResumptionSupport.cc | 11 +-
iocore/net/UnixNetVConnection.cc | 4 +-
iocore/net/YamlSNIConfig.cc | 2 +-
iocore/net/YamlSNIConfig.h | 2 +-
iocore/net/quic/QUICStreamVCAdapter.cc | 2 +-
iocore/net/quic/QUICStreamVCAdapter.h | 2 +-
iocore/net/quic/test/event_processor_main.cc | 8 +-
iocore/net/quic/test/main.cc | 8 +-
iocore/net/test_certlookup.cc | 2 +-
iocore/utils/diags.i | 28 +-
lib/fastlz/fastlz.cc | 2 +-
lib/records/RecMessage.cc | 2 +-
lib/records/test_I_RecLocal.cc | 15 +-
lib/records/unit_tests/test_RecHttp.cc | 2 +-
lib/records/unit_tests/unit_test_main.cc | 2 +-
mgmt/RecordsConfig.cc | 8 +-
mgmt/api/CoreAPI.cc | 2 +-
mgmt/api/CoreAPIRemote.cc | 2 +-
mgmt/api/INKMgmtAPI.cc | 6 +-
mgmt/api/include/mgmtapi.h | 6 +-
mgmt/utils/MgmtUtils.cc | 6 +-
plugins/Makefile.am | 1 +
plugins/cache_promote/chance_policy.h | 2 +-
plugins/cache_promote/lru_policy.cc | 2 +-
plugins/cache_range_requests/README.md | 19 +-
.../cache_range_requests/cache_range_requests.cc | 69 +-
plugins/cachekey/pattern.cc | 2 +-
plugins/compress/compress.cc | 2 +-
plugins/experimental/access_control/pattern.cc | 2 +-
.../http_stats}/Makefile.inc | 15 +-
plugins/experimental/http_stats/http_stats.cc | 767 +++++++++++++++++++++
.../experimental/parent_select/consistenthash.cc | 45 +-
.../experimental/parent_select/consistenthash.h | 3 +-
.../parent_select/consistenthash_config.cc | 14 +-
plugins/experimental/parent_select/strategy.cc | 53 +-
plugins/experimental/parent_select/strategy.h | 5 +-
plugins/experimental/traffic_dump/json_utils.cc | 2 +-
plugins/header_rewrite/conditions.cc | 6 +-
plugins/lua/ts_lua_http_config.c | 2 +
plugins/prefetch/Makefile.inc | 8 +-
plugins/prefetch/evaluate.cc | 94 +++
.../P_Thread.h => plugins/prefetch/evaluate.h | 40 +-
plugins/prefetch/pattern.cc | 2 +-
plugins/prefetch/plugin.cc | 48 +-
plugins/prefetch/test/test_evaluate.cc | 66 ++
proxy/CacheControl.h | 2 +-
proxy/ControlMatcher.cc | 2 +-
proxy/ControlMatcher.h | 2 +-
proxy/IPAllow.cc | 12 +-
proxy/ParentConsistentHash.cc | 2 +-
proxy/ParentSelection.h | 2 +-
proxy/ParentSelectionStrategy.cc | 4 +-
proxy/PluginVC.cc | 4 +-
proxy/ReverseProxy.cc | 2 +-
proxy/hdrs/HuffmanCodec.cc | 45 +-
proxy/hdrs/load_http_hdr.cc | 2 +-
proxy/hdrs/test_Huffmancode.cc | 26 +
proxy/hdrs/unit_tests/test_XPACK.cc | 38 +-
proxy/http/HttpCacheSM.cc | 42 +-
proxy/http/HttpCacheSM.h | 7 +-
proxy/http/HttpConfig.cc | 2 +
proxy/http/HttpConfig.h | 5 +-
proxy/http/HttpSM.cc | 8 +-
proxy/http/HttpSessionManager.h | 2 +-
proxy/http/HttpTransact.cc | 18 +-
proxy/http/HttpTransact.h | 2 +-
proxy/http/HttpTransactHeaders.cc | 2 +-
proxy/http/HttpTunnel.cc | 4 +-
proxy/http/remap/NextHopConsistentHash.cc | 16 +-
proxy/http/remap/NextHopConsistentHash.h | 4 +-
proxy/http/remap/NextHopRoundRobin.h | 8 +-
proxy/http/remap/NextHopSelectionStrategy.cc | 51 +-
proxy/http/remap/NextHopSelectionStrategy.h | 5 +-
proxy/http/remap/NextHopStrategyFactory.cc | 40 +-
proxy/http/remap/PluginDso.h | 2 +-
proxy/http/remap/RemapConfig.cc | 5 +-
proxy/http/remap/RemapPlugins.cc | 2 +-
proxy/http/remap/UrlRewrite.cc | 22 +-
proxy/http/remap/UrlRewrite.h | 8 +
proxy/http2/HTTP2.cc | 2 +
proxy/http2/HTTP2.h | 1 +
proxy/http2/Http2ClientSession.cc | 10 +-
proxy/http2/Http2CommonSession.cc | 6 +
proxy/http2/Http2CommonSession.h | 1 +
proxy/http2/Http2ConnectionState.cc | 12 +-
proxy/http3/Http3HeaderVIOAdaptor.h | 2 +-
proxy/http3/test/main.cc | 8 +-
proxy/http3/test/main_qpack.cc | 8 +-
proxy/logging/LogAccess.cc | 4 +-
proxy/logging/LogStandalone.cc | 5 +-
proxy/shared/DiagsConfig.cc | 24 +-
src/shared/overridable_txn_vars.cc | 2 +
src/traffic_crashlog/traffic_crashlog.cc | 18 +-
src/traffic_ctl/traffic_ctl.cc | 10 +-
src/traffic_manager/traffic_manager.cc | 28 +-
src/traffic_quic/diags.h | 30 +-
src/traffic_server/InkAPI.cc | 36 +-
src/traffic_server/InkAPITest.cc | 1 +
src/traffic_server/traffic_server.cc | 34 +-
src/tscore/DbgCtl.cc | 111 +++
src/tscore/Diags.cc | 44 +-
src/tscore/LogMessage.cc | 15 +-
src/tscore/Makefile.am | 5 +-
src/tscore/Regex.cc | 22 +-
src/tscore/ink_cap.cc | 6 +-
src/tscore/mkdfa.c | 621 -----------------
src/tscore/unit_tests/test_CryptoHash.cc | 4 +-
.../unit_tests/test_X509HostnameValidator.cc | 2 +-
src/wccp/WccpLocal.h | 4 +-
tests/gold_tests/cache/alternate-caching.test.py | 51 ++
.../replay/alternate-caching-update-size.yaml | 162 +++++
.../chunked_encoding/bad_chunked_encoding.test.py | 8 +-
tests/gold_tests/dns/dns_down_nameserver.test.py | 193 ++++++
.../dns/replay/multiple_host_requests.replay.yaml | 93 +++
tests/gold_tests/ip_allow/ip_allow.test.py | 2 +-
...range_requests_cache_complete_responses.test.py | 461 +++++++++++++
.../parent_select_optional_scheme_matching.test.py | 134 ++++
.../prefetch_simple/prefetch_simple.gold | 4 +
.../prefetch_simple/prefetch_simple.test.py | 81 +++
tests/gold_tests/pluginTest/tsapi/test_tsapi.cc | 14 +-
tests/gold_tests/pluginTest/tsapi/tsapi.test.py | 2 +-
tests/gold_tests/post/post-early-return.test.py | 20 +-
.../gold_tests/remap/reload_1.replay.yaml | 34 +-
.../gold_tests/remap/reload_2.replay.yaml | 34 +-
.../gold_tests/remap/reload_3.replay.yaml | 34 +-
.../gold_tests/remap/reload_4.replay.yaml | 34 +-
.../gold_tests/remap/reload_server.replay.yaml | 46 +-
.../remap/remap_load_empty_failure.test.py | 25 +-
.../remap/remap_load_empty_success.test.py | 28 +-
.../remap/remap_load_missing_failure.test.py | 24 +-
.../remap/remap_load_missing_success.test.py | 30 +-
tests/gold_tests/remap/remap_reload.test.py | 87 +++
tests/prepare_proxy_verifier.sh | 2 +-
tests/proxy-verifier-version.txt | 2 +-
tools/http_load/http_load.c | 2 +-
tools/jtest/jtest.cc | 2 +-
196 files changed, 3875 insertions(+), 1709 deletions(-)
diff --cc src/traffic_server/traffic_server.cc
index 796644fdf,d4f25d4af..eb19f4081
--- a/src/traffic_server/traffic_server.cc
+++ b/src/traffic_server/traffic_server.cc
@@@ -426,33 -403,16 +426,33 @@@ public
// to send a notification from TS to TM, informing TM that outputlog has
// been rolled. It is much easier sending a notification (in the form
// of SIGUSR2) from TM -> TS.
- int diags_log_roll_int = (int)REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_interval_sec");
- int diags_log_roll_size = (int)REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_size_mb");
- int diags_log_roll_enable = (int)REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_enabled");
- diags()->config_roll_diagslog((RollingEnabledValues)diags_log_roll_enable, diags_log_roll_int, diags_log_roll_size);
+ int diags_log_roll_int = static_cast<int>(REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_interval_sec"));
+ int diags_log_roll_size = static_cast<int>(REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_size_mb"));
+ int diags_log_roll_enable = static_cast<int>(REC_ConfigReadInteger("proxy.config.diags.logfile.rolling_enabled"));
- diags->config_roll_diagslog(static_cast<RollingEnabledValues>(diags_log_roll_enable), diags_log_roll_int, diags_log_roll_size);
++ diags()->config_roll_diagslog(static_cast<RollingEnabledValues>(diags_log_roll_enable), diags_log_roll_int, diags_log_roll_size);
- if (diags->should_roll_diagslog()) {
+ if (diags()->should_roll_diagslog()) {
Note("Rolled %s", diags_log_filename);
}
+
+ // If we are using the JSONRPC service, then there is no traffic_manager
+ // and we are responsible for rolling traffic.out.
+ if (jsonrpcServer != nullptr) {
+ int output_log_roll_int = static_cast<int>(REC_ConfigReadInteger("proxy.config.output.logfile.rolling_interval_sec"));
+ int output_log_roll_size = static_cast<int>(REC_ConfigReadInteger("proxy.config.output.logfile.rolling_size_mb"));
+ int output_log_roll_enable = static_cast<int>(REC_ConfigReadInteger("proxy.config.output.logfile.rolling_enabled"));
- diags->config_roll_outputlog(static_cast<RollingEnabledValues>(output_log_roll_enable), output_log_roll_int,
++ diags()->config_roll_outputlog(static_cast<RollingEnabledValues>(output_log_roll_enable), output_log_roll_int,
+ output_log_roll_size);
+
- if (diags->should_roll_outputlog()) {
++ if (diags()->should_roll_outputlog()) {
+ Note("Rolled %s", traffic_out_name.c_str());
+ }
+ }
return EVENT_CONT;
}
+
+private:
+ std::string traffic_out_name;
};
class MemoryLimit : public Continuation