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