Pages

Tuesday, November 13, 2012

Uninstalling an Lync Server 2013 enterprise pool throws the error: “Error: An error occurred: "System.InvalidOperationException" "Cannot publish topology changes. Conference directories still exist on a pool that would be deleted. Remove the conference directories before continuing.”

Problem

You have just attempted to deploy a new enterprise pool but the Publish Topology process fails to deploy the databases properly and the only option is to delete the failed deployment’s pool.  You proceed with right clicking on the pool and select Delete:

image

image

Once the pool has been deleted, you proceed with publishing the topology:

image

image

image

image

The publish topology process fails at the first step:

image

… and viewing the logs shows the following error:

Error: An error occurred: "System.InvalidOperationException" "Cannot publish topology changes. Conference directories still exist on a pool that would be deleted. Remove the conference directories before continuing."

image

Solution

The reason why you are not able to complete the publish topology process is because, as the error message states, there are still conference directories linked to the pool.  Unfortunately, you can’t actually delete the conference directories within the GUI so what you’ll need to do is remove them from within PowerShell.  Begin by launching PowerShell and execute the following command:

Get-CsConferenceDirectory

image

Make a note of the number conference directory associated to the failed pool and the identity value associated with it.  In this example, the failed pool is named lyncpool02.domain.int and the identity value is 2.  The first cmdlet that should be used is the following:

Remove-CsConferenceDirectory -Identity 2

Depending on how the pool has failed, this cmdlet may execute successfully or throw an error such as the following:

PS C:\Users\tluk-admin> Remove-CsConferenceDirectory -Identity 2

Remove-CsConferenceDirectory : No available Servers to connect to.

At line:1 char:1

+ Remove-CsConferenceDirectory -Identity 2

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : NotSpecified: (:) [Remove-CsConferenceDirectory]

, ConferenceDirectoryException

+ FullyQualifiedErrorId : No available Servers to connect to.,Microsoft.Rt

c.Management.ConferenceDirectoryCmdlets.RemoveConferenceDirectoryCmdlet

PS C:\Users\tluk-admin>

image

If you receive this error then the next step is to use the -force switch as shown in the following cmdlet:

Remove-CsConferenceDirectory -Identity 2 -force

PS C:\Users\tluk-admin> Remove-CsConferenceDirectory -Identity 2 -force

WARNING: Conference directory with ID "2" will not be checked to see if it is

safe to delete because the operation was invoked with the Force parameter.

Confirm

Are you sure you want to perform this action?

Performing operation "Remove-CsConferenceDirectory" on Target "Conference

directory 2".

[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help

(default is "Y"):yes

WARNING: No available Servers to connect to.

WARNING: Conference directory with ID "2" was deleted, but some unused stale

conference data was left behind on the back-end server. Removal of this data

will not be retried. The operation is complete.

PS C:\Users\tluk-admin>

image

Once the conference directory has been removed, proceed with publishing the topology and it should complete successfully:

image

14 comments:

Anonymous said...

Wow, this was exactly the error and situation I was running into. I completely overlooked using the "-Force" command, don't know why it didn't occur to me earlier.

Lucas Phelps said...

Bah, this problem stumped me for 1/2 an hour before I found your blog. Great solution, I also had to use the -force option.

You might also mention that you still need to manually remove the File Share directory from the server where it's hosted. Deleting the server in topology builder doesn't seem to do it.

Rick Eveleigh said...

Thanks, got this error and yours is the only post that comes up!

Moataz Dobal said...

Hello Great thanks the problem was solved

Unknown said...

Thanks a lot the problem was solved

Unknown said...

Thank you - just what I needed to do

Anonymous said...

This has caused me some headache, thanks a lot.

Unknown said...

This damn thing sucked my blood and time for almost 2 days....thanks for exact solution. It worked perfectly for me.

Thanks a ton :)

Anonymous said...

Stuck for 2 hrs until i found this post, only one on line as well!

Much appreciated!

I had to also use the -forcer

Sorin said...

Hi! It's not the first time you saved the day, for me...

Thank you, for the great job!

Ravi said...

Thank you so much for post. This is exactly I'm looking for. Thanks again.

Anonymous said...

Thank you for your post !

Anonymous said...

For me it just stays in executing position for half an hour now, so I pressed enter but nothing happens, the prompt is not given back. If I run Get-CsConferenceDirectory on another FE Server, it still lists the 2nd Identity..

Anonymous said...

Or you can use Move:
Move-CsConferenceDirectory -Identity 2 -TargetPool **newcluster** -Force