:: #mythtv

Daily chat history

Current users (79):

aloril, amessina, Anssi, anykey__, brfransen, CaCtus491, Captain_Murdoch, cattelan, Chutt, clever, coling, Cougar, damaltor, danielk22, David_Mi1ler, dblain, dinamic|screen, eharris_, ElmerFudd, foxbuntu, ghoti, GreyFoxx, highzeth, idl0r, J-e-f-f-A, jams, jarle, jcarlos, joe____, joki, jpabq, jstenback, jwh, jwhite, kc, knightr, kurre2, kwmonroe, laga, mag0o, markcerv, MaverickTech, Mousey, mrec, MythBuild, MythLogBot, mzanetti, NightMonkey, peitolm, Peps, petefunk, poptix, purserj, rsiebert, seld, Sharky112065, skd5aner, Slasher`, SmallR2002, sphery, sraue, stichnot_, stuarta, sutula, taylorr, tgm4883, ThisNewGuy, tomimo, tris, Unhelpful, vallor, Vernon_at_work, wagnerrp, wahrhaft, whoDat, xavierh, XDS2010, yb0t, _charly_
Thursday, June 14th, 2012, 00:00 UTC
[00:00:06] dmfrey (dmfrey! has joined #mythtv
[00:05:04] MaverickTech (MaverickTech! has joined #mythtv
[00:05:53] MavT (MavT! has quit (Ping timeout: 256 seconds)
[00:06:30] stichnot (stichnot!chatzilla@mythtv/developer/stichnot) has quit (Ping timeout: 244 seconds)
[00:39:18] tris (tris! has quit (Ping timeout: 246 seconds)
[00:42:04] zombor_ (zombor_!~zombor_@kohana/developer/zombor) has joined #mythtv
[00:54:20] zombor_ (zombor_!~zombor_@kohana/developer/zombor) has quit (Remote host closed the connection)
[00:56:04] majnoon (majnoon!~majnoon@ has quit (Remote host closed the connection)
[00:59:26] andreax1 (andreax1! has quit (Read error: Connection reset by peer)
[01:00:00] Sharky112065 (Sharky112065! has quit (Quit: “The only way to have a friend is to be one.” ― Ralph Waldo Emerson)
[01:02:13] XDS2010_ (XDS2010_!u1218@gateway/web/ has quit (Remote host closed the connection)
[01:02:14] superm1 (superm1!u4318@ubuntu/member/superm1) has quit (Read error: Connection reset by peer)
[01:06:25] hydester_ (hydester_!ad45a5a4@gateway/web/freenode/ip. has joined #mythtv
[01:07:00] hydester_ (hydester_!ad45a5a4@gateway/web/freenode/ip. has left #mythtv ()
[01:07:45] stichnot (stichnot!chatzilla@nat/intel/x-nuakqhmnqikpbgrg) has joined #mythtv
[01:07:45] stichnot (stichnot!chatzilla@mythtv/developer/stichnot) has joined #mythtv
[01:07:45] stichnot (stichnot!chatzilla@nat/intel/x-nuakqhmnqikpbgrg) has quit (Changing host)
[01:39:32] brandon-dacrib (brandon-dacrib! has joined #mythtv
[01:40:29] brandon-dacrib (brandon-dacrib! has quit (Client Quit)
[02:01:38] danielk22 (danielk22!~danielk@ has joined #mythtv
[02:07:02] brandon-dacrib (brandon-dacrib! has joined #mythtv
[02:07:52] brandon-dacrib: has anyone had success with 0.25 and movie metadata
[02:08:03] brandon-dacrib: in videos
[02:10:38] brandon-dacrib: when I hit retrieve all details on my front ends, nothing happens
[02:14:27] brandon-dacrib_ (brandon-dacrib_! has joined #mythtv
[02:14:28] brandon-dacrib (brandon-dacrib! has quit (Read error: Connection reset by peer)
[02:14:28] brandon-dacrib_ is now known as brandon-dacrib
[02:15:08] sphery: brandon-dacrib: /topic (you want #mythtv-users )
[02:15:19] brandon-dacrib: oh. than you. I am sorry.
[02:15:25] brandon-dacrib (brandon-dacrib! has left #mythtv ()
[02:28:12] dmfrey (dmfrey! has quit (Quit: Ex-Chat)
[02:32:59] Sharky112065 (Sharky112065! has joined #mythtv
[02:33:34] Sharky112065 (Sharky112065! has quit (Client Quit)
[02:34:51] Sharky112065 (Sharky112065! has joined #mythtv
[02:55:12] zombor_ (zombor_!~zombor_@kohana/developer/zombor) has joined #mythtv
[02:55:45] zombor_ (zombor_!~zombor_@kohana/developer/zombor) has quit (Remote host closed the connection)
[04:36:55] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has joined #mythtv
[04:46:43] peitolm (peitolm!~moreyc@unaffiliated/peitolm) has quit (Ping timeout: 245 seconds)
[04:47:21] peitolm (peitolm! has joined #mythtv
[05:05:27] colonelqubit (colonelqubit!~qubit@ has left #mythtv ()
[05:14:52] stichnot (stichnot!chatzilla@nat/intel/x-lhkpajgggvflphqe) has joined #mythtv
[05:14:52] stichnot (stichnot!chatzilla@mythtv/developer/stichnot) has joined #mythtv
[05:14:52] stichnot (stichnot!chatzilla@nat/intel/x-lhkpajgggvflphqe) has quit (Changing host)
[05:46:31] vallor is now known as val-laptop
[05:46:39] val-laptop is now known as val-hq
[05:46:42] val-hq is now known as vallor
[05:48:07] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has quit (Quit: Konversation terminated!)
[05:49:20] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has joined #mythtv
[05:49:38] vallor is now known as creon
[05:54:09] cattelan_away is now known as cattelan_away_aw
[06:05:46] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has quit (Quit: Konversation terminated!)
[06:12:16] pheld (pheld! has joined #mythtv
[06:12:55] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has joined #mythtv
[06:47:05] xris: yay. finally compiles again in fedora17. last piece seems to be that mythffplay is gone
[07:06:07] xris: wagnerrp: finally tracked some of my metadata issues to mythtv treating "-" (dash) as a static character not to be replaced when parsing a filename into a "title" for later lookup with
[07:07:49] xris: for some reason searches like "thomas and friends-milkshake muddle" work fine on the web but return zero results via the API (either version). Do you think it'd be better to add the replace('-', ' ') code in or videometadata.cpp?
[07:10:08] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has quit (Quit: Konversation terminated!)
[07:10:46] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has joined #mythtv
[07:13:42] xris: I think it makes more sense to me to put that sanitization in the tmdb script — presumably makes it work a bit more like the search box on the website. replace all non-word characters with whitespace
[07:19:06] natanojl (natanojl! has joined #mythtv
[07:22:32] rsiebert (rsiebert! has joined #mythtv
[07:24:08] rsiebert_ (rsiebert_! has quit (Read error: Operation timed out)
[07:26:40] Chutt (Chutt! has quit (Read error: Connection reset by peer)
[07:36:53] natanojl (natanojl! has quit (Ping timeout: 248 seconds)
[07:40:34] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has quit (Quit: Konversation terminated!)
[07:45:33] danielk22 (danielk22!~danielk@ has quit (Ping timeout: 252 seconds)
[07:53:51] MythBuild: build #2623 of master-linux-ppc is complete: Failure [4failed compile core] Build details are at . . . /builds/2623 blamelist: Gavin Hurlbut < >
[09:22:51] dekarl (dekarl! has quit (Ping timeout: 265 seconds)
[10:42:02] pheld (pheld! has quit (Ping timeout: 272 seconds)
[10:59:48] map7_ (map7_! has joined #mythtv
[11:04:00] Goga777 (Goga777! has joined #mythtv
[11:13:25] Goga777 (Goga777! has quit (Ping timeout: 246 seconds)
[11:39:41] peitolm: stuarta: how far did you get with the mythtv build on r_pi? wondering if a record-only backend would work
[12:18:48] superm1 (superm1!u4318@ubuntu/member/superm1) has joined #mythtv
[12:22:24] danielk22 (danielk22!~danielk@ has joined #mythtv
[12:33:41] dmfrey (dmfrey! has joined #mythtv
[13:03:41] stuartm: peitolm: haven't had time to do anything
[13:12:09] Goga777 (Goga777! has joined #mythtv
[13:20:39] Goga777 (Goga777! has quit (Ping timeout: 265 seconds)
[13:28:21] map7_ (map7_! has quit (Ping timeout: 248 seconds)
[13:36:51] zombor (zombor!~zombor_@ has joined #mythtv
[13:36:51] zombor (zombor!~zombor_@ has quit (Changing host)
[13:36:51] zombor (zombor!~zombor_@kohana/developer/zombor) has joined #mythtv
[13:57:58] Chutt (Chutt! has joined #mythtv
[14:19:42] danielk22: Beirdo: Ctrl-C doesn't seem to be working to kill a mythccextractor instance. Were there any changes in signal handling in the merge?
[14:20:14] danielk22: kill seems to also not work..
[14:20:32] danielk22: kill -9 does.. so it looks like blocked shutdown signals.
[14:23:35] danielk22: I found the problem it seems that the new SignalHandler assumes there is a Qt event loop..
[14:30:19] danielk22: There are also several generated files in external/zeromq that need to be added to the .gitignore list.
[14:30:47] danielk22: Otherwise they could get accidentally committed on someone's git commit -a
[14:41:43] dmfrey (dmfrey! has quit (Quit: Ex-Chat)
[14:46:37] danielk22: Beirdo: It looks like you already committed those generated files yourself..
[14:47:19] dmfrey (dmfrey! has joined #mythtv
[15:13:55] creon (creon!~Ponzo@pdpc/supporter/monthlygold/vallor) has quit (Read error: Operation timed out)
[15:15:42] vallor (vallor!~Ponzo@pdpc/supporter/monthlygold/vallor) has joined #mythtv
[16:09:32] NightMonkey (NightMonkey!~NightrMon@pdpc/supporter/professional/nightmonkey) has joined #mythtv
[16:15:18] SteveGoodey (SteveGoodey! has joined #mythtv
[16:20:49] MythBuild: build #3888 of master-linux-64bit is complete: Failure [4failed compile plugins] Build details are at . . . /builds/3888 blamelist: Daniel Kristjansson < >
[16:21:46] danielk22: bah
[16:22:20] Mousey (Mousey! has joined #mythtv
[16:24:53] joki (joki! has quit (Ping timeout: 245 seconds)
[16:25:48] joki (joki! has joined #mythtv
[16:26:29] MythBuild: build #2713 of master-freebsd-64bit is complete: Failure [4failed compile plugins] Build details are at . . . /builds/2713 blamelist: Daniel Kristjansson < >
[16:27:58] MythBuild: build #2396 of master-debian-stable-64bit is complete: Failure [4failed compile plugins] Build details are at . . . /builds/2396 blamelist: Daniel Kristjansson < >
[16:29:32] Mousey: phew! not ppc for a change!
[16:30:07] MythBuild: build #3661 of master-linux-32bit is complete: Failure [4failed compile plugins] Build details are at . . . /builds/3661 blamelist: Daniel Kristjansson < >
[16:35:55] MythBuild: build #3889 of master-linux-64bit is complete: Success [3build successful] Build details are at . . . /builds/3889
[16:40:41] MythBuild: build #2397 of master-debian-stable-64bit is complete: Success [3build successful] Build details are at . . . /builds/2397
[16:41:40] MythBuild: build #2714 of master-freebsd-64bit is complete: Success [3build successful] Build details are at . . . /builds/2714
[16:45:30] MythBuild: build #3662 of master-linux-32bit is complete: Success [3build successful] Build details are at . . . /builds/3662
[16:49:37] XDS2010 (XDS2010!u1218@gateway/web/ has joined #mythtv
[17:03:25] danielk22: Captain_Murdoch: FYI QHttp is gone in Qt5...
[17:04:28] XDS2010 (XDS2010!u1218@gateway/web/ has quit (Remote host closed the connection)
[17:04:38] natanojl (natanojl! has joined #mythtv
[17:06:06] cattelan_away_aw is now known as cattelan_away
[17:11:04] danielk22: QNetworkAccessManager is the suggested alternative.
[17:23:19] dmfrey (dmfrey! has quit (Remote host closed the connection)
[17:24:02] dmfrey (dmfrey! has joined #mythtv
[17:37:48] Beirdo: Mousey: apt-get install uuid-dev :)
[17:38:08] Beirdo: danielk22: which generated files in particular, and yes, we need an event loop
[17:38:15] Mousey: yah?
[17:38:15] Mousey: k
[17:38:32] Beirdo: if it's not uuid-dev, it's libuuid-dev :)
[17:39:00] Beirdo: nice to see ya on... I got one more week of Marchex fun, then I go join Bill
[17:39:21] Mousey: oh?
[17:39:27] Mousey: they're still in business?!
[17:39:33] ** Mousey ducks! **
[17:39:35] Beirdo: who? Marchex? :)
[17:39:38] Beirdo: sadly :)
[17:39:39] Mousey: no, rimm!
[17:39:48] Beirdo: they are a $5.8B company
[17:39:53] Beirdo: they won't disappear overnight
[17:40:00] Mousey: k
[17:40:12] ** Mousey waits for the apt-get update to finish **
[17:40:22] Beirdo: not to say they may not disappear, but it won't be instantaneous
[17:40:35] Beirdo: will be doing software dev
[17:40:37] Beirdo: :)
[17:40:39] Mousey: they'd have to be a bank for that
[17:40:40] Mousey: ^_^
[17:41:13] danielk22: Beirdo: Some and similiar files. They are no longer generating differently here so they don't pop out. But I noticed that at least some of them were already in the .gitignore.. they must have been added before you made that file.
[17:41:22] Beirdo: ahhh
[17:41:36] Beirdo: I think that was intentional so people don't need to install autoconf
[17:41:51] Beirdo: I know I did that in one of the externals, but I forget which
[17:42:00] Beirdo: if you have autoconf, it will update them though
[17:42:18] Beirdo: we can make autoconf a prereq, that's the other way :)
[17:42:23] Beirdo: I'd be good with that
[17:42:53] danielk22: Beirdo: Can you disable the autoconf short of some special define/param.. Otherwise you force everyone to uninstall autoconf if they want to work with mythtv sources..
[17:43:19] Beirdo: you don't need to uninstall it...
[17:43:37] Beirdo: not sure, I'll see if there's a way to block the rebuilds in general
[17:44:06] Beirdo: that can do with some cleanup, I guess :)
[17:44:10] danielk22: Sure you do, if all these files get modified then when you do a git diff you'll see all those changes in addition to your own and when you commit you'll commit a bunch of autogenerated files..
[17:44:36] Beirdo: it shouldn't recommit if they are in .gitignore though
[17:44:42] Mousey: Beirdo: uuid-dev is now installed
[17:44:47] Beirdo: I see your point :)
[17:44:51] Beirdo: Mousey: thanks :)
[17:44:57] Mousey: np
[17:45:06] Beirdo: MythBuild: force build master-linux-ppc now
[17:45:06] MythBuild: build forced [ETA 38m13s]
[17:45:06] MythBuild: I'll give a shout when the build finishes
[17:45:08] Beirdo: :)
[17:45:33] danielk22: Beirdo: dunno if it will commit but it will break git usage.. I had to do a git reset --hard before pushing my changes because it thought I had uncommitted changes in my tree.
[17:46:00] Beirdo: crap. OK, I'll make sure it gets fixed. Sorry about that
[17:48:53] Beirdo: weird, I just tried a ./configure from a clean checkout in that dir, and it didn't generate anything that would need recommitting
[17:48:56] Beirdo: hmmm
[17:48:57] danielk22: Beirdo: We need the signals to work when there is no event loop. It should be as simple as setting some mutex protected volatile variable when we enter/exit the event loop and using the qapp->exit() only if we're in the event loop.. We need that anyway to to prevent segfaults before and after the qapp pointer exits..
[17:49:05] Beirdo: nope
[17:49:13] danielk22: No need to hurry the fix, it's easy enough to kill -9 for now..
[17:49:22] Beirdo: sorry, Qt explicitly says that's a no-no
[17:49:33] Beirdo: we can do NO Qt functions in a signal handler
[17:49:53] Beirdo: it's amazing it's worked so long when they say do NOT do this
[17:50:09] Beirdo: i.e. can't use mutexes in the handler either
[17:50:37] danielk22: Beirdo: We still need to exit the program when we get a TERM or SEGFAULT.
[17:50:58] Beirdo: it will. put in an event loop :)
[17:51:15] Beirdo:
[17:52:34] danielk22: Beirdo: You are welcome to port everything over to using event loops.
[17:53:08] Beirdo: ummm, it's not too hard to use the application's built-in one and tell it it process events in your thread's loop periodically
[17:53:19] Beirdo: in fact, we do that in several places
[17:53:56] Beirdo: just need a qApp->processEvents() in your loop
[17:53:58] Beirdo: done.
[17:54:36] danielk22: Beirdo: Your code will segfault when a signal is sent before the qApp pointer is set.
[17:54:38] Beirdo: or am I missing something here :)
[17:54:57] danielk22: It doesn't matter if you port everything to use event loops..
[17:55:09] Beirdo: I thought I didn't initialize the signal handlers until after qApp was initialized
[17:55:34] danielk22: Ah, maybe. do you clean them up after qApp is deleted?
[17:55:55] danielk22: Calling qApp->processEvents() won't let programs exit..
[17:56:04] Beirdo: they are defined with a class instance in the main() function
[17:56:09] danielk22: qApp->exit() only makes the event loop exit.
[17:56:39] Beirdo: that's not a problem for SEGV
[17:57:00] Beirdo: as the handler delays, then reraised SEGV with the handler removed
[17:57:43] Beirdo: for TERM, it worked in every situation I tried
[17:57:53] Beirdo: I didn't try the ccextractor though :)
[17:58:55] Beirdo: I'll give that a shot today (unless you've fixed it first, of course)
[17:59:09] danielk22: Ah, they are defined after QCoreApplication in mythccextractor/main.cpp so they will be unrolled before QCoreApplication is. I see the same thing for mythbackend.. so I got that wrong.
[17:59:34] Beirdo: yeah, it took some fiddling to get the order right
[18:00:31] danielk22: Beirdo: We can set a "please_exit" variable in addition to calling qapp->exit(). I've done that before to solve a similar problem. Then any long running loop just needs to check that periodically.
[18:00:38] Beirdo: one thing I did notice is that during input (Shall I upgrade your database? [yes]), Ctrl-C does squat until you hit enter
[18:00:50] Beirdo: sure, that works too
[18:01:21] danielk22: Beirdo: Yeah.. that's because the event loop is blocked on a read..
[18:01:37] Beirdo: heh, yeah.
[18:01:53] Beirdo: good point (continuing to drink my coffee here)
[18:02:06] Beirdo: and OMG... the UTC upgrades took 21min last night!
[18:02:23] Beirdo: you might wanna add some progress logging in the upgrade code :)
[18:02:38] danielk22: Really?? It took seconds here. do you have barriers enabled?
[18:02:49] Beirdo: yes
[18:02:57] Beirdo: using innodb too
[18:03:14] danielk22: Innodb shouldn't be a problem. Barriers though..
[18:03:26] tris (tris! has joined #mythtv
[18:03:31] Beirdo: my database is not generally slow at all though
[18:03:41] Beirdo: innodb doesn't do many fsyncs, IIRC
[18:03:51] danielk22: It might be possible to copy the tables over to temp tables, presumably on tmpfs, update there and then transfer back.
[18:03:55] Beirdo: I think the issue was the very large temp table pushing the box into swap
[18:04:14] Beirdo: the joys of having too much stuff in my db :)
[18:04:40] danielk22: progress isn't really possible since the conversion of program (what takes time) all happens in one select statement.
[18:04:47] Beirdo: I updated the perl bindings to deal with the UTC time now, not sure about PHP or Python ones
[18:04:56] Beirdo: hmm, true
[18:04:56] danielk22: I could add a warning though. This can take up to 22 minutes.. :P
[18:05:11] Beirdo: but could log when hitting each table, maybe? I dunno
[18:05:37] Beirdo: yeah "This may take some time, especially if you have low memory and/or barriers enabled"
[18:05:37] danielk22: hmm, I had already update the perl and php that mythweb uses.
[18:06:06] Beirdo: the myth_to_unix_time and unix_to_myth_time in the perl bindings were missing the offset
[18:06:25] Beirdo: which I found out when my zero-byte detection script couldn't find any recordings :)
[18:06:25] danielk22: All the tables are pretty tiny except for programs. You might have 1000 entries in recorded and 150000 in program.
[18:06:30] Beirdo: easy enough to fix
[18:06:51] Beirdo: credits is large
[18:07:05] Beirdo: 1.4M rows
[18:07:34] danielk22: hmm, I wonder if we're not cleaning that up..
[18:07:43] Beirdo: people is around 124k, program 353k, programgenres 654k, programrating 241k
[18:07:51] Beirdo: recordedseek... 3.8M
[18:08:06] Beirdo: no, it gets cleared each mythfilldb
[18:08:14] Beirdo: I just have a LOT of channels :)
[18:08:25] danielk22: Ah, yesh recordedseek is big too :)
[18:08:46] Beirdo: total database size... 1.8G
[18:08:53] danielk22: I don't have as many credits. strange.
[18:08:54] Beirdo: jeez, this is getting large :)
[18:09:23] Beirdo: well, I have HBO and associated movie channels on DirecTV (twice). That can't help matters
[18:09:52] danielk22: Beirdo: recordedseek probably doesn't belong in the DB, but in an idx file. But programs and credits are pretty legitimately in the DB.
[18:10:07] Beirdo: yeah
[18:10:22] Beirdo: although we could dump them before the upgrade, then force a filldb run
[18:10:30] Beirdo: at least for the common case
[18:10:36] Beirdo: maybe not for EIT users ;)
[18:10:51] danielk22: Beirdo: I thought of that, but the really quick db update here made me think it wasn't necessary.
[18:11:08] Beirdo: my program table is 713MB, so the temp table was... huge in memory, causing swappage
[18:11:18] Beirdo: I think that was likely the main part of the issue
[18:11:44] Beirdo: anyways, hopefully not too many user whines from that upgrade :)
[18:12:12] danielk22: Beirdo: Yeah, could be. Anybody with 500 ch will probably spill out of /tmp for..
[18:12:16] Beirdo: it worked, just worried that people will think it's dead and Ctrl-C it mid-upgrade and maybe bugger something
[18:12:37] danielk22: Beirdo: They should have a backup then. :P
[18:12:39] Beirdo: I'm at 614 channels :)
[18:12:45] Beirdo: that is true :)
[18:12:48] Beirdo: there is a backup
[18:13:19] Beirdo: and there really is no accounting for all user behavior anyways
[18:15:43] antgel (antgel! has quit (Ping timeout: 245 seconds)
[18:15:49] danielk22: We're fairly close to being able to compile with Qt5. Looks like that will be a much easier conversion that Qt3->Qt4 was.
[18:16:06] Beirdo: I sure hope so, that one was a pain
[18:16:48] Beirdo: oh, I was going to put in that patch... from #10616
[18:16:48] ** MythLogBot **
[18:17:00] Beirdo: I should do that now before forgetting again
[18:18:55] andreax (andreax! has joined #mythtv
[18:27:45] Beirdo: OK, applied. test compiling
[18:31:20] Beirdo: good thing I did :)
[18:45:03] jyavenard (jyavenard!~jya@2620:0:1b07:111:1885:331f:68bc:2965) has joined #mythtv
[18:45:16] jyavenard is now known as jya
[18:45:31] jya (jya!~jya@2620:0:1b07:111:1885:331f:68bc:2965) has left #mythtv ()
[18:46:22] jya (jya!~jyavenard@mythtv/developer/jya) has joined #mythtv
[18:46:38] sphery: danielk22: So, a (long) time ago, I noticed that the DBCleanup housekeeping job wasn't running on my system, and since have noticed the same on many other users' systems. Finally looked at why, today, and noticed . . . per.cpp#n334 is lacking a updateLastrun("DBCleanup");
[18:47:07] sphery: danielk22: which means it's only ever run once for every user... rather than fixing it, though, I'm thinking we should remove it--all it does is gCoreContext->GetDBManager()->PurgeIdleConnections();
[18:47:25] sphery: which we probably don't want to do with the new per-thread DB connection pools, right?
[18:52:08] danielk22: heh, well I guess it just doesn't do anything (yet?) but there is no harm in purging idle connections, they will get re-created when necessary.
[18:53:36] sphery: so should I re-enable the job or just remove that one?
[18:54:31] danielk22: Are we planning to add DBCleanup at some point? If so we might as well keep the stub so we know where to add the code. If not..
[18:54:33] sphery: It sounds like it was a fix for some "max connections" issue with some older versions of MySQL and/or MythTV + Qt
[18:54:57] sphery: and since we've been doing fine without it since Jun 2010...
[18:55:06] sphery: s/fix/workaround/
[18:55:06] danielk22: ya..
[18:55:33] sphery: ok, sounds good. thanks for the input, and I'll get it cleaned up later
[18:55:54] danielk22: does it make sense to cleanup credits though? i.e. will we end up having a bunch of credits for programs long ago gone from the db?
[18:56:09] sphery: we do cleanup of credits daily in the DailyCleanup job
[18:56:25] sphery: . . . per.cpp#n301 , under CleanupProgramListings()
[18:56:25] danielk22: ah, then lets just nuke it :)
[18:56:41] sphery: yeah, we did nuke it in one of the ancient DB upgrades
[18:56:45] sphery: it will be repopulated
[18:57:10] danielk22: I meant nuke the do nothing DBCleanup code.
[18:57:14] sphery: and, as a matter of fact, nuking it would allow us to convert it to a proper case-insensitive UTF, like it should be
[18:57:18] sphery: ohhh, I see
[18:57:33] sphery: I thought you meant the credits table because of the time Beirdo mentioned...
[18:58:32] danielk22: sphery: I think the only reason the tables took so long to update were a combo of lots of channels + barriers being enabled.
[18:58:36] sphery: his is definitely huge--actually, that's what made me find the problem with DBCleanup (asked for his housekeeping table--which said his DailyCleanup is running--and his DBCleanup wasn't running, either, so I looked at why)
[18:58:53] sphery: yeah, his is probably an extreme case
[18:59:20] Beirdo: and lack of spare memory causing the temp table to actually hit disk :)
[18:59:40] sphery: I think I may put a message in the case of DB upgrade failure telling users they need to restore the pre-upgrade backup and not re-run an upgrade on a partially-upgraded db
[19:00:22] sphery: seems a lot of users don't do that, and with the utc update, they could end up with broken foreign refs and shows offset by double or triple or ...
[19:00:42] sphery: (if they kill the process during the upgrade)
[19:12:17] jya: danielk22: at WWDC, they've announced on how they are dropping gcc/llvm-gcc completely in the next release… So I'm working on getting myth to compile with clang instead...
[19:13:28] jya: it gives a fair amount of troubling warning, like virtual function overridden that are actually not use as they are being obfuscated by another… it's like some of the special code we wrote are actually never use.
[19:13:39] jya: i've seen this in a few classes
[19:15:52] jya: some fair amount of useful warning too… pretty cool stuff… much more detailed than many static analyser I've seen
[19:20:43] jya: danielk22: stichnot like this one:
[19:20:43] jya:
[19:20:55] jya: oops:
[19:21:46] MythBuild: build #2627 of master-linux-ppc is complete: Success [3build successful] Build details are at . . . /builds/2627
[19:23:55] dmfrey (dmfrey! has quit (Remote host closed the connection)
[19:24:41] dmfrey (dmfrey! has joined #mythtv
[19:30:33] Beirdo: yay
[19:32:18] Beirdo: Mousey: thanks, that did the trick nicely
[19:32:53] jya (jya!~jyavenard@mythtv/developer/jya) has quit (Quit: jya)
[19:33:59] danielk22: jya: I've seen similar warning from icc. I have some outstanding patches for some of them.
[19:34:48] danielk22: jya: I was actually surprised we didn't get those warnings from gcc since it does have a overridden-virtual warning and we use -Wall
[19:37:11] danielk22: MythTV also does compile with the -std=c++11 so we should be able to tell the compiler to give us an error on those by using the override keyword (via define so it is only enabled for c++11 capable compilers.
[19:43:21] Mousey: ^_^
[20:10:52] cattelan_away is now known as cattelan
[20:11:04] ocrateb (ocrateb! has joined #mythtv
[20:11:04] ocrateb (ocrateb!~ocrateb@unaffiliated/ocrateb) has joined #mythtv
[20:11:04] ocrateb (ocrateb! has quit (Changing host)
[20:12:26] danielk22: Beirdo: FYI QPointer has been changed in Qt5. It's now a synonym to QWeakPointer. It's listed in the conversion docs that it might lead to some subtle bugs.
[20:15:04] Beirdo: hmmm
[20:15:08] Beirdo: good to know ;)
[20:15:33] Beirdo: it's handy occasionally, but yeah, we don't use it much anyways
[20:15:52] danielk22: Just reading up on this now:
[20:16:49] Beirdo: ouch. more hoops to jump through.
[20:16:58] Beirdo: I'd bet the implementation is cleaner though
[20:17:32] danielk22: As long as what it points to is a QObject I don't think it makes much of a difference. It gets cleared a bit later in the destructor of the thing it points to.
[20:17:59] Beirdo: yeah, it's the access of the underlying pointer that changes, basically
[20:18:00] danielk22: But it's also safer if you convert it to a QSharedPointer before use.
[20:18:22] danielk22: Yeah, supposed to be more efficient by using the knowledge that it's pointing to a QObject.
[20:18:27] Beirdo: cool
[20:18:45] Beirdo: Oh, and I'll need to look at your new refcounters in logging, I think
[20:18:59] Beirdo: feel free if you feel inspired, but I'll take a look soon
[20:20:29] danielk22: Its a simple starts at 1 and 0 == delete reference counter. I would have used QAtomicInt::ref()/deref() but those wouldn't work for the MythSocket and MythUI code.
[20:20:48] Beirdo: ahh
[20:21:01] Beirdo: I think I have it with QAtomicInt as it stands now
[20:21:03] danielk22: It's also lock free on x86[-64]
[20:21:18] Beirdo: maybe not necessary to change?
[20:21:21] Beirdo: oh, that's cool
[20:22:13] danielk22: Well it's best to use one reference counting implantation, but it should be easy to convert if you used QAtomicInt.ref()/deref()
[20:22:18] Beirdo: and likewise in gpu-commflag. That one's gonna be a fun merge... we've changed a lot :)
[20:22:40] Beirdo: need to merge master back to that branch, and continue working on it
[20:22:56] Beirdo: yeah, one implementation to rule them all is a good plan
[20:23:04] Beirdo: less confusion as to which one to use later
[20:23:39] Beirdo: that and DRY...
[20:24:00] danielk22: The problem with the old reference counting code is some reference counters deleted on -1, some on 0. And some started with the reference count on delete. It made it so the API for reference counting differed between objects.
[20:24:33] Beirdo: ick
[20:24:36] Beirdo: confusing
[20:25:54] danielk22: Yeah, most of implementations were correct, but I found some bugs where it was obvious the developer expected one behavior and got a slightly different one.
[20:27:55] danielk22: Beirdo: I can see why QPointer was removed. It really provides no benefit over QSharedPointer. It still requires a QObject but behaves like a simple auto_ptr<>.
[20:28:26] SteveGoodey (SteveGoodey! has quit (Remote host closed the connection)
[20:28:32] danielk22: s/QSharedPointer/QWeakPointer/
[20:28:32] Beirdo: makes sense
[20:28:47] Beirdo: we'll go on a QPointer hunt soon, I take it? :)
[20:28:48] danielk22: QSharedPointer is different, it
[20:28:54] danielk22: s reference counted.
[20:29:07] Beirdo: I think we'd be best off using the new stuff
[20:29:55] danielk22: Beirdo: Qt5 will compile with QPointer. It just does a typedef QWeakPointer QPointer; :)
[20:30:22] hashbang1 (hashbang1! has joined #mythtv
[20:30:34] hashbang1 (hashbang1! has quit (Client Quit)
[20:30:41] danielk22: I don't think we'll move to Qt5 very soon. Just wanted to see what the gotcha's would be.
[20:30:49] SteveGoodey (SteveGoodey! has joined #mythtv
[20:30:51] danielk22: 5.0.0 is still at alpha.
[20:32:17] Beirdo: well, if the support is already in 4.7, etc... we could start converting now, and it should be OK, no?
[20:32:51] danielk22: Yeah, no harm in converting.
[20:32:52] Beirdo: well, it's in 4.8 anyways, not sure about 4.7
[20:33:23] Beirdo: best to be ahead of the curve if we have the spare cycles
[20:33:29] Beirdo: brb
[20:33:30] danielk22: Introduced in 4.5 so np.
[20:36:08] Beirdo: yeah, then we're good with our prereq of 4.6 :)
[20:36:13] andreax (andreax! has quit (Read error: Connection reset by peer)
[20:37:40] danielk22: The only gotcha I can see is that the QWeakPointer<XX> has to come after the XX is defined for proper behavior. class XX; QWeakPointer<XX> x; class XX : public QObject {}; will result in a pointer that isn't cleared when the object is deleted.
[20:38:36] Beirdo: heh. I'm sure that will bite our asses at some point
[20:39:46] danielk22: I think I'm wrong about that.. It's just the QWeakPointer x(xx); where it needs to know the object is a QObject.. and it will fail on compile if you pass it a pointer where it doesn't know that XX is QObject derived..
[20:40:42] danielk22: heh, I think I'd enjoy writing libraries. So many subtleties.
[20:41:08] Beirdo: just so many ways to shoot yourself in the foot :)
[20:45:34] amessina (amessina!~amessina@2001:470:1f11:a4:d6be:d9ff:fe8d:7c1e) has joined #mythtv
[20:46:45] Beirdo: OK, cppcheck, I think you just might be on crack
[20:47:29] Beirdo: it's saying there's a memory leak with every char * in LoggingItem
[20:47:51] Beirdo: in spite of the fact I have them strdup() to create and free() in the dtor
[20:48:31] Beirdo: I think I'll ignore that for now :)
[20:49:25] stichnot (stichnot!chatzilla@nat/intel/x-erzwhpnwpawpetsd) has joined #mythtv
[20:49:25] stichnot (stichnot!chatzilla@mythtv/developer/stichnot) has joined #mythtv
[20:49:25] stichnot (stichnot!chatzilla@nat/intel/x-erzwhpnwpawpetsd) has quit (Changing host)
[20:54:22] stuartm: danielk22: I'm still experiencing the occasional backend deadlock after the eit lock changes, never seems to happen at a convenient moment so I've yet to grab a backtrace but the logs show it occurring pretty much exactly as we complete an EIT related reschedule –
[20:54:27] MythBuild (MythBuild! has quit (Remote host closed the connection)
[20:54:40] MythBuild (MythBuild! has joined #mythtv
[20:54:49] Beirdo: bye bye, zeromq builds
[20:55:45] MythBuild: build #1192 of master-vista-mingw-32bit is complete: Exception [6exception git] Build details are at . . . /builds/1192 blamelist: Gavin Hurlbut < >
[20:55:56] Beirdo: oh please
[20:56:35] stuartm: tbh I'm not sure if this is recording/EIT related like the earlier issue, that new socket we try open at the exact same moment as the EIT reschedule occurs was me browsing to the guide in the frontend, so some sort of race between a GetAllScheduled() call and a scheduler lock?
[20:56:54] stuartm: gigem: ^^ any ideas?
[20:57:32] SteveGoodey (SteveGoodey! has quit (Quit: Konversation terminated!)
[20:58:01] Beirdo: MythBuild: force build master-vista-mingw-32bit now
[20:58:02] MythBuild: build #1193 forced
[20:58:02] MythBuild: I'll give a shout when the build finishes
[20:58:48] Beirdo: and off to a brain dump meeting I go.
[20:58:58] stichnot_ (stichnot_!chatzilla@mythtv/developer/stichnot) has joined #mythtv
[20:59:55] SteveGoodey (SteveGoodey! has joined #mythtv
[21:00:23] stichnot_ is now known as stichnot
[21:00:57] SteveGoodey (SteveGoodey! has quit (Client Quit)
[21:06:49] danielk22: Beirdo:
[21:08:28] danielk22: It was just a different machine where I was having the issue with the autoconf files. I've applied the "apt-get remove autoconf" workaround locally.
[21:08:54] dmfrey (dmfrey! has quit (Quit: Ex-Chat)
[21:10:01] danielk22: Looks like is back!
[21:12:40] jya (jya!~jyavenard@mythtv/developer/jya) has joined #mythtv
[21:13:33] danielk22: jya: Did you see my response earlier? I've been seeing the same type warning output from icc.
[21:13:56] jya: danielk22: sorry no, I just got back online… I have almost no battery now either
[21:14:03] jya: will check the IRC log
[21:15:48] danielk22: jya: Will they be adding an external battery option to their laptop line ?
[21:15:51] jya: danielk22: ok… just read it
[21:16:07] jya: danielk22: doubt it… even their new macbook pro, no the battery is glued
[21:16:27] jya: very very sweet laptop, glad they are going back to nvidia GPU
[21:17:03] jya: it's been great… I had a chat to the few engineer directly involved in the bugs I've been having issues on myth..
[21:17:41] danielk22: Right but they could do an additional battery option. In the Thinkpad line if the 9 cell 8 hr battery isn't enough you can snap another 9 cell battery to the bottom.
[21:17:48] jya: and in one hour, I have an appointment with one of the LLVM guy, he liked the compilation bugs I reported when compiling myth in debug mode etc
[21:18:07] jya: danielk22: you have some 3rd party accessories that give you extra battery...
[21:18:10] danielk22: Cool!
[21:18:35] danielk22: It's always good to have the ear of people who know what you are talking about.
[21:18:36] jya: it would impact the look in a negative way, so I'm guessing they won't do it. they never did either
[21:19:03] jya: interestingly, ffmpeg is actually on their testing plan… they always test against ffmpeg
[21:19:53] danielk22: I'm assuming full c++11 is in the cards too if they are going completely with llvm.
[21:20:05] jya: though I did show him that the only reason it worked, is that in ffmpeg configure, they have a test if it's being compiled by clang, and add -O3 if it is
[21:20:22] jya: Xcode 4.4 add c++11 support
[21:20:30] stuartm: danielk22: comes back every now and then before disappearing again, I don't think the server is very stable :) TBH I think he was running it all off a machine in his basement, maybe that's changed now
[21:21:13] jya: danielk22: I wonder how some of our code work if the virtual override isn't done properly.
[21:22:04] stuartm: jya: gcc being too clever for it's own good?
[21:23:24] stuartm: or as I've seen in the past, the code compiles and runs, even gives a good impression of working but all sorts of subtle bugs and leaks are occurring as a result that aren't immediately obvious
[21:23:41] stuartm: jya: any of those in libmythui?
[21:24:01] jya: stuartm: probably.. when I showed the myth' s filters code to the llvm guy (he's the llvm architect), he said that the issue is how we've declared the inline code, that it shouldn't work anyway.. though he wants to have a closer look
[21:24:05] jya: stuartm: yes…
[21:24:26] jya: let me do a make clean && make in libmythui and I post it
[21:25:09] stuartm: I'm not sure if we still need some of the filters, at the very least they need resyncing with the upstream copies (mplayer/ffmpeg)
[21:25:40] jya: stuartm: well, they are used by some of the deinterlaceds…
[21:25:47] stuartm: coverity throws some warnings for filter code, but it's stuff that doesn't exist in the originals
[21:26:24] stuartm: jya: aye, but those same filters are included in libavfilter and there's no explanation given why we use our own very old copies of those
[21:26:58] jya: stuartm: I didn't know that… maybe we should get rid of all the duplicates then, and use the ffmpeg one
[21:28:00] danielk22: Oh, I have a patch for the filters code..
[21:28:25] jya: oops… starting compilation of libmythui dropped my battery level on my macbook air by 10% in less then 5 minutes
[21:29:06] jya:
[21:29:23] danielk22: stuartm: I think the issue is we fixed some segfaults in the filters code and it diverged from upstream.. it's not really much used code so it kinda only gets attention when it fails to compile.
[21:29:27] jya: danielk22: you mean you removed the myth filter and use the ffmpeg one ? cool
[21:30:15] danielk22: jya: I just fixed declare issues. It's more work to use the ffmpeg one.. Probably should be done though.
[21:30:33] jya: what do you mean by declare issues?
[21:31:22] danielk22: ConstFilterInfo is bogus.
[21:31:48] jya: what about if I drop all the mac carbon's code ? everything works just as well with cocoa, and the Quartz renderer serve no real purpose IMHO
[21:32:08] jya: you must use an old version of Qt to use it (4.6) as Qt only build Qt with cocoa these days
[21:32:23] jya: carbon is 32 bits only etc...
[21:32:47] danielk22: jya: I really don't know anything about the OSX port. That was always Nigel's baby and he hasn't been around much for a couple years now.
[21:32:49] jya: and most of the issues I've add in getting myth to properly work on the mac was in the carbon code
[21:33:09] danielk22: Dropping Carbon makes sense to me on a high level.
[21:33:36] danielk22: MythTV doesn't compile on PPC macs anyway..
[21:33:46] jya: danielk22: humm… it should
[21:34:00] jya: i even added support for PPC64, though I didn't try
[21:34:22] danielk22: Well, if you run the last released OSX for PPC maybe.. But not with the OSX that shipped on the last ones.
[21:34:44] jya: well, that's a different story, 10.6 has dropped PPC support
[21:34:55] jya: but compiling on 10.6 for PPC is still possible
[21:35:14] danielk22: Yeah, but I think 10.5 or 10.4 is broken.
[21:35:29] jya: in fact in my build script, I provide pre-compiled framework, they are compiled for i386, x86_64, ppc and ppc64
[21:36:04] danielk22: jya: I haven't tried it with your script. The mac went to the basement before you started to work on it.
[21:36:08] jya: danielk22: i'm pretty sure it's not.. I build 0.25 on my 10.5 PPC laptop and it worked fine. I had issues but they existed on intel too, which I've fixed since on intel
[21:36:40] jya: it did take several hours to build though, my laptop is a G4 1GHz
[21:36:45] danielk22: ah, maybe it was just general code rot that you've fixed then.
[21:37:16] jya: moving to clang however, will likely drop ppc support.. I don't even know if llvm supports ppc
[21:37:18] jya (jya!~jyavenard@mythtv/developer/jya) has quit (Quit: jya)
[21:48:36] danielk22: jya: In answer to your earlier question, the override doesn't always cause problems. It just means that derived->m(x) may not compile while ((parent*)derived->m(x); does. But this may be a bug if the reason it doesn't work is because the type of x in the parent has changed. Then parent *p = derived; p->m(x); will call the parent method which was intended to be overriden in derived.
[21:49:52] MythBuild: Hey! build master-vista-mingw-32bit #1193 is complete: Success [3build successful]
[21:49:52] ** MythLogBot **
[21:49:52] MythBuild: Build details are at . . . /builds/1193
[21:51:58] jya (jya!~jyavenard@mythtv/developer/jya) has joined #mythtv
[22:04:54] gigem: stuartm: I'll take a look later.
[22:05:43] natanojl (natanojl! has quit (Ping timeout: 245 seconds)
[22:19:02] Beirdo: argh
[22:19:13] Beirdo: I still need to make MythLogBot ignore MythBuild better
[22:30:40] jya (jya!~jyavenard@mythtv/developer/jya) has quit (Remote host closed the connection)
[22:30:54] jya (jya!~jyavenard@mythtv/developer/jya) has joined #mythtv
[22:37:28] XDS2010 (XDS2010!~users.121@gateway/web/ has joined #mythtv
[22:38:53] stuartm: gigem: might be better to wait until I've got a backtrace, no sense in you looking for something that might not be there
[22:40:11] stuartm: gigem: I don't want to waste your time on what is just speculation at this point
[22:53:06] XDS2010: Does a graphics/pci atsc card that supports early vertex shaders exist ? One that will work in mythtv
[22:53:35] XDS2010: All in one pci (not pcie or pci2)
[23:04:02] NightMonkey (NightMonkey!~NightrMon@pdpc/supporter/professional/nightmonkey) has quit (Ping timeout: 244 seconds)
[23:05:28] kc (kc!~Casper@unaffiliated/kc) has joined #mythtv
[23:19:07] NightMonkey (NightMonkey!~NightrMon@pdpc/supporter/professional/nightmonkey) has joined #mythtv
[23:33:35] gigem: stuartm: Okay. I need to finish the UTC fallout in the scheduler first anyway.
[23:48:22] stichnot (stichnot!chatzilla@mythtv/developer/stichnot) has quit (Ping timeout: 244 seconds)
[23:53:13] danielk22: gigem: Thanks for looking at that. I didn't realize the timeslot records would be affected.
[23:56:07] jya (jya!~jyavenard@mythtv/developer/jya) has quit (Quit: jya)
[23:56:29] danielk22: Beirdo: What do I need to do to make a build slave publish to our waterfall view?
[23:57:27] jya (jya!~jyavenard@mythtv/developer/jya) has joined #mythtv
[23:58:02] jya: danielk22: well, all the llvm issue are fixed now :)
[23:58:38] jya: the error about having not enough registers in 32 bits was fixed.. should be in the next release
[23:59:19] Beirdo: danielk: basically clone the buildbot-config repo, edit the master.cfg file under "master"
[23:59:34] Beirdo: search for and uncomment the zeromq lines, and change to your branch :)
[23:59:59] Beirdo: once it's all in, commit/push, and I can update it on the server...

IRC Logs collected by BeirdoBot.
Please use the above link to report any bugs.