add locator failover function