4 Replies Latest reply on Jan 31, 2019 1:19 PM by vkaufmann

    PI OLEDB Enterprise connection timeout - "The request channel timed out while waiting for a reply"




      I have a .net application which is using OLEDB Enterprise 2017 R2 to connect to a PI AF Server to retrieve Event Frames. The application was working on this machine but recently it has stopped being able to connect to the PI AF server (error message below).



      - The defined timeout (5 minutes) is much greater than is necessary so it's not that the query is too large

      - The software works (with the same configuration) on other servers

      - PI System Explorer works perfectly on the affected machine (connecting to the same remote AF server and db)

      - I've tried:

           - Re-installing PI OLEDB Enterprise and all it's dependancies

           - Rebooting the server

           - Repair installation of .net 4.7.1


      Any pointers would be great.




      Paul Cassidy



      Error Message:


      2019-01-07 11:38:43,777 [  21] ERROR PIOLEDBENT - [mscorlib] The request channel timed out while waiting for a reply after 00:04:59.9532024. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.

      2019-01-07 11:38:43,777 [  21] DEBUG    at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)

         at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)

         at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)

         at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)

         at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)

         at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)

         at System.Data.OleDb.OleDbCommand.ExecuteDbDataReader(CommandBehavior behavior)

         at System.Data.Common.DbCommand.ExecuteDbDataReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)