Skip to Main Content
IBM Data and AI Ideas Portal for Customers

This portal is to open public enhancement requests against products and services offered by the IBM Data & AI organization. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (

Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas

Post ideas and requests to enhance a product or service. Take a look at ideas others have posted and upvote them if they matter to you,

  1. Post an idea

  2. Upvote ideas that matter most to you

  3. Get feedback from the IBM team to refine your idea

Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal ( - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal ( - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM. - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

IBM Data & AI Roadmaps ( - Use this site to view roadmaps for Data & AI products.

IBM Employees should enter Ideas at

Status Delivered
Workspace Db2
Created by Guest
Created on Mar 11, 2019

Make TSA start DB2 under system.slice, in order to gracefully stop/takeover databases on shutdowns/reboots.

Since init was replaced by systemd as the linux main process (in 2014 !), it makes huge difference the way DB2 is started. At server shutdown or reboot, the user processes are all killed, and only then systemd starts to stop the services. This behavior is hardcoded. And the way TSA (or TSAMP ?) starts DB2 put it under the "user.slice" control group. It means systemd kills all DB2 processes at the first action when a sysadmin states a shutdown or reboot.

We have some DB2 HADR clusters automated using TSA and db2haicu. Our sysadmins boot all the servers once or twice a month, in order to install OS fixes. They are planned shutdowns, but the DB2 processes are simply killed. Then, TSA tries to restart them, and finally TSA is killed too, and server reboots without properly shutdown or takeover the databases to the peer.

Log on each server and using "db2haicu" or "db2 takeover db..." is not practical, and prevent our sysadmins from using they standard automated tools. I'm worried about this because killing processes is not the correct way to stop a database. We are unnecessarily exposing our databases to corruption factors, and sometimes the TSA itself shows malfunctioning because it didn't have time to gracefully stop before server goes off.

Writing an unit file "db2.service" with "ExecStop=..." is not enough, because DB2 is killed before the first stop script is called (systemd hardcoded behavior). I opened a case on RedHat asking for a way to gracefully stop DB2, but the response was that is impossible under user.slice, and: "I recommend speaking to DB2's vendor in order to request its service to be changed in a way it is correctly managed by systemd. ... because all within user.slice is considered non-critical ... there's little that can be done on the OS level. This truly is an application issue"

In a short way: TSA starts DB2 in systemd's user.slice, could it starts in system.slice?