Vault 6.1.0
for the first time ever, I tred to do a Find in Files using the Vault Client. I get error 1104: FailDBReader:
An error occurred in Find in Files. Server Error: [1104] - A database error has occured (FailDBReader)
I checked the log and the error information is below. Any idea how I can fix this so I can do a "find in Files"?
----3/14/2016 1:49:28 PM dsalter2--menp800x5373thl.ad.wrha.mb.ca(172.19.66.41)--SSL Disabled Rolling Back a transaction at VaultServiceSQL.VaultSqlConn.RollbackTransaction()
at VaultServiceAPILib.VaultServiceAPI.FindinFiles(FindInFilesQuery q, List`1 listObjVerIDs, Dictionary`2& hashObjVerIDFileNameAndPaths, Boolean bCleanResultsForWebService, FindInFilesData[]& arFiFData)
at VaultServiceAPILib.VaultServiceAPI.FindInFiles(Int32 nUserID, FindInFilesByFolderQuery q, Boolean bCleanResultsForWebService, FindInFilesData[]& arFifData)
at VaultService.VaultService.FindInFilesByFolder(FindInFilesByFolderQuery q, Boolean bUseExceptions, FindInFilesData[]& arFifData)
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values)
at System.Web.Services.Protocols.WebServiceHandler.Invoke()
at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()
at System.Web.Services.Protocols.SyncSessionlessHandler.ProcessRequest(HttpContext context)
at System.Web.Script.Services.ScriptHandlerFactory.HandlerWrapper.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
at System.Web.HttpApplication.ApplicationStepManager.ResumeSteps(Exception error)
at System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData)
at System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
at System.Web.Hosting.ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType)
----3/14/2016 1:49:28 PM dsalter2--menp800x5373thl.ad.wrha.mb.ca(172.19.66.41)--SSL Disabled FindInFilesByFolder returned: FailDBReader
FailDBReader in Find in Files
Moderator: SourceGear
Re: FailDBReader in Find in Files
In checking other posts, I turned off indexes and purged the data. I deleted the GUIds in the vaultservice cache folder. Restarted index and still fails. Here is the message in VaultService:
3/14/2016 2:24:50 PM <generic>: Failed to update the status message for repository 8. [System.Data.SqlClient.SqlException (0x80131904): Procedure or function 'spupdaterepositoryindexmessage' expects parameter '@adddbrowifmissing', which was not supplied.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultIndexService.VaultIndexServiceSQL.UpdateRepositoryIndexStatusMessage(Int32 nRepID, String strStatusMsg, String& strOldStatusMsg)
ClientConnectionId:15626a42-4f08-42f2-a732-63338008d834] Procedure or function 'spupdaterepositoryindexmessage' expects parameter '@adddbrowifmissing', which was not supplied.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultIndexService.VaultIndexServiceSQL.UpdateRepositoryIndexStatusMessage(Int32 nRepID, String strStatusMsg, String& strOldStatusMsg)
3/14/2016 2:24:51 PM <generic>: Ended index build for repository "8"
3/14/2016 2:24:50 PM <generic>: Failed to update the status message for repository 8. [System.Data.SqlClient.SqlException (0x80131904): Procedure or function 'spupdaterepositoryindexmessage' expects parameter '@adddbrowifmissing', which was not supplied.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultIndexService.VaultIndexServiceSQL.UpdateRepositoryIndexStatusMessage(Int32 nRepID, String strStatusMsg, String& strOldStatusMsg)
ClientConnectionId:15626a42-4f08-42f2-a732-63338008d834] Procedure or function 'spupdaterepositoryindexmessage' expects parameter '@adddbrowifmissing', which was not supplied.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at VaultIndexService.VaultIndexServiceSQL.UpdateRepositoryIndexStatusMessage(Int32 nRepID, String strStatusMsg, String& strOldStatusMsg)
3/14/2016 2:24:51 PM <generic>: Ended index build for repository "8"
Re: FailDBReader in Find in Files
It looks like there is a mismatch between the code the Vault Index Service is using and the actual database.
Can you run the following query on your Vault Server (where sgvaultindex should be installed):
SELECT * FROM sgvaultindex.dbo.schemaversion
GO
Also, what is the version of VaultIndexService.dll found on your Vault Server's installation, under ...\VaultService\VaultIndexService\bin
Can you run the following query on your Vault Server (where sgvaultindex should be installed):
SELECT * FROM sgvaultindex.dbo.schemaversion
GO
Also, what is the version of VaultIndexService.dll found on your Vault Server's installation, under ...\VaultService\VaultIndexService\bin
Jeff Clausius
SourceGear
SourceGear
Re: FailDBReader in Find in Files
The version from the SQL is returned as 6.0.0.0
The DLL version shows 6.10.531 (which would be our client version).
We did move the DB from one server to another, then upgrade to 6.1.0, so i'm not sure what went wrong.
What would you recommend I do?
Thanks.
The DLL version shows 6.10.531 (which would be our client version).
We did move the DB from one server to another, then upgrade to 6.1.0, so i'm not sure what went wrong.
What would you recommend I do?
Thanks.
Re: FailDBReader in Find in Files
The database schema should be '6.0.0.1' for Vault 6.1.
You'll need to re-apply the upgrade to those databases. The easiest thing to do is to :
a) Make a backup of the existing sg* databases.
b) If you are using Vault's Shadow Folders, make a copy of the Vault Shadow Folder web.config file. This is found in a sub-directory of the main Vault Server's installation directory.
c) Look at IIS Admin Tool, and the 'identity' of the Vault related app pools. Make note of any custom values for those IIS App Pools.
d) Uninstall the Vault Server, and connect to the SQL Server instance. But when prompted, choose the option to KEEP the databases. Do not delete them.
e) Reinstall the 6.1 Vault Server, use the same SQL Server instance from step 'D'. When prompted, use the existing databases.
f) If necessary, reconfigure any of the Vault App Pools from step 'C'
g) If you had any Shadow Folders from step 'B', reconfigure them using the information in the web.config file as a guide.
This process will apply any database upgrades found missing in your installation.
You'll need to re-apply the upgrade to those databases. The easiest thing to do is to :
a) Make a backup of the existing sg* databases.
b) If you are using Vault's Shadow Folders, make a copy of the Vault Shadow Folder web.config file. This is found in a sub-directory of the main Vault Server's installation directory.
c) Look at IIS Admin Tool, and the 'identity' of the Vault related app pools. Make note of any custom values for those IIS App Pools.
d) Uninstall the Vault Server, and connect to the SQL Server instance. But when prompted, choose the option to KEEP the databases. Do not delete them.
e) Reinstall the 6.1 Vault Server, use the same SQL Server instance from step 'D'. When prompted, use the existing databases.
f) If necessary, reconfigure any of the Vault App Pools from step 'C'
g) If you had any Shadow Folders from step 'B', reconfigure them using the information in the web.config file as a guide.
This process will apply any database upgrades found missing in your installation.
Jeff Clausius
SourceGear
SourceGear