IRC log for #storm on 20080328

00:00.15*** join/#storm wallflower (n=wallflow@ip-205-246-113-216.pool.grokthis.net)
00:09.45*** join/#storm _hurricane (n=trance@thomasschubsky.de)
00:11.01*** part/#storm _hurricane (n=trance@thomasschubsky.de)
02:42.41*** join/#storm bigdo1 (n=scmikes@72-197-8-8-arpa.cust.cinci.current.net)
03:09.02*** join/#storm jbot (i=ibot@pdpc/supporter/active/TimRiker/bot/apt)
03:09.02*** topic/#storm is The Storm Python ORM - http://storm.canonical.com/ - 0.12 released! || Review branches: https://bugs.launchpad.net/storm/+bugs?field.tag=review
03:52.02radixeyes jbot
05:50.47*** join/#storm bigdog (n=scmikes@72-197-8-8-arpa.cust.cinci.current.net)
06:27.32*** join/#storm jukart (n=jukart@lsfw01.lovelysystems.com)
07:05.41*** join/#storm dobee (n=dobeee@lsfw01.lovelysystems.com)
07:24.35*** join/#storm goschtl (n=goschtl@p5B0BD295.dip.t-dialin.net)
08:06.12*** join/#storm mcella (n=michele@ip-171-130.sn3.eutelia.it)
08:41.18*** join/#storm goschtl_ (n=goschtl@p5B0BF48A.dip.t-dialin.net)
12:07.18*** join/#storm cratuki (n=craig@213.253.62.66)
13:12.33*** join/#storm niemeyer (n=niemeyer@200-103-245-169.ctame705.dsl.brasiltelecom.net.br)
13:38.38*** join/#storm marianom (n=marianom@ubuntu/member/marianom)
13:49.04jameshhi niemeyer
13:49.13niemeyerjamesh: Hey! Good evening
13:49.29niemeyerjamesh: How're things going?
13:50.07jameshgood.  I got a few more of the missing prejoins features implemented, but ran into a few snags
13:50.38jameshthe email I sent has more details
13:54.00niemeyerjamesh: Nice, will check it out
13:56.49*** join/#storm mcella (n=michele@ip-171-130.sn3.eutelia.it)
13:59.47niemeyerjamesh: Things are looking good.. I'll check the issues you report more carefully
14:02.13jameshniemeyer: for the dotted prejoins, It is generating a class list like (A, LeftJoin(B, A.column1 == B.id), LeftJoin(C, B.column2 == C.id))
14:02.22jameshbut the generated SQL joins C before B
14:11.25niemeyerjamesh: Yeah, I see why
14:11.38niemeyerjamesh: Only using() will respect the order given right now
14:11.55niemeyerjamesh: I'll see if I can come up with a clean fix for this to at least respect the order seen
14:12.28niemeyerjamesh: The auto_tables mechanism was made to extract tables out of expressions, in which case the order doesn't matter
14:12.36niemeyerjamesh: We're abusing it a little bit
14:14.01jameshniemeyer: perhaps explicitly chaining the joins is the answer
14:14.53jameshthree argument LeftJoin()
14:15.35niemeyerjamesh: That'd definitely work
14:15.35jameshalthough that may be a bit more difficult to keep track fo
14:16.02niemeyerjamesh: Yeah, possibly.. I guess respecting the order seen at least shouldn't be too hard
14:16.07niemeyerjamesh: And might be enough for us
14:22.55jameshchaining the joins seems to result in extra parentheses
14:23.50jameshso (A, LeftJoin(LeftJoin(B, A.column1 == B.id), C, B.column2 == C.id)) is written to "A, (LEFT JOIN B ON ...) LEFT JOIN C ON ...
14:29.42niemeyerjamesh: It's dependent on the backend I think
14:29.58niemeyerjamesh: I remember that different backends had particularities about this was supported
14:30.40jameshniemeyer: hmm.  I don't see any compile differences for JoinExpr in storm/databases/
14:31.23niemeyerjamesh: Hmm.. that specific example is pretty weird
14:31.27niemeyerjamesh: Oh, hold on
14:31.38niemeyerjamesh: Nesting should be done like
14:32.53niemeyerjamesh: LeftJoin(A, LeftJoin(B, C, B.column2 == C.id), A.column1 == B.id)
14:33.22niemeyerjamesh: IOW, using both the left and right tables in the join
14:33.42niemeyerjamesh: That's why the parenthesis are there
14:33.47jameshniemeyer: the thing is that I don't have a left hand table to use in the toplevel join :(
14:34.29niemeyerjamesh: Hmmm.. yeah, handling joins like this is a bit boring :(
14:35.58jameshhmm.  actually passing in self._cls for the toplevel almost works
14:36.00niemeyerjamesh: We can fix this, and we can also try the approach of building auto_tables in a stable way
14:36.27niemeyerjamesh: Oh yeah, that should be cool
14:37.32jameshniemeyer: it gives me this: http://paste.ubuntu.com/6158/
14:37.52jameshWhich then fails with "OperationalError: no such column: phone.id"
14:37.56jameshwhich is bizarre
14:41.04niemeyerHuh
14:41.36jameshwonder if it is an sqlite bug?
14:48.54jameshhttp://www.sqlite.org/cvstrac/tktview?tn=2060
14:49.44niemeyerjamesh: Oh crap
14:50.41jameshthe last comment on the bug says that correct parsing of the query would make it slower.
14:51.27niemeyerjamesh: Definitely.. the working query would be a lot slower than one raising an error. 8-)
14:52.42niemeyerjamesh: So we have several approaches to fix the issue, at least
14:55.58jameshniemeyer: moving the "state.precedence += 0.5" statement in compile_join() below where it has handled join.left seems to fix the parentheses
14:56.15jameshhaven't checked if it is incorrect for other reasons though :)
14:56.19niemeyerjamesh: The issue is that they're not supposed to be fixed :(
14:56.22niemeyerjamesh: Right
14:56.43niemeyerjamesh: The meaning will actually change if we remove that
14:57.02niemeyerjamesh: OTOH, I think it's ok to do that for sqlite
14:57.04jameshniemeyer: well, you should be able to chain joins without parentheses
14:57.11jameshwith any DB, right?
14:57.17niemeyerjamesh: Hmmm.. that's a point
14:57.36niemeyerjamesh: But think about cases like
14:57.37jameshyou only need the parentheses for the second arg
14:57.49niemeyerjamesh: LeftJoin(A, B), where A and B are also join trees
14:57.52jamesh(if at all)
14:59.05jameshniemeyer: so LeftJoin(LeftJoin(a,b), LeftJoin(c,d)) could be represented as "a LEFT JOIN b LEFT JOIN (c LEFT JOIN d)"
14:59.38jameshit will be evaluated left to right
14:59.39niemeyerjamesh: What if b is a left join?
15:00.04jamesh"a LEFT JOIN (b1 LEFT JOIN b2) LEFT JOIN (c LEFT JOIN d)
15:00.06niemeyerjamesh: I see, so you're suggesting the right side only needs the parenthesis at all times
15:00.28jameshyeah
15:00.47niemeyerjamesh: Sounds nice
15:00.49jameshwhich is what I think shifting the "state.precedence += 0.5" line down does
15:01.30niemeyerjamesh: Adding parenthesis to everything was the easiest for sure, and the way I was trying to ensure it worked everywhere
15:01.36niemeyerjamesh: Reality always catches up :(
15:07.02jameshI should set up a bzr loom for this work
15:07.55niemeyerjamesh: Are looms public yet?
15:08.01jameshniemeyer: yep
15:08.05niemeyerSweet!
15:08.06jameshhave been for a month or so
15:08.20jameshbazaar.launchpad.net supports them to an extent
15:08.56jamesh(it won't corrupt them or consider them an invalid branch format, but it doesn't show anything special for the threads)
15:09.40niemeyerjamesh: I see.. so it considers the branch as a single unit
15:09.54jameshjamesh: as far as code browsing goes, yes.
15:10.00jameshs/jamesh/niemeyer/
15:10.35jameshpats jbot on the head
15:10.40niemeyer:)
15:12.58niemeyerjamesh: I'm heading for lunch.. please let me know if you'd like a hand with anything in particular, in addition to what you mentioned in the mail.. I'll try to go over them today still
15:13.14*** join/#storm bigdog (n=scmikes@72-197-8-8-arpa.cust.cinci.current.net)
15:14.05jameshhttp://paste.ubuntu.com/6160/ <- that's the simplest patch that'd make my nested joins work
15:14.40jameshof course, we could be even smarter and note that inner joins are fully associative
15:17.05jameshniemeyer: I don't think there is anything outside of my email, but I'm heading to bed.  Please email me with your suggestions.
16:00.50*** join/#storm dobee (n=dobeee@85-124-200-100.static.xdsl-line.inode.at)
17:50.07jkakarIf someone provides a review for the branch I've attached to bug #177107 we can merge the changes and help make Bernd's life easier.
17:50.18ubot3jkakar: Error: Could not parse data returned by Malone: timed out
17:51.52jkakarmichelp: Did you say you were +1 on bug #145883?  Can you please add a comment to the bug, if so?
17:51.53ubot3Malone bug 145883 in storm "Storm needs to be distributable as a Debian package" [Low,In progress] https://launchpad.net/bugs/145883
17:52.06jkakarAlso, one more review on bug #199356 would be nice.  It's very trivial.
17:52.07ubot3Malone bug 199356 in storm "The tutorial should describe enabling and disabling statement logging for debugging purposes" [Low,In progress] https://launchpad.net/bugs/199356
17:52.51michelpjkakar, i don't think i've reviewed it, i'll give it a look right now
17:53.02weathermanstorm/debian-package r185 committed by jkakar@kakar.ca
17:53.02weatherman- Merged trunk.
17:53.20weathermanstorm/tracing-tutorial r217 committed by jkakar@kakar.ca
17:53.20weatherman- Merged trunk.
17:53.25jkakarmichelp: Thanks!
17:53.52*** join/#storm bigdog (n=scmikes@72-197-8-8-arpa.cust.cinci.current.net)
17:59.05*** join/#storm jukart (n=jukart@85-124-221-45.static.xdsl-line.inode.at)
18:00.09*** join/#storm jukart (n=jukart@85-124-221-45.static.xdsl-line.inode.at)
18:19.36michelpjkakar, +1 on both of those branches
18:20.52jkakarmichelp: Awesome, thanks!
18:33.21oubiwannhey guys, is there any chance we can do a review to get Thomas Hervé's storm.twisted package added to storm?
18:34.08oubiwannPBS.org is going to be using it, btw
18:35.06radixoubiwann: I'll try to take a look at it again this weekend
18:35.20oubiwannradix: oh, man -- that would be so awesome
18:35.40oubiwannradix: speaking of which, I'm going to *see* you this weekend :-)
18:35.53radixoubiwann: speaking of PBS, there are two people who work there in my writing class this semester
18:36.06radixa television producer and a data center admin
18:36.16oubiwanncool!
18:36.31radixoubiwann: when are you getting here? I've got to schedule my cleaning :)
18:36.38oubiwannheh
18:36.49oubiwannI fly into Boston around 10:30pm I think
18:36.53oubiwannon Sunday
18:37.07oubiwanner... maybe it's Monday...
18:37.09oubiwannchecks
18:37.11radixheh :)
18:38.52oubiwannit's actually Monday the 31st
18:39.01oubiwann10:00pm
18:40.36radixoubiwann: ah ok. you'll probably be able to train in at that time
18:40.45oubiwannsweet
18:40.51radixunless you want to take a cab, I think it's about $15ish to my house from the airport
18:41.10oubiwannhrm, that ain't too bad
18:41.22radixunless I'm thinking $25
18:41.24radixI can't remember :P
18:41.24oubiwann(for a cab ride)
18:41.27oubiwannheh
20:21.04weathermanstorm/trunk r218 committed by jkakar@kakar.ca
20:21.04weathermanMerged debian-package [r=michelp,niemeyer] [f=145883]
20:21.09weathermanDebian packaging configuration has been added to Storm as the first
20:21.13weathermanstep in providing Storm packages built using Launchpad's PPA build
20:21.17weathermanservice.  The packaging files put in place are meant to be used with
20:21.21weathermanAutoPPA to produce Storm packages for Ubuntu releases include dapper
20:21.25weathermanand newer.
20:38.23weathermanstorm/trunk r219 committed by jkakar@kakar.ca
20:38.23weathermanMerged tracing-tutorial [r=jamesh,michelp] [f=199356]
20:38.28weathermanThe tutorial has been updated to include a section on using the debug
20:38.32weathermantracing helper.  The debug function has been improved to make it
20:38.36weathermanpossible to pass a custom stream to log statements to when enabling
20:38.40weathermandebugging.
20:52.40*** part/#storm marianom (n=marianom@ubuntu/member/marianom)
21:30.34*** join/#storm marianom (n=marianom@ubuntu/member/marianom)

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.