1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-07 03:22:57 +03:00

MCOL-4314 Related. Make mcs-workernode a template service to avoid SM contention

This commit is contained in:
Jose Rojas
2020-10-06 21:10:37 -05:00
parent d85fc579ba
commit 2a6dd64e5f
9 changed files with 18 additions and 17 deletions

View File

@@ -13,7 +13,7 @@ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/disable-rep-columnstore.sh.in" "${CM
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mariadb-command-line.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/mariadb-command-line.sh" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mariadb-command-line.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/mariadb-command-line.sh" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/slave-rep-columnstore.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/slave-rep-columnstore.sh" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/slave-rep-columnstore.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/slave-rep-columnstore.sh" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs_module_installer.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs_module_installer.sh" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs_module_installer.sh.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs_module_installer.sh" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-workernode.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-workernode.service" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-workernode.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-workernode@.service" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-controllernode.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-controllernode.service" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-controllernode.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-controllernode.service" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-primproc.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-primproc.service" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-primproc.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-primproc.service" @ONLY)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-exemgr.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-exemgr.service" @ONLY) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mcs-exemgr.service.in" "${CMAKE_CURRENT_SOURCE_DIR}/mcs-exemgr.service" @ONLY)
@@ -62,7 +62,7 @@ install(FILES mariadb-columnstore.service
columnstoreLogRotate columnstoreLogRotate
myCnf-include-args.text myCnf-include-args.text
myCnf-exclude-args.text myCnf-exclude-args.text
mcs-workernode.service mcs-workernode@.service
mcs-controllernode.service mcs-controllernode.service
mcs-primproc.service mcs-primproc.service
mcs-exemgr.service mcs-exemgr.service

View File

@@ -149,8 +149,8 @@ if [ $user = "root" ]; then
cp @ENGINE_SUPPORTDIR@/mcs-exemgr.service /lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-exemgr.service /lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-primproc.service /usr/lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-primproc.service /usr/lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-primproc.service /lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-primproc.service /lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-workernode.service /usr/lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-workernode@.service /usr/lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-workernode.service /lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-workernode@.service /lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-writeengineserver.service /usr/lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-writeengineserver.service /usr/lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-writeengineserver.service /lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-writeengineserver.service /lib/systemd/system/. >/dev/null 2>&1
cp @ENGINE_SUPPORTDIR@/mcs-loadbrm.service /usr/lib/systemd/system/. >/dev/null 2>&1 cp @ENGINE_SUPPORTDIR@/mcs-loadbrm.service /usr/lib/systemd/system/. >/dev/null 2>&1
@@ -165,7 +165,7 @@ if [ $user = "root" ]; then
systemctl enable mcs-dmlproc > /dev/null 2>&1 systemctl enable mcs-dmlproc > /dev/null 2>&1
systemctl enable mcs-exemgr > /dev/null 2>&1 systemctl enable mcs-exemgr > /dev/null 2>&1
systemctl enable mcs-primproc > /dev/null 2>&1 systemctl enable mcs-primproc > /dev/null 2>&1
systemctl enable mcs-workernode > /dev/null 2>&1 systemctl enable mcs-workernode@ > /dev/null 2>&1
systemctl enable mcs-writeengineserver > /dev/null 2>&1 systemctl enable mcs-writeengineserver > /dev/null 2>&1
systemctl enable mcs-loadbrm > /dev/null 2>&1 systemctl enable mcs-loadbrm > /dev/null 2>&1
systemctl enable mcs-storagemanager > /dev/null 2>&1 systemctl enable mcs-storagemanager > /dev/null 2>&1

View File

@@ -82,7 +82,7 @@ if [ -n "$systemctl" ] && [ $(running_systemd) -eq 0 ]; then
systemctl disable mcs-dmlproc > /dev/null 2>&1 systemctl disable mcs-dmlproc > /dev/null 2>&1
systemctl disable mcs-exemgr > /dev/null 2>&1 systemctl disable mcs-exemgr > /dev/null 2>&1
systemctl disable mcs-primproc > /dev/null 2>&1 systemctl disable mcs-primproc > /dev/null 2>&1
systemctl disable mcs-workernode > /dev/null 2>&1 systemctl disable mcs-workernode@.service > /dev/null 2>&1
systemctl disable mcs-writeengineserver > /dev/null 2>&1 systemctl disable mcs-writeengineserver > /dev/null 2>&1
systemctl disable mcs-loadbrm > /dev/null 2>&1 systemctl disable mcs-loadbrm > /dev/null 2>&1
systemctl disable mcs-storagemanager > /dev/null 2>&1 systemctl disable mcs-storagemanager > /dev/null 2>&1
@@ -99,8 +99,8 @@ if [ -n "$systemctl" ] && [ $(running_systemd) -eq 0 ]; then
rm -f /lib/systemd/system/mcs-exemgr.service rm -f /lib/systemd/system/mcs-exemgr.service
rm -f /usr/lib/systemd/system/mcs-primproc.service rm -f /usr/lib/systemd/system/mcs-primproc.service
rm -f /lib/systemd/system/mcs-primproc.service rm -f /lib/systemd/system/mcs-primproc.service
rm -f /usr/lib/systemd/system/mcs-workernode.service rm -f /usr/lib/systemd/system/mcs-workernode@.service
rm -f /lib/systemd/system/mcs-workernode.service rm -f /lib/systemd/system/mcs-workernode@.service
rm -f /usr/lib/systemd/system/mcs-writeengineserver.service rm -f /usr/lib/systemd/system/mcs-writeengineserver.service
rm -f /lib/systemd/system/mcs-writeengineserver.service rm -f /lib/systemd/system/mcs-writeengineserver.service
rm -f /usr/lib/systemd/system/mcs-loadbrm.service rm -f /usr/lib/systemd/system/mcs-loadbrm.service

View File

@@ -7,7 +7,8 @@
exec {fd_lock}>/var/lib/columnstore/storagemanager/storagemanager-lock exec {fd_lock}>/var/lib/columnstore/storagemanager/storagemanager-lock
flock -n "$fd_lock" || exit 0 flock -n "$fd_lock" || exit 0
/bin/systemctl start mcs-workernode # pass in arg of 1 to start DBRM_Worker1
/bin/systemctl start mcs-workernode@1.service
/bin/systemctl start mcs-controllernode /bin/systemctl start mcs-controllernode
/bin/systemctl start mcs-primproc /bin/systemctl start mcs-primproc
/bin/systemctl start mcs-writeengineserver /bin/systemctl start mcs-writeengineserver

View File

@@ -8,7 +8,7 @@
/bin/systemctl stop mcs-writeengineserver /bin/systemctl stop mcs-writeengineserver
/bin/systemctl stop mcs-primproc /bin/systemctl stop mcs-primproc
/bin/systemctl stop mcs-controllernode /bin/systemctl stop mcs-controllernode
/bin/systemctl stop mcs-workernode /bin/systemctl stop mcs-workernode@.service
/bin/systemctl stop mcs-storagemanager /bin/systemctl stop mcs-storagemanager
exit 0 exit 0

View File

@@ -2,8 +2,8 @@
Description=mcs-controllernode Description=mcs-controllernode
# restart/stop mcs-controllernode on restart/stop of mcs-workernode # restart/stop mcs-controllernode on restart/stop of mcs-workernode
PartOf=mcs-workernode.service PartOf=mcs-workernode@.service
After=network.target mcs-workernode.service After=network.target mcs-workernode@.service
[Service] [Service]
Type=simple Type=simple

View File

@@ -1,6 +1,6 @@
[Unit] [Unit]
Description=loadbrm Description=loadbrm
PartOf=mcs-workernode.service PartOf=mcs-workernode@.service
After=network.target mcs-storagemanager.service After=network.target mcs-storagemanager.service
[Service] [Service]
@@ -8,4 +8,4 @@ Type=oneshot
ExecStart=/usr/bin/env bash -c "@ENGINE_BINDIR@/mcs-loadbrm.py && sleep 2" ExecStart=/usr/bin/env bash -c "@ENGINE_BINDIR@/mcs-loadbrm.py && sleep 2"
[Install] [Install]
WantedBy=mcs-workernode.service WantedBy=mcs-workernode@.service

View File

@@ -2,9 +2,9 @@
Description=mcs-primproc Description=mcs-primproc
# restart/stop mcs-primproc on restart/stop of mcs-workernode or mcs-controllernode # restart/stop mcs-primproc on restart/stop of mcs-workernode or mcs-controllernode
PartOf=mcs-workernode.service PartOf=mcs-workernode@.service
PartOf=mcs-controllernode.service PartOf=mcs-controllernode.service
After=network.target mcs-workernode.service mcs-controllernode.service After=network.target mcs-workernode@.service mcs-controllernode.service
[Service] [Service]
Type=simple Type=simple

View File

@@ -10,7 +10,7 @@ Group=mysql
LimitNOFILE=65536 LimitNOFILE=65536
LimitNPROC=65536 LimitNPROC=65536
ExecStart=@ENGINE_BINDIR@/workernode DBRM_Worker1 fg ExecStart=@ENGINE_BINDIR@/workernode DBRM_Worker%i fg
ExecStopPost=@ENGINE_BINDIR@/mcs-savebrm.py ExecStopPost=@ENGINE_BINDIR@/mcs-savebrm.py
ExecStopPost=/usr/bin/env bash -c "clearShm > /dev/null 2>&1" ExecStopPost=/usr/bin/env bash -c "clearShm > /dev/null 2>&1"