#51 Flag -T no longer works, engine exits with last emulator

closed-fixed
5
2009-11-14
2009-07-17
No

The -T flag was coded to allow the engine to remain active even when all connections (and hence emulations) had terminated. This is now broken, ie, the engine exits with the last emulator, probably as a function of the exit of the audio thread.

Discussion

  • Nick Copeland

    Nick Copeland - 2009-07-19

    Recoded this flag, naming it -server as an alias. The code was correct for the midi thread only - the audio thread now also checks for the last emulator and would exit. Both threads now implement this option and the bristol engine will run as a server allowing multiple connects and disconnects. That may have other outstanding bugs against it.

     
  • Nick Copeland

    Nick Copeland - 2009-07-19
    • summary: Flag -T no longer works, engine exits with last emullator --> Flag -T no longer works, engine exits with last emulator
     
  • Nick Copeland

    Nick Copeland - 2009-07-22

    Have cleaned up several issues that have only come to light due to the engine remaining active in server mode. There were unclosed file descriptors on GUI termination, unclean bristol devices and handles. There were incorrect linkages between the GUI and the engine SID tokens closing the wrong emulators. Have tested the code now to about 800 reconnections using scripting and it continues nicely. There was a separate issue related to the use of the dual manual emulators. There is one remaining issue where the engine will go haywire with one specific connect/disconnect sequence that is being investigated and a related requirement to review each emulator for buffer reuse, something that could cause emulation failure if it is not being handled correctly. Both of these issues should be taken care of before the code goes out.

    This specific sequence failing whilst managing to reconnect hundreds of times implies that there may be other specific start/stop processes that may still fail. They will have to be taken care of on a case by case basis.

    nick

     
  • Nick Copeland

    Nick Copeland - 2009-11-12

    The 0.50 distributed processing release addresses this issue, due out presently. The 0.40.7 release will also now work with this flag however since it is only really relevent to distributed processing, and that is only supported in 0.50, then the backport was for stability purposes only.

     
  • Nick Copeland

    Nick Copeland - 2009-11-12
    • status: open --> pending-fixed
     
  • Nick Copeland

    Nick Copeland - 2009-11-14

    Will be in the pending 0.50 stream

     
  • Nick Copeland

    Nick Copeland - 2009-11-14
    • status: pending-fixed --> closed-fixed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks