We have identified an issue with eSignal that originates with a call to the IsValidSymbol function through the Desktop API. If this function is called after an external event causes network connectivity to be lost, eSignal stops responding. Restoring connectivity is of no use; eSignal continues to show as "not responding" in the task manager. The only solution we have found is to forcibly quit the eSignal application and the eSignal data manager.
The same symptoms can be replicated by sending certain symbols through the call. For instance, sending "[][]" to the IsValidSymbol function will also cause eSignal to stop responding, producing the same results. While the synchronous nature of this call is responsible for our application becoming non-responsive after eSignal does, it seems that eSignal should not stop responding if connectivity is interrupted, or in the second case, if unusual data is passed in.
This seems to have something to do with the API's integration against eSignal. Robi Papp stated here that the response from this function is equivalent to the "No Data" display in the GUI. Neither of the above scenarios causes "No Data" to appear -- the first produces no response, and the second creates a message box saying "Invalid Symbol".
My preference would be if this call just returned 0 if the status can't be determined.
The same symptoms can be replicated by sending certain symbols through the call. For instance, sending "[][]" to the IsValidSymbol function will also cause eSignal to stop responding, producing the same results. While the synchronous nature of this call is responsible for our application becoming non-responsive after eSignal does, it seems that eSignal should not stop responding if connectivity is interrupted, or in the second case, if unusual data is passed in.
This seems to have something to do with the API's integration against eSignal. Robi Papp stated here that the response from this function is equivalent to the "No Data" display in the GUI. Neither of the above scenarios causes "No Data" to appear -- the first produces no response, and the second creates a message box saying "Invalid Symbol".
My preference would be if this call just returned 0 if the status can't be determined.
Comment