Thursday, January 27th, 2011, 04:33 UTC | ||
[04:33:32] | iamlindoro is now known as BanHammerBrown | |
[04:33:44] | BanHammerBrown is now known as iamlindoro | |
[06:01:24] | jpabq- (jpabq-!~jpabq@174-28-178-122.albq.qwest.net) has quit (Ping timeout: 240 seconds) | |
[06:01:27] | jpabq (jpabq!~jpabq@mythtv/developer/jpabq) has quit (Ping timeout: 240 seconds) | |
[06:02:20] | jpabq (jpabq!~jpabq@mythtv/developer/jpabq) has joined #mythtv-theming | |
[06:03:19] | jpabq- (jpabq-!~jpabq@71-37-158-160.albq.qwest.net) has joined #mythtv-theming | |
[06:37:32] | simonckenyon (simonckenyon!~simoncken@195.7.61.12) has joined #mythtv-theming | |
[07:24:48] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has joined #mythtv-theming | |
[07:30:27] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has quit (Ping timeout: 265 seconds) | |
[07:45:55] | sphery (sphery!~mdean@mythtv/developer/sphery) has quit (Ping timeout: 265 seconds) | |
[07:51:28] | sphery (sphery!~mdean@user-0c6s50s.cable.mindspring.com) has joined #mythtv-theming | |
[07:51:28] | sphery (sphery!~mdean@mythtv/developer/sphery) has joined #mythtv-theming | |
[07:51:28] | sphery (sphery!~mdean@user-0c6s50s.cable.mindspring.com) has quit (Changing host) | |
[07:51:28] | Mode for #mythtv-theming by ChanServ!ChanServ@services. : +v sphery | |
[08:21:01] | simonckenyon|2 (simonckenyon|2!~simoncken@195.7.61.12) has joined #mythtv-theming | |
[08:22:45] | simonckenyon (simonckenyon!~simoncken@195.7.61.12) has quit (Ping timeout: 260 seconds) | |
[09:37:31] | simonckenyon|2 (simonckenyon|2!~simoncken@195.7.61.12) has quit (Remote host closed the connection) | |
[09:57:17] | simonckenyon (simonckenyon!~simoncken@195.7.61.12) has joined #mythtv-theming | |
[13:09:09] | stuartm: | iamlindoro: do you think a libmythnetmedia (or similar) would be a good idea? There seems to be a sufficient number of files related to that stuff to justify grouping them into a new lib |
[13:36:29] | simonckenyon (simonckenyon!~simoncken@195.7.61.12) has quit (Ping timeout: 276 seconds) | |
[15:34:31] | iamlindoro: | stuartm: I guess I'm on the fence on that one-- there might be enough, but I think I might have been trying to go with the least offensive way to get them into the core libs a year or so ago |
[15:35:05] | iamlindoro: | stuartm: I had envisioned a google-tv like integration with the TV OSD before Google TV was announced, and still intend to work on that in the (I hope) not too distant future |
[15:35:28] | iamlindoro: | Not that that answers your question-- my answer to that is that I guess I could go either way |
[15:39:42] | iamlindoro: | FWIW I'm not sure the httppool still has much of a reason to exist-- it's ugly as hell and many of the places it's used are better handled by mythdownloadmanager |
[15:42:01] | stuartm: | it's really just a question of organisation, keeping related parts together and segregated so that maintenance is kept simple, there are no politics involved in suggesting a new library – there are other groups of code which might benefit e.g. audio |
[15:42:54] | stuartm: | and libmythtv is oversized IMHO, might be an idea to split that up into two or three parts – playback/recording/common |
[15:43:54] | stuartm: | iamlindoro: I'm just shuffling things around atm, if mythhttppool is deprecated then it should be marked as such so we can port over the remaining uses before deleting it |
[15:55:02] | iamlindoro: | stuartm: I would not be in the least offended if you felt like breaking it out in that fashion, but I will honestly say that if it's left to me to do it it could be some time, precious little time left for Myth for the next couple months |
[15:56:53] | stuartm: | iamlindoro: I'll see whether I still feel like it after I've finished breaking up libmyth into existing libraries for my amusement |
[16:13:43] | Captain_Murdoch: | do either of you konw what mythrssmanager is used for? it appears to leak QNetworkAccessManager's in RSSSite::retrieve() |
[16:14:24] | iamlindoro: | It's part of the aforementioned network base classes-- mostly just used for MNV right now |
[16:14:25] | Captain_Murdoch: | s/'// |
[16:14:39] | iamlindoro: | Whatever the issue is would be my fault, so feel free to fix or tell me what to fix ;) |
[16:15:08] | iamlindoro: | I do so hate it when I leak QNetworkAccessManagers, my carpet is ruined |
[16:16:49] | Captain_Murdoch: | :) easier to convert to MythDownloadManager probably rather than fixing a bug in code that's going away. it looks like it creates a new QNetworkAccessManager for every time it calls that method and it calls that method every time the timer fires and we update. plus, it creates a QNetworkAccessManager for every feed it appears when it could share one. yeah, eaiser to just convert than fix probably. |
[16:17:07] | iamlindoro: | The code is going away? |
[16:17:15] | iamlindoro: | News to me |
[16:19:33] | Captain_Murdoch: | the qnetworkaccessmanager code since it coudl use MDM instead. |
[16:19:44] | iamlindoro: | I'm not sure I fathom how these could be leaking, but I do concur it could be converted to MDM |
[16:20:15] | iamlindoro: | (and BTW that's not saying there's not a leak there, just that I don't get it) |
[16:21:08] | Captain_Murdoch: | it appears the code calls ::doUpdate() every time the timer fires. that in turn calls slotRefreshRSS() which loops through each site calling ::retrieve(). retreive() creates a new QNetworkAccessManager each time it runs. |
[16:21:37] | Captain_Murdoch: | so we're creating a new QNetworkAccessManager for every site every time the timer fires |
[16:21:51] | iamlindoro: | Right, so maybe wasteful, but I'm not seeing the leak? |
[16:21:59] | Captain_Murdoch: | we never delete them |
[16:22:12] | Captain_Murdoch: | just keep allocating new ones over and over and over and over |
[16:22:20] | Captain_Murdoch: | for the same site |
[16:22:46] | Captain_Murdoch: | m_manager gets overwritten each time ::retrieve() is called. |
[16:22:47] | iamlindoro: | so presumably just calling delete m_manager; right above allocating the new one is a clean enough short term fix? |
[16:23:18] | Captain_Murdoch: | no, because the calls are asynchronous, so that old QNetworkAccessManager might still be in use downloading something. |
[16:24:01] | Captain_Murdoch: | the get() calls are processed in the background, and we loop through the sites calling get for each one. then we get events back when the gets complete. |
[16:24:32] | Captain_Murdoch: | should just "if (!m_manager) m_manager = new QNetworkAccessManager;" that's a short-term fix |
[16:24:36] | Captain_Murdoch: | share the QNetworkAccessManager |
[16:26:15] | Captain_Murdoch: | converting to MDM will also benefit from the QNetworkDiskCache, I don't think there's any cache inherent in QNetworkAccessManager, so we keep refetching RSS feeds even if they haven't changed. that'll be a bonus to moving to MDM. |
[16:26:29] | Captain_Murdoch: | also, for that "if (!m_manager)" put the connect() inside that 'if' as well. |
[16:28:29] | iamlindoro: | Works for me, thanks |
[16:33:36] | Captain_Murdoch: | yw, no problem. so does that file not use mythhttppool (anymore)? could also remove the #include if that's true. that's the only reason I was in the file looking, because mythhttppool.h is included in mythrssmanager.h |
[16:34:15] | iamlindoro: | Yeah, I think the stuf that did got broken out, and then subsequently got converted to MDM |
[16:34:27] | iamlindoro: | specifically, I think I had some early image/thumbnail handling done there |
[16:34:39] | iamlindoro: | Which is now just handled in MNV with MDM |
[16:36:11] | ** Captain_Murdoch was just doing a search to see where mythhttppool was still being used to see what the effort was to get rid of it. ** | |
[16:45:58] | stuartm: | ok, mythuifilebrowser is back at home in libmythui |
[17:25:48] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has joined #mythtv-theming | |
[20:22:00] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has quit (Ping timeout: 260 seconds) | |
[20:39:35] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has joined #mythtv-theming | |
[21:31:24] | natanojl (natanojl!~jonatan@c83-252-237-63.bredband.comhem.se) has quit (Read error: Connection timed out) |
IRC Logs collected by
BeirdoBot.
Please use the above link to report any bugs.