SQL Search does not work on Visual Studio 2017 or SSMS 2017

SQL Search does not work in either Visual Studio 2017 or SSMS 2017 - it keeps saying indexing and does not appear to run to find anything in the search results and I know that there are items that do exist.

I have tried to uninstall and reinstall the software but it does not seem to work and another thing is that I am using the product as a user with limited access that is how the pc I am using the software for is setup

Perhaps that could be the issue but I am installing the software properly with a different user who has the right access.
I am using Version 3.2.0.2180


Thanks,
Tagged:

Answers

  • Hi @vinodj,

    It may be that the indexes are corrupted for some reason.  Please close SSMS and VS, delete the indexes located at %LocalAppData%\Red Gate\SQLSearch 3\Indexes and then restart SSMS and/or VS and try once more.

    If not please let me know and we can try to get the log files from you to investigate further.

    Kind regards,
    Alex
    Product Support Engineer | Redgate Software

    Have you visited our Help Center?
  • vinodjvinodj Posts: 11 New member
    Alex,

    Now after I deleted the indexes - both VS and SSMS completely crash when you try to use the SQL Search Add-in 
    The index for the server has been recreated.

    Here is the error from the logfile

    29 Oct 2018 15:44:14.212 [1] ERROR RedGate.SQLSearch.Addin - LogService caught unhandled exception in AppDomain: 'Value cannot be null.
    Parameter name: collection'
    System.ArgumentNullException: Value cannot be null.
    Parameter name: collection
       at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
       at RedGate.SQLSearch.Addin.Tab.Controls.DatabasePickerControl.PopupOpening()
       at RedGate.SQLSearch.Addin.Tab.Controls.PickerControlBase.ShowPopup()
       at RedGate.SQLSearch.Addin.Tab.Controls.PickerControlBase.CheckedComboBox_MouseClick(Object sender, MouseEventArgs e)
       at System.Windows.Forms.Control.OnMouseClick(MouseEventArgs e)
       at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
       at System.Windows.Forms.Control.WndProc(Message& m)
       at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       at System.Windows.Forms.UserControl.WndProc(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


  • Alex BAlex B Posts: 1,158 Diamond 4
    Hi @vinodj,

    Did you close SSMS and Visual Studio before deleting the indexes from that folder?

    Have you restarted since removing the indexes and are you still receiving the error?

    I've not been able to reproduce the issue you are seeing and the only way I can get an error is to remove the indexes while SSMS is still running.  When I restart the application it recreates the indexes (it recreates the entire SQL Search 3 folder in %LocalAppData%\Red Gate if I've deleted it).

    Perhaps uninstalling and reinstalling will help the situation - please get the latest installer from here:
    ftp://support.red-gate.com/patches/SQLSearch/15Oct2018/SQLSearch.exe
    and let me if the issue persists.

    Kind regards,
    Alex
    Product Support Engineer | Redgate Software

    Have you visited our Help Center?
  • nsn_szydziknsn_szydzik Posts: 1 New member
    I have the same problem:

    07 Nov 2018 10:02:07.744 [42] ERROR ServerObjectIndexer - Exception while indexing server: 
    System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired.  The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement.  This could be because the pre-login handshake failed or the server was unable to respond back in time.  The duration spent while attempting to connect to this server was - [Pre-Login] initialization=13651; handshake=9406;  ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
       at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling, SqlAuthenticationProviderManager sqlAuthProviderManager)
       at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
       at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
       at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.Open()
       at RedGate.SQLSearch.Indexing.SQLServer.SqlServerConnection..ctor(String )
       at RedGate.SQLSearch.Indexing.SQLServer.SqlServerConnectionSource.Connect()
       at RedGate.SQLSearch.Indexing.ServerObjectIndexer.Index()
    ClientConnectionId:7d8c9990-eda4-46f1-a14b-5db72ee22e22
    Error Number:-2,State:0,Class:11
    07 Nov 2018 10:02:07.761 [62] ERROR DatabaseObjectIndexer - Exception while indexing database TRM: 
    System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired.  The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement.  This could be because the pre-login handshake failed or the server was unable to respond back in time.  The duration spent while attempting to connect to this server was - [Pre-Login] initialization=13668; handshake=9406;  ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
       at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling, SqlAuthenticationProviderManager sqlAuthProviderManager)
       at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
       at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
       at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
       at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.Open()
       at RedGate.SQLSearch.Indexing.SQLServer.SqlServerConnection..ctor(String )
       at RedGate.SQLSearch.Indexing.SQLServer.SqlServerConnectionSource.Connect()
       at RedGate.SQLSearch.Indexing.DatabaseObjectIndexer.Index()
  • Alex BAlex B Posts: 1,158 Diamond 4
    Hi @nsn_szydzik,

    The error you are getting is different and is usually an environmental issue.

    Please see this page https://social.msdn.microsoft.com/Forums/sqlserver/en-US/3bbcd9a3-f90b-4ef2-8244-f06ee8d9cfa3/timeout-error-while-attempting-to-consume-the-prelogin-handshake

    Kind regards,
    Alex
    Product Support Engineer | Redgate Software

    Have you visited our Help Center?
  • vinodjvinodj Posts: 11 New member
    What about my error? Is there any solution for the one that I am getting?
  • Hi @vinodj,

    I asked you some further questions in my post before @nsn_szydzik left their message.
    Alex B Redgate › Posts: 447 Rose Gold 1 November 5, 2018 2:26PM

    Hi @vinodj,

    Did you close SSMS and Visual Studio before deleting the indexes from that folder?

    Have you restarted since removing the indexes and are you still receiving the error?

    I've not been able to reproduce the issue you are seeing and the only way I can get an error is to remove the indexes while SSMS is still running.  When I restart the application it recreates the indexes (it recreates the entire SQL Search 3 folder in %LocalAppData%\Red Gate if I've deleted it).

    Perhaps uninstalling and reinstalling will help the situation - please get the latest installer from here:
    ftp://support.red-gate.com/patches/SQLSearch/15Oct2018/SQLSearch.exe
    and let me if the issue persists.
    Please have a look at this and try and reply to the suggestions and questions!

    Kind regards,
    Alex


    Product Support Engineer | Redgate Software

    Have you visited our Help Center?
Sign In or Register to comment.