Observability
Pools Tab Does Not Display HA Pools and Returns Error: “Cannot get pool type poolMember is null or empty”
This article discusses an issue where the Pools tab does not display High Availability (HA) Pools and returns the error “Cannot get pool type poolMember is null or empty” due to an orphaned HA pool entry in the database, typically following an HA pool rebuild.
First published date
Last published date
Overview
In the SolarWinds Self-Hosted Platform, the Pools tab may fail to display the list of High Availability (HA) Pools and instead present the error:
“An error has occurred. Cannot get pool type poolMember is null or empty.”
This issue prevents administrators from viewing or managing HA Pools through the web console and is typically related to database inconsistencies following recent High Availability configuration changes.
Product section
Cause
The issue is caused by an orphaned entry in the HA_Pools table where the associated pool members no longer exist in the HA_PoolMembers table.
This condition commonly occurs after a recent rebuild or reconfiguration of a High Availability pool, where the HA Pool record remains in the database but its corresponding pool member records were deleted or not recreated properly.
As a result, when the SolarWinds Platform attempts to load the Pools tab, it encounters a pool definition with no associated members, triggering the error.
Resolution
IMPORTANT: Always ensure you have a recent backup of the SolarWinds database before making any direct database changes.
1. Identify the Orphaned HA Pool
- Connect to the SolarWinds Platform server.
- Open Database Manager from the SolarWinds Platform folder of the start menu.
- Select Add Orion Server and expand the SQL server in bold.
- Right-click the SolarWindsOrion database and select New Query.
- Paste the SQL query below into the window on the right and select Execute query:
SELECT p.PoolID
FROM HA_Pools p
WHERE NOT EXISTS (
SELECT 1
FROM HA_PoolMembers pm
WHERE pm.PoolID = p.PoolID
);
-- Scripts are not supported under any SolarWinds support program or service.
-- Scripts are provided AS IS without warranty of any kind. SolarWinds further
-- disclaims all warranties including, without limitation, any implied warranties
-- of merchantability or of fitness for a particular purpose. The risk arising
-- out of the use or performance of the scripts and documentation stays with you.
-- In no event shall SolarWinds or anyone else involved in the creation,
-- production, or delivery of the scripts be liable for any damages whatsoever
-- (including, without limitation, damages for loss of business profits, business
-- interruption, loss of business information, or other pecuniary loss) arising
-- out of the use of or inability to use the scripts or documentation.
This query returns PoolIDs present in HA_Pools but missing from HA_PoolMembers.
2: Remove the Orphaned HA Pool
Paste the SQL query below into another window on the right and select Execute query:
DELETE FROM HA_Pools WHERE PoolID = x;
-- Scripts are not supported under any SolarWinds support program or service.
-- Scripts are provided AS IS without warranty of any kind. SolarWinds further
-- disclaims all warranties including, without limitation, any implied warranties
-- of merchantability or of fitness for a particular purpose. The risk arising
-- out of the use or performance of the scripts and documentation stays with you.
-- In no event shall SolarWinds or anyone else involved in the creation,
-- production, or delivery of the scripts be liable for any damages whatsoever
-- (including, without limitation, damages for loss of business profits, business
-- interruption, loss of business information, or other pecuniary loss) arising
-- out of the use of or inability to use the scripts or documentation.
Replace x with the PoolID identified in Step 1.
Navigate to Settings → All Settings → My Deployment → Pools Tab.
Confirm the Pools tab loads successfully without error.