Project

General

Profile

Bug #24894

When LV is turned off, code also stops running.

Added by Shrividhyaa Sankar Raman about 2 months ago. Updated 22 days ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Start date:
09/04/2020
Due date:
% Done:

100%

Estimated time:
Spent time:
Duration:

Description

  • Problem disconnecting software.
  • Should be removed from list of clients in the variable tcp_clients[lv_idx].
  • This has been added to code.
  • Running the code shows the code does not stop, but goes into a deadlock state.
ACTSSR1.JPG (58 KB) ACTSSR1.JPG Shrividhyaa Sankar Raman, 09/01/2020 12:22 PM

History

#1 Updated by Shrividhyaa Sankar Raman about 2 months ago

  • % Done changed from 0 to 40

#2 Updated by Brian Chase about 2 months ago

Please update.

#3 Updated by Shrividhyaa Sankar Raman about 2 months ago

  • % Done changed from 40 to 80
  • Start date changed from 09/01/2020 to 09/04/2020
  • Remove the additional socket closing statement and ensure the change of LV active parameter is changed to false.
  • This lead to finding that Autodownload for ACNET was not enabled.
  • Upon enabling this, we figured that this feature caused 2 errors for certain parameters: 1. Autodownload not enabled on the Front-end side; 2. Autodownload not enabled on the Controls side.
  • Further, there was some mismatch issue with the ACNET channel number and parameter number due to change in the waveform numbering.
  • This problem however, was fixed by making the waveform number changes on the spreadsheet, but brought back the original issue for which this entry was made.
  • Changing the position of the release of receiver thread semaphore caused this to go away for sometime before creeping back up.
  • TODO:
    "When the labview socket is closed, is it possible that simultaneously, the daq thread is trying to send messages to it where it hasn't realized it is closed yet? Something like that" as per Mr Nicklaus's suggestion.

#4 Updated by Shrividhyaa Sankar Raman about 2 months ago

  • DAQ thread checks if LV client active whenever it tries to send a message to LV.
  • This cannot therefore cause the code to terminate.
  • Print statement "Client available!" not seen on the output screen.
  • This block is not being executed.
  • Is this why we have a segmentation fault.

#5 Updated by Shrividhyaa Sankar Raman 22 days ago

  • % Done changed from 80 to 100
  • Status changed from New to Closed
  • This issue has been solved by removing the getpeername.
  • This is just used to get the details of the socket being closed.
  • This seems to have been the cause of the issue.
  • Therefore removing this has solved the problem.


Also available in: Atom PDF