diff --git a/doc/admin-guide/files/records.yaml.en.rst b/doc/admin-guide/files/records.yaml.en.rst
index 28c443a6e3c..a1559208305 100644
--- a/doc/admin-guide/files/records.yaml.en.rst
+++ b/doc/admin-guide/files/records.yaml.en.rst
@@ -267,36 +267,12 @@ System Variables
The location of the |TS| ``bin`` directory.
-.. ts:cv:: CONFIG proxy.config.proxy_binary STRING traffic_server
-
- .. important::
-
- This is now deprecated. traffic_manager is no longer supported.
-
-.. ts:cv:: CONFIG proxy.config.proxy_binary_opts STRING -M
-
- .. important::
-
- This is now deprecated
-
-.. ts:cv:: CONFIG proxy.config.manager_binary STRING traffic_manager
-
- .. important::
-
- This is now deprecated. traffic_manager is no longer supported.
-
.. ts:cv:: CONFIG proxy.config.memory.max_usage INT 0
:units: bytes
Throttle incoming connections if resident memory usage exceeds this value.
Setting the option to 0 disables the feature.
-.. ts:cv:: CONFIG proxy.config.env_prep STRING
-
- .. important::
-
- This is now deprecated. traffic_manager is no longer supported.
-
.. ts:cv:: CONFIG proxy.config.syslog_facility STRING LOG_DAEMON
The facility used to record system log files. Refer to
@@ -463,13 +439,6 @@ Thread Variables
that :program:`traffic_server` crashes. ``-1`` means there is
no limit. A value of ``0`` prevents core dump creation.
-.. ts:cv:: CONFIG proxy.config.restart.active_client_threshold INT 0
- :reloadable:
-
- .. important::
-
- Deprecated. traffic_manager is no longer supported.
-
.. ts:cv:: CONFIG proxy.config.restart.stop_listening INT 0
:reloadable:
@@ -649,12 +618,6 @@ Network
Management
==========
-.. ts:cv:: CONFIG proxy.node.config.manager_log_filename STRING manager.log
-
- .. important::
-
- This is now deprecated. traffic_manager is no longer supported.
-
.. ts:cv:: CONFIG proxy.config.admin.user_id STRING nobody
Designates the non-privileged account to run the :program:`traffic_server`
diff --git a/doc/admin-guide/monitoring/statistics/core/general.en.rst b/doc/admin-guide/monitoring/statistics/core/general.en.rst
index 01446038ea6..1b0f6f1f3d1 100644
--- a/doc/admin-guide/monitoring/statistics/core/general.en.rst
+++ b/doc/admin-guide/monitoring/statistics/core/general.en.rst
@@ -31,11 +31,6 @@ General
.. ts:stat:: global proxy.node.config.reconfigure_time integer
-.. ts:stat:: global proxy.node.config.restart_required.manager integer
- :type: flag
-
- This metric is now deprecated. traffic_manager is no longer supported.
-
.. ts:stat:: global proxy.node.config.restart_required.proxy integer
:type: flag
@@ -53,12 +48,6 @@ General
Indicates whether any form of HTTP proxying is currently enabled in the
running instance of |TS|.
-.. ts:stat:: global proxy.node.restarts.manager.start_time integer
- :type: gauge
- :units: seconds
-
- This metric is now deprecated. traffic_manager is no longer supported.
-
.. ts:stat:: global proxy.node.restarts.proxy.cache_ready_time integer
:type: gauge
:units: seconds
diff --git a/doc/appendices/command-line/traffic_manager.en.rst b/doc/appendices/command-line/traffic_manager.en.rst
deleted file mode 100644
index bf2141385e1..00000000000
--- a/doc/appendices/command-line/traffic_manager.en.rst
+++ /dev/null
@@ -1,33 +0,0 @@
-.. Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
-.. include:: ../../common.defs
-
-.. _traffic_manager:
-
-traffic_manager
-***************
-
-.. important::
-
- traffic_manager is deprecated. :program:`traffic_server` must be used instead.
-
-See also
-========
-
-:manpage:`traffic_ctl(8)`,
-:manpage:`traffic_server(8)`
diff --git a/doc/uml/RPC-sequence-diagram.uml b/doc/uml/RPC-sequence-diagram.uml
deleted file mode 100644
index 5a5c0d3d33a..00000000000
--- a/doc/uml/RPC-sequence-diagram.uml
+++ /dev/null
@@ -1,45 +0,0 @@
-' Licensed under the Apache License, Version 2.0 (the "License");
-' you may not use this file except in compliance with the License.
-' You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-' Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
-' on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-' See the License for the specific language governing permissions and limitations under the License.
-
-@startuml
-
-actor user
-box "traffic_ctl address space" #DDFFDD
-entity traffic_ctl
-end box
-collections "Remote RPC API" as remote_rpc
-box "traffic_manager address space" #DDDDFF
-entity traffic_manager
-end box
-collections "Local RPC API" as local_rpc
-box "traffic_server address space" #FFDB99
-entity traffic_server
-end box
-entity plugin
-
-traffic_manager -> traffic_server : traffic_server registers\ncallback for ""MGMT_EVENT_LIFECYCLE_EVENT""
-traffic_server -> plugin : register to ""TS_LIFECYCLE_MSG_HOOK""
-user -> traffic_ctl : "traffic_ctl plugin msg TAG hello"
-traffic_ctl -> remote_rpc : lifecycle message
-note left : msd id ""MGMT_EVENT_LIFECYCLE_MESSAGE""
-remote_rpc -[#blue]-> remote_rpc : //serialize message//
-remote_rpc -> traffic_manager : sent over sockets
-note over traffic_ctl, traffic_manager : Using remote RPC functions\n""CoreAPIRemote, NetworkUtilsRemote""
-
-traffic_manager -[#blue]-> local_rpc: //serialized message//
-local_rpc -> traffic_server : resent over sockets
-note over traffic_manager, traffic_server : Local RPC functions\n""CoreAPI, NetworkUtilsLocal""
-traffic_server -> traffic_server : callback function selected based on msg id\n""MGMT_EVENT_LIFECYCLE_MESSAGE""
-traffic_server -[#blue]-> local_rpc : //unserialize message//
-traffic_server -> plugin : invoke hook and attach ""TSPluginMsg""
-plugin -> plugin : hooks ""TS_LIFECYCLE_MSG_HOOK""\nand reads ""TSPluginMsg""
-traffic_manager -[#green]-> remote_rpc : TS_ERR_OK
-note right : traffic_manager has no idea if\nplugin actually received message
-remote_rpc -> traffic_ctl : parse response
-
-
-@enduml
diff --git a/doc/uml/RPC-states.uml b/doc/uml/RPC-states.uml
deleted file mode 100644
index c95ade5c634..00000000000
--- a/doc/uml/RPC-states.uml
+++ /dev/null
@@ -1,73 +0,0 @@
-' Licensed under the Apache License, Version 2.0 (the "License");
-' you may not use this file except in compliance with the License.
-' You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-' Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
-' on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-' See the License for the specific language governing permissions and limitations under the License.
-
-@startuml
-
-state "LocalManager\nruns in traffic_manager main event loop" as traffic_manager {
- state "processEventQueue" as tm_process_events {
- state "dequeue msg" as tm_dequeue : from ""mgmt_event_queue""
- state "send msg to processes" as tm_send_events : ""sendMgmtMsgToProcesses""
- tm_dequeue -d-> [*] : empty
- tm_dequeue -d-> tm_send_events : based on msg_id
- tm_send_events -u-> tm_dequeue
- }
-
- state "pollMgmtProcessServer" as tm_poll_ts {
- state "poll socket" as tm_poll_sock : ""mgmt_select""
- state "new connection" as tm_new_process : register new client socket fd\nto start getting msgs from\nclient
- state "new message" as tm_new_message : new message from process
- state "handle msg" as tm_handle_msg : ""handleMgmtMsgFromProcesses"" will\noften ""signalAlarm"" with received\nmsg_id
-
- tm_poll_sock -d-> tm_new_process : new process trying to connect
- tm_poll_sock -d-> tm_new_message : msg from ""traffic_server""
- tm_poll_sock -d-> [*] : timed out
- tm_new_message -d-> tm_handle_msg : based on msg_id
- tm_handle_msg -u-> tm_poll_sock
- tm_new_process -u-> tm_poll_sock
-
- state "External Event" as tm_ext_event : mechanism to stop polling
- tm_ext_event -u-> [*] : ""eventfd"" trigger
- }
-
- [*] -d-> tm_process_events
- tm_process_events -d-> tm_poll_ts
- tm_poll_ts -d-> [*] : other tasks ""traffic_manager"" is\nresponsible for including ""rotateLogs"",\nmanaging metrics and monitoring\n""traffic_server""
-}
-
-state "ProcessManager\nruns in processManagerThread from traffic_server" as traffic_server {
- state "pollLMConnection" as ts_poll_tm {
- state "poll socket" as ts_poll_sock : ""mgmt_read_timeout""
- state "handle event" as ts_handle_event : ""executeMgmtCallback""
- state "send response" as ts_response : enqueue response to ""mgmt_signal_queue""
- ts_poll_sock -down-> ts_handle_event : handle based on ""msg_id""
- ts_handle_event -d-> ts_response : callback enqueues response
- ts_response -u-> ts_handle_event
- ts_handle_event -u-> ts_poll_sock
-
- ts_poll_sock -down-> [*] : timed out
- state "External Event" as ts_ext_event : mechanism to stop polling
- ts_ext_event -u-> [*] : ""eventfd"" trigger
- }
-
- state "processSignalQueue" as ts_send_signals {
- state "dequeue signal" as ts_dequeue_signal : dequeue from ""mgmt_signal_queue""
- state "send out msg" as ts_outgoing_msg : ""mgmt_write_pipe""
- ts_dequeue_signal -d-> [*] : empty
- ts_dequeue_signal -d-> ts_outgoing_msg : send out msg
- ts_outgoing_msg -u-> ts_dequeue_signal
-
- }
- ts_send_signals : send outgoing messages via processSignalQueue
- ts_poll_tm -down-> ts_send_signals
- ts_send_signals -up-> ts_poll_tm
-}
-
-ts_send_signals -r-> tm_poll_ts : msg from ""traffic_server"" to ""traffic_manager""
-tm_process_events -l-> ts_poll_tm : msg from ""traffic_manager"" to ""traffic_server""
-
-
-@enduml
diff --git a/include/records/DynamicStats.h b/include/records/DynamicStats.h
index d31c71f33f5..9339913c236 100644
--- a/include/records/DynamicStats.h
+++ b/include/records/DynamicStats.h
@@ -35,7 +35,7 @@
- supported: TSStatCreate, TSStatIntIncrement/TSStatIntDecrement, TSStatIntGet, TSStatIntSet, TSStatFindName
CAVEAT: The librecords doesn't have APIs for "unregister stats" or "realloc rsb".
- If you want to register ton of stats, bump -maxRecords option of traffic_manager/traffic_server.
+ If you want to register ton of stats, bump -maxRecords option of traffic_server.
*/
class DynamicStats
diff --git a/include/tscore/ink_error.h b/include/tscore/ink_error.h
index 0e4b4bbfab4..2870a14cfef 100644
--- a/include/tscore/ink_error.h
+++ b/include/tscore/ink_error.h
@@ -44,9 +44,6 @@
// This magic exit code is used to signal that the crashing process cannot
// be recovered from a restart of said process
//
-// Originally, this was intended to be used as a backchannel mechanism whereby
-// traffic_server can tell traffic_manager via an exit code to stop trying to restart
-// traffic_server b/c (for example) traffic_server has a bad config file
#define UNRECOVERABLE_EXIT 33
void ink_emergency_va(const char *fmt, va_list ap) TS_NORETURN;
diff --git a/src/records/RecordsConfig.cc b/src/records/RecordsConfig.cc
index c30820ba32c..0355bae675b 100644
--- a/src/records/RecordsConfig.cc
+++ b/src/records/RecordsConfig.cc
@@ -53,8 +53,6 @@ static const RecordElement RecordsConfig[] =
,
{RECT_CONFIG, "proxy.config.bin_path", RECD_STRING, TS_BUILD_BINDIR, RECU_NULL, RR_REQUIRED, RECC_NULL, nullptr, RECA_READ_ONLY}
,
- {RECT_CONFIG, "proxy.config.env_prep", RECD_STRING, nullptr, RECU_NULL, RR_NULL, RECC_NULL, nullptr, RECA_NULL}
- ,
// Jira TS-21
{RECT_CONFIG, "proxy.config.local_state_dir", RECD_STRING, TS_BUILD_RUNTIMEDIR, RECU_RESTART_TS, RR_NULL, RECC_NULL, nullptr, RECA_READ_ONLY}
,
@@ -123,8 +121,6 @@ static const RecordElement RecordsConfig[] =
,
{RECT_CONFIG, "proxy.config.thread.default.stackguard_pages", RECD_INT, "1", RECU_RESTART_TS, RR_NULL, RECC_INT, "[1-256]", RECA_READ_ONLY}
,
- {RECT_CONFIG, "proxy.config.restart.active_client_threshold", RECD_INT, "0", RECU_DYNAMIC, RR_NULL, RECC_NULL, nullptr, RECA_NULL}
- ,
{RECT_CONFIG, "proxy.config.restart.stop_listening", RECD_INT, "0", RECU_DYNAMIC, RR_NULL, RECC_INT, "[0-1]", RECA_NULL}
,
{RECT_CONFIG, "proxy.config.stop.shutdown_timeout", RECD_INT, "0", RECU_DYNAMIC, RR_NULL, RECC_STR, "^[0-9]+$", RECA_NULL}
diff --git a/src/traffic_ctl/jsonrpc/CtrlRPCRequests.h b/src/traffic_ctl/jsonrpc/CtrlRPCRequests.h
index cc03492875f..00691679e95 100644
--- a/src/traffic_ctl/jsonrpc/CtrlRPCRequests.h
+++ b/src/traffic_ctl/jsonrpc/CtrlRPCRequests.h
@@ -243,10 +243,9 @@ struct ConfigStatusRequest : shared::rpc::RecordLookupRequest {
using super = shared::rpc::RecordLookupRequest;
ConfigStatusRequest() : super()
{
- static const std::array statusFieldsNames = {
- "proxy.process.version.server.long", "proxy.node.restarts.proxy.start_time",
- "proxy.node.config.reconfigure_time", "proxy.node.config.reconfigure_required",
- "proxy.node.config.restart_required.proxy", "proxy.node.config.restart_required.manager"};
+ static const std::array statusFieldsNames = {
+ "proxy.process.version.server.long", "proxy.node.restarts.proxy.start_time", "proxy.node.config.reconfigure_time",
+ "proxy.node.config.reconfigure_required", "proxy.node.config.restart_required.proxy"};
for (auto &&recordName : statusFieldsNames) {
super::emplace_rec(recordName, shared::rpc::NOT_REGEX, shared::rpc::METRIC_REC_TYPES);
}
diff --git a/src/traffic_server/traffic_server.cc b/src/traffic_server/traffic_server.cc
index 6322af6e24a..df08bc04b07 100644
--- a/src/traffic_server/traffic_server.cc
+++ b/src/traffic_server/traffic_server.cc
@@ -1822,7 +1822,6 @@ main(int /* argc ATS_UNUSED */, const char **argv)
RecRegisterStatInt(RECT_NODE, "proxy.node.config.reconfigure_time", time(nullptr), RECP_NON_PERSISTENT);
RecRegisterStatInt(RECT_NODE, "proxy.node.config.reconfigure_required", 0, RECP_NON_PERSISTENT);
RecRegisterStatInt(RECT_NODE, "proxy.node.config.restart_required.proxy", 0, RECP_NON_PERSISTENT);
- RecRegisterStatInt(RECT_NODE, "proxy.node.config.restart_required.manager", 0, RECP_NON_PERSISTENT);
RecRegisterStatInt(RECT_NODE, "proxy.node.config.draining", 0, RECP_NON_PERSISTENT);
RecRegisterStatInt(RECT_NODE, "proxy.node.proxy_running", 1, RECP_NON_PERSISTENT);
RecSetRecordInt("proxy.node.restarts.proxy.start_time", time(nullptr), REC_SOURCE_DEFAULT);
diff --git a/tests/gold_tests/logging/ts_process_handler.py b/tests/gold_tests/logging/ts_process_handler.py
index 4bcfa217707..f15280182a8 100644
--- a/tests/gold_tests/logging/ts_process_handler.py
+++ b/tests/gold_tests/logging/ts_process_handler.py
@@ -33,18 +33,12 @@ def __init__(self, message):
super().__init__(self.message)
-def get_desired_process(ts_identifier, get_ppid=False):
+def get_ts_process_pid(ts_identifier):
+ processes = []
for proc in psutil.process_iter(['cmdline']):
commandline = ' '.join(proc.info['cmdline'])
if '/traffic_server' in commandline and ts_identifier in commandline:
- if not get_ppid:
- return proc
- parent = proc.parent()
- with parent.oneshot():
- if 'traffic_manager' not in parent.cmdline():
- raise GetPidError("Found a traffic server process, "
- "but its parent is not traffic_manager")
- return parent
+ return proc
raise GetPidError("Could not find a traffic_server process")
@@ -88,9 +82,6 @@ def parse_args():
parser.add_argument(
'--signal',
help='Send the given signal to the process.')
- parser.add_argument(
- '--parent', action="store_true", default=False,
- help='Interact with the parent process of the Traffic Server process')
return parser.parse_args()
@@ -98,7 +89,7 @@ def parse_args():
def main():
args = parse_args()
try:
- process = get_desired_process(args.ts_identifier, args.parent)
+ process = get_ts_process_pid(args.ts_identifier)
except GetPidError as e:
print(traceback.format_exception(None, e, e.__traceback__),
file=sys.stderr, flush=True)
diff --git a/tests/gold_tests/records/gold/full_records.yaml b/tests/gold_tests/records/gold/full_records.yaml
index 71098cb4730..b211a3118a8 100644
--- a/tests/gold_tests/records/gold/full_records.yaml
+++ b/tests/gold_tests/records/gold/full_records.yaml
@@ -471,7 +471,6 @@ ts:
remote_sync_interval_ms: 5000
res_track_memory: 0
restart:
- active_client_threshold: 0
stop_listening: 0
reverse_proxy:
enabled: 1
diff --git a/tests/gold_tests/records/legacy_config/full_records.config b/tests/gold_tests/records/legacy_config/full_records.config
index fc21c7ea81b..2bad9fadf81 100644
--- a/tests/gold_tests/records/legacy_config/full_records.config
+++ b/tests/gold_tests/records/legacy_config/full_records.config
@@ -25,7 +25,6 @@ CONFIG proxy.config.accept_threads INT 1
CONFIG proxy.config.task_threads INT 2
CONFIG proxy.config.thread.default.stacksize INT 1048576
CONFIG proxy.config.thread.default.stackguard_pages INT 1
-CONFIG proxy.config.restart.active_client_threshold INT 0
CONFIG proxy.config.restart.stop_listening INT 0
CONFIG proxy.config.stop.shutdown_timeout INT 0
CONFIG proxy.config.thread.max_heartbeat_mseconds INT 60