Network Management

SolarWinds HA: Main Poller Standby Showing as Additional Poller

This article documents a troubleshooting procedure for a SolarWinds High Availability (HA) environment where the intended Main Poller Standby (D2) is incorrectly detected as an Additional Poller, and cannot be deleted from My Deployment in the web console. The steps below outline how to clean up the database, correct the server run type, and successfully recreate the HA pool.

First published date

4/8/2026 6:55 PM

Last published date

4/8/2026 6:55 PM

Overview

Symptoms

  • No HA pool appears under My Deployment → High Availability.

  • The affected server (e.g., D2) is:

    • Listed as an Additional Poller under HA pool members.

    • Listed as an Additional Poller in the OrionServers table.

  • Delete option for the affected server is disabled in My Deployment → Servers.

  • After running the Configuration Wizard (Config Wizard) on D2, its RunType repeatedly reverts to AdditionalPoller.
      

Product section

Network Performance Monitor

Cause

Root Cause (High-Level)

The issue is caused by inconsistent state between:

  • The Windows registry (RunType value on the affected server),

  • The SolarWinds database (HA tables, OrionServers, and Engines),

  • And the HA configuration in the SolarWinds web console.

These inconsistencies prevent D2 from being properly recognized as a Main Poller Standby, and block its removal from the deployment.

Resolution

Resolution Overview

The fix requires:

  1. Disabling HA globally.

  2. Stopping SolarWinds and HA services on the involved servers.

  3. Correcting RunType in the registry on the affected standby server.

  4. Cleaning out all references to the affected server from HA-related tables, OrionServers, and Engines using Database Manager.

  5. Re-running the Config Wizard in the correct order.

  6. Recreating the HA pool and re-enabling HA globally.


Detailed Steps

1. Disable HA Globally

  1. From the SolarWinds web console, navigate to Settings → All Settings → High Availability.

  2. Disable HA globally to ensure no HA automation interferes with changes during maintenance.


2. Validate the Main Poller State

  1. Remote to the Main Poller (e.g., D3).

  2. Check the registry on the main poller to confirm it is correctly configured:

    • Path (example):
      HKEY_LOCAL_MACHINE\SOFTWARE\SolarWinds\Orion\Core

    • Ensure RunType reflects the correct role for the Main Poller (this is your known-good reference).


3. Check HA Configuration and Server Role for D2

Still from the perspective of the main poller (D3):

  1. Stop SolarWinds services, including the SolarWinds High Availability Service.

  2. In the web console / deployment view, confirm:

    • No HA pool exists yet (or none correctly configured for D3/D2).

    • Under HA pool members, D2 is incorrectly showing as an Additional Poller.

  3. Using database tools or deployment views, confirm that in:

    • OrionServers table, D2 is also listed as an Additional Poller.

These checks confirm the mismatch between the intended role and the current configuration.


4. Correct the Run Type on the Intended Standby (D2)

  1. Remote to the Main Poller Standby server (D2).

  2. Stop all SolarWinds services, including the HA service.

  3. Open Registry Editor on D2 and navigate to the Orion core key (for example):
    HKEY_LOCAL_MACHINE\SOFTWARE\SolarWinds\Orion\Core

  4. Check the RunType value:

    • It is currently set to AdditionalPoller.

  5. Change RunType to MainPollerStandby.

  6. Close Registry Editor; do not start services yet.

Note: At this point, if you run Config Wizard on D2 alone, the RunType may revert to AdditionalPoller. The remaining steps are required to prevent that regression.


5. Attempt Standard Recovery (If Applicable)

If you have not yet done so:

  1. Re-run the Config Wizard on the Main Poller first, then on D2 (standby).

  2. Observe that after running the Config Wizard on D2, the RunType may revert to AdditionalPoller.

  3. Attempt to delete D2 from My Deployment → Servers:

    • You will notice Delete under the command button is blocked, confirming that additional cleanup is needed.

If these symptoms persist, proceed with the deeper cleanup below.


6. Deep Cleanup: Services and Database Entries

6.1 Stop Services on Both Servers

  1. On D3 (Main Poller):

    • Stop all SolarWinds services.

    • Stop the SolarWinds High Availability Service.

  2. On D2 (Standby):

    • Stop all SolarWinds services.

    • Stop the SolarWinds High Availability Service.

    • Stop any dependent services that might hold connections to the SolarWinds database for this server.

6.2 Reset RunType on D2 (Again, If Needed)

  1. On D2, re-check the registry:

    • Confirm RunType is set to MainPollerStandby.

  2. If it reverted, change it again to MainPollerStandby and leave services stopped.


7. Database Cleanup for the Affected Server (D2)

Warning: Always back up your database before making direct changes. Perform these steps only if you are comfortable working at the database level and understand the impact.

  1. From D3 (Main Poller), open Database Manager or your preferred SQL tool.

  2. Identify the records related to the affected server (D2) and remove them from:

    • All HA-related tables (e.g., tables that store HA pools, members, and relationships).

    • The OrionServers table (entries for D2).

    • The Engines table (entries for D2).

The goal is to completely remove any stale or conflicting references to D2 as an Additional Poller so it can be reintroduced cleanly as a Main Poller Standby.


8. Rebuild the HA Pair

8.1 Run Config Wizard on the Standby

  1. With the database cleaned and RunType = MainPollerStandby on D2, re-run the Config Wizard on the Main Poller Standby (D2).

  2. Ensure the wizard completes successfully without errors.

8.2 Create the HA Pool

  1. In the SolarWinds web console, go to My Deployment → High Availability.

  2. Create a new HA pool:

    • Select D3 as the Main Poller.

    • Select D2 as the Main Poller Standby.

  3. Verify that the pool is successfully created and that both nodes appear with the correct roles.

8.3 Re-enable HA Globally

  1. Once the pool is healthy and roles are correct, re-enable HA globally from the HA settings page.

  2. Confirm that:

    • Failover status is Healthy/Ready.

    • No server is misidentified as an Additional Poller.

    • The Delete button behavior in My Deployment → Servers is now normal for the new pool configuration.


Verification Checklist

After performing the steps above, verify the following:

  • Registry (D2):

    • RunType = MainPollerStandby.

  • Database:

    • No stale entries for D2 as an Additional Poller exist in HA tables, OrionServers, or Engines.

  • Web Console:

    • HA pool shows D3 (Main Poller) and D2 (Main Poller Standby) correctly.

    • HA is enabled globally and pool health is green/healthy.

  • Operational:

    • Polling, alerts, and web console access behave as expected.

    • Planned failover between main and standby completes successfully.