[mythtv-commits] Ticket #617: Allow non-blocking client connections

MythTV mythtv at cvs.mythtv.org
Tue Nov 8 13:30:51 EST 2005


#617: Allow non-blocking client connections
-----------------------------+----------------------------------------------
 Reporter:  gnassas at mac.com  |       Owner:  gnassas at mac.com
     Type:  patch            |      Status:  new            
 Priority:  minor            |   Milestone:  0.19           
Component:  mythtv           |     Version:  head           
 Severity:  medium           |  
-----------------------------+----------------------------------------------
There's an issue with the (terrific & long overdue) new mythwelcome
 program in that it overrides the BE process' established power on/off
 management through the blockSDWUwithoutClient and idleTimeout settings.
 Essentially mythwelcome suppresses mythfrontend when the PC comes up for a
 recording (allowing normal BE power management to function) and launches
 mythfrontend in any other case. The idea is you've powered up either to
 record something or because the user has pressed poweron to watch a show.

 That's true when your entire myth setup consists of one FE/BE but it falls
 apart when you add one or more FE-only clients to the mix (as I recently
 did). Now when a remote client powers up the FE/BE (using WOL) mythwelcome
 sees that no recording is pending and starts up a local FE process. That
 process keeps the FE/BE from shutting down the PC even after the remote FE
 has disconnected.

 One way to address this is to never autostart mythfrontend on the FE/BE
 box. Instead, the FE/BE should rely on the user clicking the "Start
 Frontend" button. This sounds fine except that during its startup
 mythwelcome briefly identifies itself as a FE process and trips the BE
 process into starting its poweroff countdown. If, like me, you're in the
 habit of pressing the power button on your FE/BE and walking off to get a
 snack you'll return to find your PVR has come up, waited a bit and then
 shut itself off.

 I propose giving mythwelcome a way to connect to the BE without being
 counted as a blocking connection for power management purposes. In more
 direct terms I propose adding a flag to MythContext::ConnectToMasterServer
 where clients can say they're making a non-blocking connection.

 I had a lot of trouble writing this up as it's an arcane problem so it may
 merit some discussion. However I do believe this is the correct approach
 since it moves power management back into the BE. The way mythwelcome is
 currently written it takes over that job.

 Patch to follow.

-- 
Ticket URL: <http://cvs.mythtv.org/trac/ticket/617>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list