/srv/irclogs.ubuntu.com/2008/10/17/#bzr.txt

abentleyjam: turns out there's a downside of lp: URLs, too.  They can't address private branches.00:00
abentleyjam: actually, that's wrong.00:08
augustis there an easy way to copy somebody's branch into a new branch under me on launchpad?00:18
thumperaugust: only to get a copy yourself and push it00:19
augusthmm00:19
augustok00:19
poolieaugust: or bzr branch lp:~him/thin/1 lp:~me/thing/200:23
augustthat's simpler00:23
poolielifeless: interesting but nothing earthshattering; the review queue is growing again and needs love00:23
* a_c_m is FINALLY understanding branches vs checkouts... god bzr rocks00:32
=== TheMuso_ is now known as TheMuso
lifeless13G01:03
jmla_c_m: :)01:06
=== mwhudson is now known as mwh
=== mwhudson_ is now known as mwhudson
=== thumper_laptop is now known as thumper
=== jamesh__ is now known as jamesh
cafuegoHi all, I have a question about merging unrelated trees into one, whilst keeping all history. is that possible?02:05
cafuegoAnd if so, how? :-)02:05
jonoxercafuego: Interesting question, I'm going to put it to the test right now02:06
thumpercafuego: yes it is possible02:06
thumpercafuego: but I can't remember the special magic words02:07
thumperspiv: can you help?02:07
cafuegojonoxer: Oh, hi there!02:07
jonoxercafuego: hi!02:07
jonoxerI'm just a bzr noob here to figure out how things work02:07
jonoxerSo questions like that are interesting02:07
* cafuego is also a bzr noob, so asks questions like that ;-)02:08
cafuegoI had  aperv at bzr merge, and then mentions a mergebase, but then doesn't say how to specify it or what it is02:08
jonoxercafuego: merge has an "--lca" flag! And the help text says "LCA-newness merge"!02:11
jonoxerNot that it helps you, it's just funny02:11
cafuegoYeah, I saw that <heh>02:11
cafuegoI think it means "merge now and worry later" ;-)02:11
thumperI think adding --force to the merge command gets it to work02:11
jonoxerthumper: nope, still says "branches have no common ancestor"02:12
thumperhmm..02:12
spiv-r 0..-102:13
thumperspiv: I was just thinking about something like that02:13
spivcafuego: bzr merge -r0..-1 unrelated_tree02:13
jonoxerspiv: interesting, that worked in my test02:13
jonoxerNeat trick02:13
spivYeah, it's handy.  It's a bit of a special case.02:14
cafuegospiv: Ta, and hi also02:14
spivcafuego: hi :)02:14
* cafuego goes back to his clean tree and runs it in a subdir this time02:14
jonoxerspiv: Makes for a cool-looking vis graph, too! I've never seen a convergence like that before02:14
jonoxerOr a rev "0.1.1"02:15
spivHeh :)02:15
* fullermd has plenty of branches with rev 0.4.1 :p02:15
jonoxerspiv: by the way, thanks to you (and others on #bzr as well): http://jon.oxer.com.au/blog/id/29002:16
lifeless13.6GB02:18
spivjonoxer: awesome.  Thanks :)02:21
cafuegoWhee, all done.02:31
=== arjenAU2 is now known as arjenAU
emmajaneI'm just setting up JungleDisk+Amazon S3 as a backup network. I know I can rsync files to it as well. If I wanted to have my "personal" bzr repositories somewhere other than my office network, could I push commits to S3 as well? And does that even make sense as a question? :)04:05
jonoxeremmajane: if you can rsync to it then yes, you should be able to push the repo to it. However, see here: http://research.operationaldynamics.com/blogs/andrew/software/version-control/bzr-repository-rsync.html04:08
* emmajane reads04:09
jonoxerThat's from a couple of years ago, I don't know if things have changed since04:09
jonoxerAfC was just on the channel but left 10 mins ago, we could have asked him04:10
emmajaneI don't usually branch... just tag. So I think I'll be ok.04:10
emmajanejonoxer: i'm backing up the directories that contain the bzr repos, so I'm not sure I also need to push them as well...04:11
jonoxeremmajane: It sounds like all you're wanting is somewhere to put them for disaster-recovery purposes, in which case you don't need to "push" in the bzr sense. Just update your backup with rsync from time to time04:11
* emmajane nods04:12
emmajaneyes. :)04:12
jonoxerCool. Just treat your S3 storage like an extra disk then and dupe your directory onto it04:13
emmajaneexcellent. :)04:13
emmajaneI love it when life is easier than originally expected. :)04:13
lifelessthe only caveat is don't commit or pull while rsyncing04:16
lifelessthere is a database in the repo that rsync can copy in an inconsistent state - unless you use a file system snapshot04:16
emmajanelifeless: good call re. commit and pull. I don't use a file system snapshot for this backup (although I have used it in the past for other things)04:17
jonoxerlifeless: good point. I'd assumed it would be done as a manual process so emmajane wouldn't be likely to be doing both at the same time, but if you cron-jobbed it you could have a problem04:17
jonoxerlifeless: are you going to OSDC or LCA?04:20
lifelesshttp://paste.ubuntu.com/58644/04:24
lifelessjonoxer: well the LCA miniconf invite actually put me off04:25
lifelessI might swing by LCA for a day04:25
lifelessjonoxer: more details in a bit, phone call right now04:25
jonoxerlifeless: I'm very curious now04:28
pooliethe problem with S3 is it does not, in itself, provide ordering between different writers04:31
emmajanewriters?04:31
poolieah, i was talking about treating S3 as an actual repository04:32
poolieratherthan just backing up to it04:32
emmajaneah :)04:32
emmajanewould there be an advantage to using S3 instead of launchpad?04:32
pooliewell, no, because it won't actually work :)04:33
emmajanehehe04:33
emmajaneAlthough the PPA option on launchpad is always free + open and cannot be private/restricted, IIRC?04:36
bob2are sure you can rsync to s3?04:37
=== emmajane is now known as emmajane_
=== emmajane_ is now known as emmajane
emmajanebob2: via jungledisk04:41
emmajanebob2: not directly though, no.04:41
emmajanebob2: www.jungledisk.com04:41
thumperpoolie: are there any blockers to making format 1.6 the default for bzr 1.9?04:42
bob2emmajane: ah, interesting04:43
emmajanebob2: I'm just setting it up now. I'm quite impressed so far.04:43
emmajanebob2: I like that it's scalable. Dropbox was also nice but it was either 2G free, or 50G paid at $10/month.04:43
jmllifeless: wanna make subunit part of pyunit-friends too?04:50
jdmHas anyone had success using bzr-svn with Sourceforge?04:51
jdmspecifically, committing using your account?04:51
jdmI've created a checkout for https://account@project.svn.sourceforge.net/svnroot/project04:52
jdmAnd it took my password just fine checking out04:52
jdmBut committing doesn't seem to work04:52
jdmIt just gives me a permission denied error04:53
lifelessthumper: yes, its too new05:01
thumperlifeless: given that it changes very little in the way of actual disk format, I find that surprising05:02
lifelessthumper: its nothing to do with what it changes05:03
lifelessthumper: I didn't say unstable :P05:03
thumperlifeless: this is somewhat screwing up the wonders of stacking with LP05:03
thumperlifeless: until it becomes the default, it looses a lot of its appeal05:04
lifelessthumper: changing the default tends to be disruptive because availability of the minimum version to use that bzr hasn't propogated out far into the ecosystem05:04
lifelessthumper: we cop a lot of flack about formats already; doing churn on the default will only make that worse05:05
lifelessthumper: branch --stacked and push --stacked will convert automatically, so I'm not sure why its screwing up LP05:06
lifelessI need food, lightheaded - back soon05:06
jonoxerlifeless: while you're eating, think about the miniconf story you're going to tell  :P05:06
lifelessjonoxer: back05:23
lifelessso miniconfs - did you see the generic RFP a few days back ?05:23
jonoxerYes, linking to a number of miniconf sites IIIRC05:24
lifelessthis sentence really bugged me: "Each miniconf is looking for a select range of talks from industry leaders and professionals alike."05:24
jonoxerSounds like marketing-speak05:24
lifelesswhat happened to the grass roots community amateurs-are-as-good-or-better conference I knew and loved05:24
lifelessanyhow, I read that, and thought "I don't want to see a conference organised by people with that attitude"05:25
jonoxerHopefully it hasn't been lost in translation and the conf itself will still have the same character05:25
jonoxerRather, *has* been lost in translation05:25
lifelessjonoxer: hopefully; at this point I'm not interested enough to gamble time, leave and money in finding out05:25
lifelessI may blog about it once its had a full week to ruminate05:26
jonoxerI've been totally de-looped re LCA this time around, it's quite a weird feeling after being so much a part of it the last few years05:26
lifelessheh05:27
lifelessI got delooped after sydney05:27
jonoxerYou're a Sydneysider, right? OSDC is in Sydney, but it may not be hard-core enough for you05:28
lifelessyah05:28
lifelessas I said re OSDC, I may drop by05:28
lifelessits right on the border of conflicting with other stuff IIRC05:28
jonoxerOSDC's content seems to converge closer toward LCA's each year. The first year it was very webby, very "let's do FOSS on Windows and MacOS". By last year it had Rusty doing rants on threading models05:30
fullermdI remember 10 years ago or so when I used to think once in a while, "Hm, I should try to hit a conference once in a while"...   eventually I saw the light   :p05:32
lifelessjonoxer: neat; sounds like LCA is a moving target though; question is if OSDC are smart enough to stop at peak :>05:32
jonoxerfullermd: Saw the light and realised you should go, or saw the light and realised you shouldn't?05:32
fullermdWell, realized it was never going to happen, and I probably wouldn't care for it if it did anyway   :p05:33
lifelessjam: btw - http://code.google.com/p/hypertable/wiki/ArchitecturalOverview - uses bloom filters05:40
lifelesspoolie: 18.4GB05:40
cafuegoyou should see the number of webby talks we rejected for lca05:50
jonoxercafuego: you mean for Melb, or are you on the papers ctte for Hobart?05:51
cafuegohobart05:51
jonoxerGlad I didn't submit any then!05:51
cafuegoi cna't rember the submisisons for '08 - all repressed now ;-)05:51
lifelesscafuego: so if you're reading backlog, whats with the commercialoid nonsense in the RFP ?05:52
cafuegolifeless: I think it's just that - and won't affect the conference itself.05:52
cafuegoAt the end of the day the conf is made by the speakers and attendees, but by the press releases05:52
cafuegos/but/not/05:53
cafuegoKeep in mind that Ben works for gov't05:53
lifelesscafuego: that press release implied no hobbyist or amateur talks05:53
cafuegolifeless: Oh, but there will be05:53
jonoxerWell, my talk about hotted up cars got in, so it's bound to be an "interesting" LCA!05:53
lifelesscafuego: then that press release needs reissuing asap; though perhaps I'm the only one reading it this way05:53
lifelesscafuego: cause I can't emphasise how big a turn off it is05:54
cafuegolifeless: I'll ping ben and let him know05:54
lifelessthanks05:54
cafuegobut don't let it turn you off submitting or attending05:55
lifeless(unless of course it really means professional and industry leaders only, in which a blog post or something explaining is something I would read with interest)05:56
emmajaneHeh. Ignore the public call for papers and submit regardless of what we've said. ;)05:56
lifelesscafuego: it's already turned me off; the work now is to get excited again05:56
cafuegolifeless: I'05:56
cafuegolifeless: I've tested the Daquiri machines at the casino .. they rock ;-)05:56
lifelesscafuego: they have a machine to make daquiri's!05:57
cafuegoYup. green and red.05:59
cafuegored sucks, green rocks.05:59
lifelesslol05:59
bob2commendable thoroughness!06:00
fullermdBad time to be R/G colorblind   :p06:00
cafuegofullermd: I am actually.06:00
cafuegothough not completely, which is a blessing ;-)06:01
fullermdWell, so much for trusting your advice on the matter now...06:01
cafuegoyou mean you're going to have to attend LCA and find out for yourself?06:01
* jonoxer things lifeless may have just found the motivation he needs06:01
jonoxers/things/thinks06:01
* fullermd doesn't actually even know what LCA is, so....06:02
lifelessfullermd: linux.conf.au06:02
* cafuego should decide whether he'll go to osdc06:02
fullermdOh, heck.  I can't stand on my head long enough to be on the upside-down side of the world...06:03
cafuegofullermd: that's where the daquiri comes in06:03
fullermdI'm not sure I'd call that "helping".06:06
lifelessso, 41K revisions copied06:13
jdmhooray, apparently I was just giving bzr-svn the wrong password for sourceforge06:28
jdmthe world is right again06:28
lifelesspoolie: the usertest run is 4/5ths complete06:31
lifelesspoolie: more than 41K out of 54K revisions copied06:32
vilahi all07:05
vilalifeless: what are those GB you keep announcing, I don't know if I should be rejoiced or frighten...07:20
lifelesshttp://benchmark.bazaar-vcs.org/usertest/log/usertest.log.inprogress07:32
lifelessits the CHK based inventory07:32
lifelessvila: pulling mysql-server into it07:32
gourhi, it's not very high priority but would be nice if bzr-svn could serve svn-externals. what is missing in bzr?07:33
gourhttp://bazaar-vcs.org/BzrForeignBranches/Subversion mentions need for 'nested branch' and the other issue which i'm not clear about07:35
vilalifeless: what do those GB represent ? The repo is around 620MB with packs...07:36
lifelessvila: well its not really07:36
lifelessvila: grab the plugin I just posted and the repository branch, and then analyse an existing repo07:37
lifelessvila: the raw data is _much_ bigger than 620MB; the CHK inventory is smaller in raw data07:37
lifelessvila: its just not being delta compressed at all at the moment07:37
vilalifeless: haaa, good, so you're *creating* a complete repo, uncompressed, with CHK invs ?07:39
lifelessvila: read the code07:40
lifelessvila: it will accomplish many things07:40
lifelessvila: you will know exactly what I'm doing; and you'll get a handle on the CHK inv work, and it will answer that question07:41
vilalifeless: hehe, touche, I must do that :)07:41
lifelessvila: I believe you will find it interesting07:41
vilaI already know that and hope I can come in the game before it's too late :)07:42
fullermdHm.  So, is 1.8 officially released?07:45
fullermdI see the tarball, and the wiki says so...   but the /topic and launchpad both still say 1.7.1, and I haven't seen an email about it.07:46
lifelessvila: is something making it difficult for you to get involved?07:47
vilashyness ? not knowing enough about the internals ? doubts about how to prioritize between the other areas I'm involved in ?07:49
vilaMaybe07:49
vilaLack of brain power due to that damn wisdom teeth still hurting ?07:50
vilaSurely07:50
lifelesswisdom teeth are a pain07:51
lifelessvery distracting07:51
lifelessthe first is in your court; the second is la poulet et la <egg>07:52
spivouef, IIRC?07:52
lifelessfor the third, I'm happy to let you bounce this-or-that questions of me anytime07:52
lifelessspiv: oui07:52
spiv(as usual, I have no idea why I know that)07:53
* vila goes to dentist for a control and hope for an explanation about why he can't open his mouth more than 1,5 cm wide07:56
lifelessvila: perhaps the rubber bands are too tight07:57
vilaegg =oeuf (very close spiv but no cigar)07:57
vilalifeless: no user serviceable  parts :)07:57
spivvila: ah, I feel better now :)07:57
vilalifeless: in retrospect I may change my first one (shyness) with can't open  my mouth these days :)07:58
* vila realizes laughing is painful too o_O07:59
lifeless>08:04
lifeless:08:04
vila{ ?08:04
pooliehey vila, lifeless08:40
vilahey poolie08:40
fullermdpoolie: ^^ re 1.808:52
pooliefullermd: hi?08:53
fullermdHm.  So, is 1.8 officially released?08:54
fullermdI see the tarball, and the wiki says so...   but the /topic and launchpad both still say 1.7.1, and I haven't seen an email about it.08:54
* awilkins knows the pain of wisdom teeth08:54
awilkinsI had all four done surgically ; the lower set were growing downward and forward08:55
awilkinsMy days were becoming a haze of internal skull pressure08:55
* fullermd has all 4 wisdom teeth.08:56
lifeless43000 done, 11K to go08:56
lifelesshi poolie08:56
pooliefullermd: i've been taking it a bit slower and automating things or updating them as i go08:56
pooliemail will be sent soon08:57
awilkinsMy jawbone is still remodelling some years later - I have days where the lymph nodes in my tongue really swell and ache. I still keep a little dextropropoxyphene in reserve just in case.08:57
awilkinsMy teeth are nearly back where they started now...08:58
fullermdAh, OK.  I had the port all updated and was getting ready to send it in, then I realized, "Hey...   I haven't even heard that this thing is really there yet".08:58
awilkinsWhich branch of bzr-svn are you using to convert MySQL?08:59
lifelessawilkins: ?08:59
awilkinsSorry, are you not doing that?08:59
lifelessawilkins: its in bzr already, this is converting to my testin format09:00
lifelessawilkins: mysql's master is in bzr :>09:00
awilkinsGroovy!09:01
lifelessawilkins: you didn't know ?09:01
poolielifeless: woo, it looks like your run finished09:01
awilkinslifeless: I dont do a lot of mysql hacking....09:02
lifelesspoolie: no...09:02
lifelesspoolie: its still running, 11K to go09:02
poolieoh, strange09:02
pooliewhy did the load jump up to 2.0 there?09:03
lifelesspoolie: I'm running analysis on the partial data09:03
poolieok09:03
lifelessI'm also prepping to copy the result out09:03
lifelessoh foo, just ctrl-c'd it09:11
pooliemail sent09:11
=== poolie changed the topic of #bzr to: Bazaar version control system | http://bazaar-vcs.org | bzr-1.8 released 17 Oct | http://irclogs.ubuntu.com/ | http://planet.bazaar-vcs.org/
poolielifeless: are you serious, you killed the main run? :P09:12
lifelesspoolie: yah, meant to stop a tail -f09:14
lifelesspoolie: i've backed up the data and am finishing by hand :(09:15
jonoxerNoob question #47: does bzr support something analogous to svn's "externals"?09:43
ronnyhi09:44
jonoxer:)09:44
ronnyis there a way to set up aliases for push/pull locations of branches?09:44
bob2try the bzr-bookmarks plugin09:44
lifelessjonoxer: not stably; its intended to arrive, but EDEFERRED09:45
lifelessjonoxer: there is config-manager, which is somewhat similar09:45
jonoxerlifeless: thanks for the pointers. I'd prefer to avoid it entirely if I can, so I may just restructure our tree a bit anyway09:46
jonoxerA useful thing to know though09:46
ronnyhmk09:55
ronnybob2: just needed to figure if it makes sense to have it as part of the generic vcs api in the pida ide (we are about to get a good bzr integration by the gedit-bzr author)09:56
vilaawilkins: trying to scare me ? YOU WON'T ! The reason my wisdom teeth are coming back to haunt me is because I became younger by around 20 years working on bzr, two painful weeks are a drop in the ocean of my felicity :-) fullermd: I'm perfectly happy to *not* have them anymore if that's the price for becoming that young again :)10:12
fullermdWell, I'd be happier not having them too   :p10:13
Odd_Blokepoolie: Good job on the release. :)10:19
Odd_BlokeWhere is .bzr.log kept on Windows machines?10:52
james_wOdd_Bloke: ask "bzr --version"11:04
AnMasterhm11:11
AnMasterwebsite for says "Bazaar 1.8 was released on the 16th of October, 2008.11:11
AnMastertopic says "bzr-1.8 released 17 Oct"11:11
AnMasterso which one is it?11:11
lifelessAnMaster: both11:12
lifelessAnMaster: the world is wide11:13
AnMasterlifeless, which timezones?11:13
* AnMaster consider it from UTC11:13
jonoxerspiv, poolie, lifeless: thanks to all your assistance I now have 1.1M lines of code migrated from svn to bzr   :-)11:13
lifelessAnMaster: yeah I think different folk looked at the clock ~ the same time11:13
lifelessjonoxer: sweet11:13
pooliejonoxer: sweet11:13
pooliegoodnight!11:13
jonoxernight!11:13
AnMasterlifeless, so what day was it in UTC?11:17
lifelessAnMaster: I don't know, I'd have to think11:17
AnMasterlifeless, well what time was it in second since epoch then? ;P11:18
lifelessAnMaster: right now, its the 17th where I am11:18
AnMasterso it is here11:18
AnMaster12:1811:18
AnMasterand that is UTC+2 currently11:18
AfC"It was the dawn of the 3rd Age..."11:21
AnMasterheheh11:21
=== thekorn_ is now known as thekorn
ronnyhmm, does the threadlocal chdir issue of bzr 1.8 affect linux?12:07
* lamont wonders how soon 1.8 will land ar launchpad.net/~bzr/+archive12:49
lamontat, even12:49
Odd_Blokepoolie is most likely to know (IMPLICIT PING).12:50
lamontOdd_Bloke: OTOH, he called g'night almost 2 hours ago12:51
Odd_BlokeThen I'd expect it tomorrow sometime. :)12:52
lamontwhich means I'll probably worry about it on monday or so12:55
lamontthough it's only 2355 in Sydney right now..12:56
Odd_BlokeYeah, I probably meant Monday by 'tomorrow', now that I recall that it's Friday.12:56
lamontand fwiw, the topic change occurred at 0812 UTC, so there wasn't much of the world left where it was Oct 1612:58
vilajam: ping, regarding bug #277537 I can't understand if we agree or not, chatting seems easier to sort that out, pong me back when you're available14:08
ubottuLaunchpad bug 277537 in bzr "annotate says revision modified file, "bzr diff -c" widly contradicts" [High,Fix committed] https://launchpad.net/bugs/27753714:08
jamvila: sure let's chat about it for  bit. I'll need to go in about 30min, but then I'll be back later15:13
jamI think what you've done is probably fine (and probably what 'reconcile' would have done anyway)15:13
vilaok15:13
jammy concern is that code like 'annotate' isn't ready for it15:13
jambut we want to make the code handle it anyway15:14
vilaMy understanding is that you're right but time shifted15:14
vilathe bug already shows that annotate isn't ready for it15:14
vilafixing the repo seems to please annotate very much15:15
vilaDoes that make sense ?15:17
jamvila: I think you are misunderstanding my concerns with annotate. And if *I'm* wrong then it seems something much more serious is going on15:17
=== mw is now known as mw|bbiab
vilaThat's I wanted to chat, there are surely grey areas for me15:17
jamLooking at the annotate code, I'm 95% sure that it assumes that the compression_parent == parent_ids[0]15:17
jam(left-hand parent)15:17
vilaDid you read my replies ?15:18
jamI haven't got to that yet, I'll look15:18
vilaI agree with you on that part but I wonder if annotate is not getting these parents but some others and then assuming they are the same. In that case your diagnosis *is* already correct about the matching blocks use15:19
vilaI also agree that if my fix (modulo the tweak for more than 2 refs) is correct but incomplete then we have a bigger problem because reconcile use that same way to fix inconsistent parents15:21
jamvila: well the patch to annotate should be merged regardless15:21
jamWhen I look at my local graph, I didn't see a single case where 'compression_parent' wasn't parent_ids[0]15:22
jamwhich is why it seems weird that swapping it, which *should* break annotate actually ends up "fixing" annotate15:22
jamvila: I'm also rather positive that the converter isn't actually to blame, but the version of bzr that was used during conversion15:23
jamthis was a known bug in bzr15:23
vilawhich is why I suggest that annotate is not using the compression_parent15:23
jamwhich is why reconcile already tries to fix it15:23
jamand the reason to make _generate_text_key_index faster is just to make 'reconcile' *usable*15:23
jam30+hrs isn't in the very usable category15:24
vila1) we should clearly identify the oldest bzr version that fixes that15:24
vila2) check is 32 hours, reconcile is 20 hours, as I said I think we should keep them that way and focus elsewhere15:25
vilaand make sure they are never needed15:26
vilaI don't have a problem with a verification tool that take days if it save *me* days15:26
vilabut anyway, I think this bug should be fixed without requiring users to update bzr so even if we optimize check/reconcile they won't be able to use them15:28
jamso, #1 I think your plugin is probably fine15:29
jam#2 I think we need a better understanding of what is going on in annotate15:29
vilaha, ok, I was unsure about that15:29
jambecause it doesn't fit *my* mental model15:29
jamand I've been neck deep in it for a long time15:29
vilaI respect that and share the concern15:30
jamlooking at bzrlib/knit.py line 955, we pull 'compression_parent' directly from '_index.get_build_details()'15:30
jamso I'm quite sure it is getting the info from the file graph15:30
jamsorry, the line in question is 258715:31
jambut it is doing the same thing15:31
=== mw|bbiab is now known as mw
vilacompression_parent is not changed by my fix15:32
jamvila: yeah I know, which is why it is getting weird15:32
vilawhere are the parents coming from ?15:32
jamI'd like to try just always setting "left_matching_blocks = None" and see what that does15:32
jamso... _KnitAnnotator should be completely focused within the per-file graph15:32
jamand not know anything about the whole tree graph15:33
vilatell me where, I have buggy and fixed repos at hand15:33
jambzrlib/knit.py has the _KnitAnnotator code15:35
jamalternatively, you can go to bzrlib/annotate.py15:35
jamand in the "reannotate()" function15:35
jamjust set the 'left_matching_blocks = None'15:35
jamright at the beginning15:35
vilaI fired 4 gblames, setting left_matching_blocks to None has no effect15:40
jamvila: did you try "_left_matching_blocks" I was missing the underscore15:41
vilayes15:41
vilaI just checked I used the right bzr by adding a print '_left_matching_blocks set to None'15:43
jamso, I probably need to swap back some state in my head to test it here.15:43
jamcan you link the rev-ids that are 'correct'?15:44
jamI think: sp1r-anozdrin/alik@quad.opbmk-20080322080224-3590115:44
jamis  correct revision15:44
jamand merging it with sp1r-anozdrin/alik@quad.opbmk-20080322083224-0929915:44
jambroke it in the ancestry15:44
jambut doing it manually gives the "right" answer15:44
jamvila: does that sound right to you?15:45
vilayes15:45
vilaerr no wait, let me check15:45
vilajam: checked, yes15:47
jamk, I'm working on reproducing here, give me  a sec15:48
vilaBut I mentioned that the "right" answer is not as right as I thought, my fix reveals different annotations (because that file has 71 inconsistent parents in its ancestry, the manual merge fix only one pair out of the 71)15:49
jamvila: sure, I just want *a* test case :)15:53
jamEven if it is only this one hunk15:53
jamWhat I'm seeing is:15:53
jam_left_matching_blocks was already None15:53
vilaok, so the manual merge gives the right one15:53
jamAnd no case where _left_matching_blocks was not None15:53
jamwhich is really weird15:54
vilaHaaa, at least it explains your misunderstanding ! We're making progress :)15:54
jamanyway, I have to go right now, but I'll be back later15:54
jamI'll also mention that there are no cases of: print "compression parent is not left-parent: %s, %s" % ("15:54
vilaok, don't forget  that you're using a *weird* repo, that could explain the weirdness15:55
maestrolinuxhttp://s2.ar.bitefight.org/c.php?uid=1973216:36
jamvila: so the reason _left_matching_blocks is None is because of the code to check about using "_fallback_vfs"16:49
jamand that is because someone hijacked it in bzr.dev:16:50
jamif True or len(self._knit._fallback_vfs) > 0:16:50
jam    # stacked knits can't use the fast path at present.16:50
jam    return self._simple_annotate(key)16:50
jamNote the "if True" portion16:50
jamugh16:50
vilaI remember reading that but thought it was intended :-/16:51
jamvila: no, we found that annotate was a lot slower, so poolie brought in the "if len() > 0"16:52
jamI think he forgot to take out the "if True" block16:52
jamMerge unoptimized annotate code for stacking, and only use it when needed16:52
jamis the comment for that line16:52
jampoolie: shame on you. I trusted you :)16:52
jamvila: so it could be a bug in the '_simple_annotate' code16:54
jamwhich is why they aren't getting the right ordering16:54
vilaDidn't you tell me one day that you used to check what code was checked in ? :-P16:54
jamvila: before we had 30 patches a week, yeah. I would read the diff everytime I did 'bzr up'16:55
vilayes, it's on the path, I have some commented out import pdb; pdb.set_trace() there16:55
vilajam: you should know better than quitting good habits16:55
vilaSo, does that path get different parents than the pack index ones ?16:56
jamvila: I'll have to look16:57
jamit doesn't *look* like it does, but lifeless wrote that code16:57
jamvila: try takeing out the "if True" and see if we get different results16:58
* vila taking out the 'True or' instead :)16:58
jamI seem to get the same results17:00
jamI just get them a bit faster :)17:00
vilano difference for broken repo, tracenack for fixed repo :-/17:01
vilaAssertionError: mismatched new_lines and annotated_lines17:02
jamvila: I'm glad we at least caught the bug17:04
vilacan't reproduce o_O17:05
jamvila: can't reproduce?17:06
jam(it is still giving bad results, but it gives them in 1.3s instead of 2+)17:06
vilaI traceback once but not twice...17:06
jamvila: different files?17:06
jamvila: the check is: if len(new_lines) != len(annotated_lines):17:07
vilanope, same exact command17:07
jamSo there has to be a line length mismatch or we won't catch it17:07
jamThough I don't see any reason it would be a heisenbug17:07
vilaI know after the traceback I changed the format to display the lens and since then the traceback vanished...17:07
* vila check ghosts17:08
jamvila: I would check your modification to make sure you aren't overwriting a variable, etc.17:08
vilaI reverted it !17:08
vilaOk, wrong shell, got it back:17:12
vilaAssertionError: mismatched new_lines (732) and annotated_lines (721)17:12
jamvila: I'm sending a patch to the list which fixes these 2 things with the annotate code.17:15
jamAnd then I'll try to debug why we are getting the wrong annotations regardless17:15
jamas 'reannotate' shouldn't really care whether a text is the left or right parent.17:15
vilahold on17:17
vilaIf my fix is wrong it means reconcile is wrong too, you understood something I don't here :)17:18
vilajam: and I fixed only one thing: 'deleting the True or' what is the second one you're referring to ?17:20
jamvila: the first fix is "True or" the second fix is changing the 'fast path' code to not re-use a matching block if compression_parent isn't the left-parent17:20
jamso it should not trigger the AssertionError17:21
jamvila: can you apply the patch and make sure 'bzr annotate' works properly after your reconcile17:21
vilajam: ok, it fixes the traceback (pfew)17:29
vilaI suppose your fix will have an impact on the 80s slow annotate case, no ?17:30
jamvila: right, it drops from 60s => 16s on my machine17:38
vilayeah, two birds with one stone ;)17:39
jamvila: well, it still doesn't give the correct result for their "broken" repo17:39
vilatrue, but my fix address that17:40
vilaAre you sure annotate doesn't recalculate the parents with another source ?17:41
vilaI never looked at the code path that is active now so my prior experiments are useless now17:42
jamvila: they both go through "reannotate()"17:44
jamit is just that one does a lot of work to pass in 'left_matching_blocks" when it can17:44
jamas well of other work to be memory friendly17:44
vilaMy tooth (or rather its lack now) is waking up again. 6 hours is definitely the time it takes for Advil to become ineffective :-(17:44
jamand go in pack read order17:44
jamvila: feel better with more drugs :)17:45
vilaI hate that but has done it for the last two weeks ;(17:45
vilaHmmm, your patch may not be active after my fix (except the blocks = None) , let me check17:47
vilarats, I need a more sophisticated breakpoint17:47
jamso.. I'm trying to look more closely at the parent ordering thing. The first thing that I see is that it seems this particular code block is *repeated* inside one of the parents17:53
vilaIndeed, when annotating in a broken repo I stop after compression_parent == parent_ids[0], but not with a fixed repo17:53
vilaIndeed, when annotating in a broken repo I stop after compression_parent == parent_ids[0], but I don't with a fixed repo17:54
jamvila: so *with* my patch and the old repo it is breaking?17:55
vilajam: yes17:56
jamhmm... it gives the 'bad' results but it works here17:57
jamso... I think we have a case of a code block being moved, and that confusing the annotation code17:58
jamif it gets one parent first, it lines up this particular portion17:58
jamif it gets the other parent it gets a different alignment17:58
jamand then can't match this portion because it considers it moved17:58
jamstill investigating17:58
=== wingo--tp is now known as wingo-tp
jamvila: but I'm thinking... fixing the per-file graph will make "bzr diff" use the same texts as "bzr annotate". but both annotations are legally correct18:00
jambecause there is an ambiguity in the system18:01
vilaThe bug report was about annotate giving a different result than diff and *that* was the problem18:02
jamvila: though if you did "bzr diff" versus the other parent you would agree with annotate18:03
jamI'm fine fixing the graph, I just wish our diff an annotate could handle moved blocks a bit better18:03
vilaBe aware of the conclusions you draw from the "manual" merge, the annotations it gives are far from the one I can see with a fixed repo, may be you try to get one  (it's only 312 seconds away ;-)18:04
vilaBe aware of the conclusions you draw from the "manual" merge, the annotations it gives are far from the one I can see with a fixed repo, may be you should try to get one  (it's only 312 seconds away ;-)18:05
vilaI leave now, I'll check later or even pass a bit if I'm in better shape18:05
jamvila: rest well18:12
jfroy|workjelmer: you do use launchpad for bug reports, right?.18:24
=== fta_ is now known as fta
=== thegeekinside is now known as thegeekinside|aw
=== thegeekinside|aw is now known as thegeekinside
=== thegeekinside is now known as thegeekinside|aw
=== thegeekinside|aw is now known as thegeekinside
=== Verterok is now known as Verterok|out
jfroy|workjelmer: new failures this morning since I updated bzr and bzr-svn to the latest trunk revision21:21
jfroy|workAttributeError: 'CachingRevisionMetadata' object has no attribute 'generate_revision_id'21:21
=== Verterok|out is now known as Verterok
=== Verterok is now known as Verterok|out
fynnhow do I get a list of all monitored files in a repo?21:59
fynn"bz ls" seems to show non-monitored files and directories as well, at least at the top-level.22:02
fynnOK, "bz ls --versioned" seemed to do the trick...22:03
jfroy|workI am getting a "bzr: ERROR: A nested progress bar was not 'finished' correctly." exception when running a merge command...22:20
jfroy|workAny ideas?22:20
lifelessjfroy|work: file a bug, and you could try running with PDB=1 if you want to analyse the cause yourself22:37
jfroy|workI tend to ask in IRC before filing bugs, in case it's a "duh don't do that" :p22:41
lifelessjfroy|work: sure; I didn't criticise your asking :>22:44
jfroy|workI didn't mean it as a rebuttal, sorry if it sounded that way. Your advice is, of course, well founded and appreciated :)22:44
lifeless:)22:45
lifelessanyhow it smells like a bug22:45
lifelessprobably a rare code path not cleaning up well22:45
lifelesswin 4022:54

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!