1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-11-19 22:02:09 +03:00

fix(cmapi): MCOL-6091 CMAPI gives DMLProc only 10 seconds for a greceful stop

Fix default timeout for stop node, stop dml proc, shutdown Controller, put_config handler etc.
All places that could cause reducing dmlproc graceful stop timeout are fixed:
- cluster and node shutdown
- stop_dmlproc
- start_transaction
- put_config
- toggle_cluster_state
This commit is contained in:
mariadb-AlanMologorsky
2025-10-17 15:53:39 +03:00
committed by Alan Mologorsky
parent 63415f28d0
commit c5e3b847ab
8 changed files with 98 additions and 49 deletions

View File

@@ -16,10 +16,18 @@ from mcs_node_control.models.node_status import NodeStatus
from pydantic import ValidationError
from cmapi_server.constants import (
CMAPI_PACKAGE_NAME, CMAPI_PORT, DEFAULT_MCS_CONF_PATH,
DEFAULT_SM_CONF_PATH, EM_PATH_SUFFIX, MCS_BRM_CURRENT_PATH, MCS_EM_PATH,
MDB_CS_PACKAGE_NAME, MDB_SERVER_PACKAGE_NAME, REQUEST_TIMEOUT,
S3_BRM_CURRENT_PATH, SECRET_KEY,
CMAPI_PACKAGE_NAME,
CMAPI_PORT,
DEFAULT_MCS_CONF_PATH,
DMLPROC_SHUTDOWN_TIMEOUT,
EM_PATH_SUFFIX,
MCS_BRM_CURRENT_PATH,
MCS_EM_PATH,
MDB_CS_PACKAGE_NAME,
MDB_SERVER_PACKAGE_NAME,
REQUEST_TIMEOUT,
S3_BRM_CURRENT_PATH,
SECRET_KEY,
)
from cmapi_server.controllers.api_clients import NodeControllerClient
from cmapi_server.controllers.error import APIError
@@ -725,7 +733,7 @@ class ShutdownController:
req = cherrypy.request
use_sudo = get_use_sudo(req.app.config)
request_body = cherrypy.request.json
timeout = request_body.get('timeout', 0)
timeout = request_body.get('timeout', DMLPROC_SHUTDOWN_TIMEOUT)
node_config = NodeConfig()
try:
MCSProcessManager.stop_node(
@@ -894,7 +902,7 @@ class ClusterController:
request = cherrypy.request
request_body = request.json
timeout = request_body.get('timeout', None)
timeout = request_body.get('timeout', DMLPROC_SHUTDOWN_TIMEOUT)
force = request_body.get('force', False)
config = request_body.get('config', DEFAULT_MCS_CONF_PATH)
in_transaction = request_body.get('in_transaction', False)
@@ -904,7 +912,7 @@ class ClusterController:
with TransactionManager():
response = ClusterHandler.shutdown(config, timeout)
else:
response = ClusterHandler.shutdown(config)
response = ClusterHandler.shutdown(config, timeout)
except CMAPIBasicError as err:
raise_422_error(module_logger, func_name, err.message)
@@ -1594,7 +1602,7 @@ class NodeProcessController():
request = cherrypy.request
request_body = request.json
timeout = request_body.get('timeout', 10)
timeout = request_body.get('timeout', DMLPROC_SHUTDOWN_TIMEOUT)
force = request_body.get('force', False)
if force: