[mythtv-commits] Ticket #12340: GenMythURL given IP address instead of hostname - Watch Recordings screen loading very slowly.

MythTV noreply at mythtv.org
Fri Dec 18 14:11:14 UTC 2015


#12340: GenMythURL given IP address instead of hostname - Watch Recordings screen
loading very slowly.
-------------------------------------------------+-------------------------
 Reporter:  Marlon Buchanan <marlonbuchanan@…>   |          Owner:
     Type:  Bug Report - General                 |         Status:  new
 Priority:  minor                                |      Milestone:  unknown
Component:  MythTV - General                     |        Version:  0.27.4
 Severity:  medium                               |     Resolution:
 Keywords:  hostname, ip, mythcorecontext,       |  Ticket locked:  0
  genmythurl                                     |
-------------------------------------------------+-------------------------

Comment (by bj@…):

 I've seen this message being reported by my master backend, aswell. It
 showed slave backend IPs. All reported URLs referred to recordings taken
 on slave backends. I can trigger this easily by starting a dedicated
 frontend and open the "watch recordings" with some group that includes
 recordings done one slave backends while the slave backends are up.

 Packet capture showed, frontend issued QUERY_RECORDINGS - which is handled
 in mythbackend/mainserver.cpp:MainServer::HandleQueryRecordings.

 In my case (masterBackendOverride wasn't defined at that time), I ended up
 in this code:

 {{{
                 if (!backendIpMap.contains(hostname))
                     backendIpMap[hostname] =
                         gCoreContext->GetBackendServerIP(hostname);
                 if (!backendPortMap.contains(hostname))
                     backendPortMap[hostname] =
                         gCoreContext->GetBackendServerPort(hostname);
 p->SetPathname(gCoreContext->GenMythURL(backendIpMap[hostname],
 backendPortMap[hostname],
 p->GetBasename()));
 }}}

 This seems to be the place where the IP (!!) of the slave is passed to
 GenMythUrl.

 Having an IP provided to the frontend avoids issues with name lookups on
 the frontend - but then it's pointless to have GenMythUrl log a warning
 (maybe downgrade to debug/info?).

 As pointed out, the log traffic caused by this is really excessive.

 FYI: I was Loocking at my oldish 0.27.5-dmo1+bp1 deb-multimedia sources.

--
Ticket URL: <https://code.mythtv.org/trac/ticket/12340#comment:2>
MythTV <http://www.mythtv.org>
MythTV Media Center


More information about the mythtv-commits mailing list