"Version not found" When Registering Versioned GDB to Server

548
2
Jump to solution
03-24-2014 01:57 PM
MattCharton
New Contributor III
We are having problems registering a version of our GDB with ArcGIS Server.  The version is protected and is owned by the ArcGIS Server account (Domain\arcgisserver).  The ArcGIS Server account has read/write permissions to the database in SQL and its default schema is dbo.  We have been able to register the default and other versions that are owned by the dbo without any problem.  It is only when we try to register the version owned by the ArcGIS Server account itself (or actually even any other user) that we get the "version not found" error (see below).

From looking at the error, it almost looks like some sort of schema issue... but why and how do we fix or troubleshoot it?

Also, the version works fine in ArcGIS Desktop and posts and reconciles fine.  The only problem we are having with it is registering with AGS.

Error: Machine: xxx.xxx.com [MyDataSourceTitle: The connection property set was missing a required property or the property value was unrecognized.  Version not found ["Domain\arcgisserver".Domain\arcgisserver]]


ArcGIS Server 10.2.1 Enterprise
SQL Server 2008 R2
Tags (2)
0 Kudos
1 Solution

Accepted Solutions
MattCharton
New Contributor III
Yes, I can confirm that this appears to be NIM-095653.  I was able to register a version using SQL authentication without any problems.

I also think I came up with a work-around.

I noticed that the connection string that the registration window was creating was wrong for the windows user:

SERVER=MyServer;INSTANCE=sde:sqlserver:MyServer;DBCLIENT=sqlserver;DB_CONNECTION_PROPERTIES=MyServer;DATABASE=MyDatabase;USER=MyUsername;VERSION=Domain\OwnerName;AUTHENTICATION_MODE=DBMS


This is obviously wrong since we are not trying to use DBMS authentication. 

In trying to figure out what could be confusing it, I started thinking about those oddball double quotes that show up around the windows user name when looking at the version (I assume that is to deal with the back slash after the domain??).  So I went into SQL and removed and readded the windows user to the Database and used a custom "User name" instead of just duplicating their "Login name".  I recreated the version to make sure it was using this new user definition and then succeeded in registering the database with ArcGIS Server. 

The new connection string looks like this:

SERVER=MyServer;INSTANCE=sde:sqlserver:MyServer;DBCLIENT=sqlserver;DB_CONNECTION_PROPERTIES=MyServer;DATABASE=MyDatabase;VERSION=CustomUserName.VersionName;AUTHENTICATION_MODE=OSA


As expected, it is now using OS authentication instead of DBMS.

Thanks for your help,
Matt

View solution in original post

0 Kudos
2 Replies
by Anonymous User
Not applicable
Hello Matt,

From your initial description of the DBO schema (generally a Windows user) owning the version, it sounds like you have run into NIM095653:

Bug NIM-095653
http://support.esri.com/en/bugs/nimbus/TklNMDk1NjUz

Synopsis: Unable to register a database with ArcGIS for Server when a Windows authenticated user is the owner of the version.

Error expected: "The connection property set was missing a required property or the property value was unrecognized.  Version not found"

To confirm this could you please:

1. Create a version owned by a database-authenticated user.
2. Create or modify a spatial database connection to point to the version owned by a database-authenticated user.
3. Attempt to register with ArcGIS Server.
4. Verify that succeeds in your configuration.

Does the same error occur?

-Matt
0 Kudos
MattCharton
New Contributor III
Yes, I can confirm that this appears to be NIM-095653.  I was able to register a version using SQL authentication without any problems.

I also think I came up with a work-around.

I noticed that the connection string that the registration window was creating was wrong for the windows user:

SERVER=MyServer;INSTANCE=sde:sqlserver:MyServer;DBCLIENT=sqlserver;DB_CONNECTION_PROPERTIES=MyServer;DATABASE=MyDatabase;USER=MyUsername;VERSION=Domain\OwnerName;AUTHENTICATION_MODE=DBMS


This is obviously wrong since we are not trying to use DBMS authentication. 

In trying to figure out what could be confusing it, I started thinking about those oddball double quotes that show up around the windows user name when looking at the version (I assume that is to deal with the back slash after the domain??).  So I went into SQL and removed and readded the windows user to the Database and used a custom "User name" instead of just duplicating their "Login name".  I recreated the version to make sure it was using this new user definition and then succeeded in registering the database with ArcGIS Server. 

The new connection string looks like this:

SERVER=MyServer;INSTANCE=sde:sqlserver:MyServer;DBCLIENT=sqlserver;DB_CONNECTION_PROPERTIES=MyServer;DATABASE=MyDatabase;VERSION=CustomUserName.VersionName;AUTHENTICATION_MODE=OSA


As expected, it is now using OS authentication instead of DBMS.

Thanks for your help,
Matt
0 Kudos