/srv/irclogs.ubuntu.com/2009/10/15/#bzr.txt

=== davidstrauss_ is now known as davidstrauss
* venia greets everyone.01:33
eyda|monis there a good way to do a side by side diff? (example: tkdiff, vimdiff)02:01
spiveyda|mon: you can use 'bzr diff --using=gvimdiff'02:03
spivThere are also plugins to extend bzr diff in various ways.02:04
spivhttp://bazaar-vcs.org/BzrPlugins02:04
spivAlso, the bzr-gtk and qbzr plugins provide that sort of functionality too.02:05
* igc lunch02:46
igcback03:44
spivHmm, lunch.  That's a good idea.04:17
mtaylorbzr: ERROR: exceptions.AssertionError: second push failed to complete a fetch set([('inventories', 'brian@gaz-20091012224641-gjo56i190y8c98xg'), ('inventories', 'brian@gaz-20091012172541-ta8k2ejioknnexab')]).07:12
mtaylorthat's not fun07:12
spivmtaylor: huh07:21
mtaylorspiv: repeatable for me at the moment07:21
spivmtaylor: ooh, good.07:21
mtaylorspiv: I have a copy of that branch on another machine, so I could re-push - but I thought I'd leave it there for you guys :)07:21
spivmtaylor: I think there's an unsolved bug about that at the moment, IIRC it's stalled due to not being able to reproduce07:21
mtaylorspiv: yay! maybe I'll be helpful then :)07:22
spivhttps://bugs.edge.launchpad.net/bzr/+bug/43762607:22
ubottuLaunchpad bug 437626 in bzr "exceptions.AssertionError: second push failed to complete a fetch set" [Undecided,New]07:22
mtaylorhey look at that07:22
spivmtaylor: if you can provide something along the lines of tarballs and a recipe to reproduce with them I will be very grateful!07:23
mtaylorspiv: you want me to tar up my local repo .bzr ? lemme try to see if that does it07:24
spivmtaylor: yeah, please do07:24
Peng_Somebody should mark the new bug as a dupe, then, no?07:24
mtaylorPeng_: yeah... I can do that07:24
spivPeng_: probably, I haven't seen it yet..07:24
spivActually,07:25
spivWell, I guess it's probably the same bug, but it's not certain.07:25
spivBut I note that mtaylors' bug report only involves inventory records, which *might* mean it's a different issue.  I guess it's easy to unmark it as a dupe later if necessary.07:26
mtaylorspiv: shit. sorry. I have altered my local repo already07:27
spivmtaylor: that's ok07:28
spivmtaylor: can you still reproduce?07:28
mtaylorspiv: I branched a different branch, which I'm guessing filled in something07:28
mtaylorspiv: nope07:28
spivmtaylor: if not, a tarbll will still be handy07:28
mtaylork. well, I can give you that07:28
spivmtaylor: along with the details of the last change you made to it.07:28
spivChances are I can take out the most recent pack file with some simple surgery and get it back to the problematic state.07:29
mtaylorspiv: last thing I did was "bzr branch lp:drizzle/build fix-include-issues"07:29
mtaylorwhich is the only repo operation I did on it since the problem was reproducable07:29
spivBut it's also interesting to know that it's so easy to lose the state that triggers the bug.07:29
vilahi all07:32
phretorhi, how do I branch a specific revision? For instance when I bzr branch lp:django-modeltranslation I always get the latest stable branch rather than the trunk.08:29
happyaronhi, I got Format <RepositoryFormatKnit1> for file:///home/aron/main/.bzr/ is deprecated - please use 'bzr upgrade' to get better performance when checkout a branch, what's this mean?09:01
Peng_happyaron: Exactly what it says.09:02
Peng_happyaron: /home/aron/main/ is using an old, slow, inefficient repository format. Upgrading will make things faster and use less disk space.09:03
happyaronPeng_: so run "bzr upgrade"? but this will only effect in my local copy I think09:03
Peng_happyaron: What version of bzr are you on?09:04
happyaronPeng_: I have 1.13.1 installed09:04
* happyaron on my box09:05
Peng_Ah. Uh. Err. If you were on 2.0, by default "bzr upgrade" would upgrade to a format that you can't downgrade back to RepositoryFormatKnit1 from, but that's not the case in 1.13.1.09:06
Peng_So, sure, upgrade, if you don't need your repo to be compatible with really old (<0.92) bzr versions. Take a backup first, of course, and run "bzr check".09:07
Peng_And yes, it would only upgrade your local copy. Perhaps the remote copy already has been upgraded. If not, you can go and upgrade it too.09:08
happyaronPeng_: how to upgrade the remote one?09:08
Peng_Also.. 1.13.1 is rather old. You might want to upgrade to a newer version. That'll offer even faster and more disk-efficient formats, too.09:08
happyaronPeng_: the branch is hosted on launchpad09:08
Peng_happyaron: "bzr upgrade bzr+ssh://..."09:09
Peng_happyaron: It won't be very fast, but it'll work fine.09:09
happyaronoh09:09
happyaronI know, I will first upgrade my bzr package, then run check, and finally upgrade the format09:09
happyaronPeng_: thanks09:09
Peng_happyaron: Sounds good. Like I said, though, if you upgrade to 2.0, by default "bzr upgrade" will switch to a format that you can't downgrade back to RepositoryFormatKnit1 from.09:10
Peng_Not that there's anything wrong with that, unless you have a really ancient bzr install somewhere.09:10
Peng_See http://doc.bazaar-vcs.org/latest/en/upgrade-guide/index.html about that.09:11
happyaronPeng_: so if I upgrade the one using a 2.0 version, will it accessable for those who still run like 1.13?09:11
Peng_happyaron: By default, 2.0 uses the 2a disk format, which was only added in, uhh, 1.17, IIRC. Maybe 1.18.09:12
Peng_happyaron: You could use an older format if you need to, such as 1.9.09:12
happyaronPeng_: oh09:12
Peng_It'd still be much better than the one you're currently on. Just not as awesome as 2a.09:12
happyaronPeng_: thanks09:13
Peng_FWIW, even if you do upgrade to 2a, you can downgrade it back down to 1.9-rich-root (added in 1.9) or rich-root-pack (added in 1.0).09:17
happyaronoh09:18
Peng_I suck at explaining things. Upgrading to a rich-root format like 2a is a bit inconvenient (particularly if a lot of other people have copies of your branches), but not a big deal. The upgrade guide I linked to goes into more detail.09:27
Peng_(FYI, rich-root formats contain a bit more meta data. Specifically, the root directory of the branch gets a file ID like all other directories do. It's not that important for most uses, but once you upgrade to a rich format, you can't just downgrade to a non-rich format again, throwing out that information.)09:28
happyaronPeng_: I am now upgrading it to the 2a format since this branch wasn't used by more than 5 persions, I will notify them (we were blaming the low speed, hope this can help)09:29
Peng_happyaron: It will. 2a rocks!09:29
happyaronfreeflying: :)09:30
* Peng_ goes /away09:33
* igc dinner09:56
bialixhello all09:57
awilkinsjoin : after you join a subtree, can you  continue to pull revisions from it's original branch... particularly, I'm thinking of trees derived from SVN branches10:42
* awilkins is about to try this anyway10:42
awilkinsNeato, that works really well10:46
awilkinsI'm guessing that pushing it to the SVN repo would be a bit of a disaster though10:47
jmlhmm11:42
tmartinHi there, I'm an engineering student and I'm starting a computing project with two other people. We could do with a some sort of (very basic) distributed revision control. Is Bazaar more or less what I'm looking for?12:16
jelmerigc: I've pushed the updated subvertpy12:16
jelmerigc: (including bin/subvertpy-fast-export.py)12:16
Peng_tmartin: Those aren't very complicated requirements, so many DVCSes would work, including Bazaar.12:18
Peng_tmartin: Bazaar has the advantage of working over plain old SFTP or (god forbid) FTP, though.12:18
tmartinPeng_:  cool. The reason I'm keen on Bazaar is that the other two people I'm working with aren't familiar with version control, so it's useful that the clients are the same across platforms so I can talk them through it12:19
Peng_Well, hg has that advantage too.12:20
tmartinhg?12:20
tmartinah, mercury12:20
Peng_Well, the VCS is called "Mercurial", but yes.12:20
Peng_Erm. I am a bzr proponent, but it's not the only good VCS, and which one you like best is a personal thing.12:23
Peng_me sucks at advertising. :P12:23
bialixtmartin: bzr has very good giu12:23
bialixgui12:23
bialixbzr-explorer12:23
bialixif it matters12:23
tmartinMy main issue is with hosting. I can't host myself because I'm behind a NAT that I can't forward ports through (we're just using the leftover Internet in our flat from the last tenants until the new line rental comes through) so I need some project hosting. Using the Bazaar hosting for a small university project wouldn't be considered abuse of the service, would it?12:24
Peng_...Is it a software project?12:25
bob2s/a/a free/12:26
tmartinit's definitely a software project. It's of dubious use to anyone but us. Basically it models the performance of a Rover 826 accelerating to 100 kph subject to various conditions12:28
SamB_XPbut is it free software?12:29
tmartinAt the moment it's as-is, but yeah, I can BSD it if I need to12:29
bialixtmartin: you can use `bzr send` command to send new revisions via e-mail. in this case you won't need separate hosting12:32
bialixalthough it can be a bit tedious12:32
tmartinbialix: Perfect!12:32
tmartinno, it won't be12:32
tmartinIt's such a ridiculously small project12:32
bialixtmartin: then you need to have one reference branch and one working branch and create bundle to send against reference branch12:33
tmartinbialix: you've lost me a bit there, hang on, i'm looking it up in the manual12:33
bialixthere is nothing in manual12:33
bialix`bzr send` require reference branch to produce valid output12:34
bialixyour reference branch should be equal to other people unupdated branch12:34
tmartinbialix: okay, i think that's clear12:35
bialix`bzr send` automatically determines then what revision missing based on the info from reference branch12:36
bialixthat's why it can be tedious12:36
bialixmaybe using Launchpad.net will be much simpler solution12:37
bialixjust set free licenseon your code12:37
SamB_XPlike the MIT one12:37
bialixor Apache 212:37
SamB_XPit's nicer than BSD because you don't have any blanks to fill in, I believe12:37
bialixnew BSD does not require any blanks, IMO but IANAL12:38
Peng_MIT is still shorter.12:38
* bialix nods12:38
Peng_Besides, we all know MIT is cooler than Berkeley. :P12:39
bialixthis tiny details is out of understanding of non-US guy like me12:41
SamB_XPI'm not sure MIT really is ;-P12:43
=== tonyyarusso is now known as Guest93713
Peng_I was just kidding anyway.12:43
SamB_XPI suppose it may depend on where your allegience lies: Lisp, or *nix12:43
SamB_XPare you in the "worse is better" camp, or the "oops we never got around to adding syntax" camp?12:44
SamB_XP... though I guess MIT did make X, but then again that might just be a reason to hate them ;-P12:45
Peng_Well, MIT has Clocky, the alarm clock that rolls away from you, and Berkeley has, what, LSD?12:46
* bialix wonders why fullermd does not say anything yet12:46
SamB_XPis that because MIT is so demanding you would oversleep without a clock that evades you?12:46
Peng_But Berkeley is so demanding you need drugs. :D12:47
fullermdHmmwhat?  Sorry, I was off doing LSD...12:50
fullermdI long ago developed remarkable agility while asleep.  I don't think it would be very easy for an alarm clock to evade me...12:52
Peng_The only thing I can do while asleep is drool. :(12:53
SamB_XPhmm. I can sleep12:54
SamB_XPand have strange dreams12:54
fullermdI had an alarm clock in college that I measured at around 145dB/1 meter.12:54
fullermdIt worked, in a roundable way.  It woke up my whole hall, who then got the RA to open my door and woke me up.12:55
Peng_That causes hearing damage!12:55
fullermdOnce, famously, by picking me up, carrying me out of the dorm, down the hill, and throwing me in the lake.12:55
SamB_XPfullermd: roundabout, you mean12:55
fullermdI woke up about the time I hit the water.  I guess I was kinda tired or something.12:55
SamB_XPthat's an understatement ...12:56
Peng_You're lucky you woke up instead of drowning. :\12:56
SamB_XPI hope you didn't have any 7:00 classes12:56
fullermdOh, I'm a good swimmer.  I can probably do that in my sleep too   :p12:56
fullermdAnyway, it was college; if you're not exhausted, you're doing it wrong, right?12:56
fullermd7:00 classes are easy.  You just stay up late for 'em.12:56
Peng_I once slept through a fire alarm (no fire; it was broken), but I have no problems with my quiet alarm clock.12:57
SamB_XPfullermd: I meant 7:00 AM12:58
fullermdSamB_XP: So did I   :p12:58
SamB_XPoh12:58
SamB_XPwhat if you have OTHER classes that day?12:58
fullermdWell, I went a couple months sleeping 4 hours a night, on Tue and Fri...   I made it to all my classes, though it's possible I might not have been entirely lucid on occasion.12:59
fullermd(but then, it's _me_.  I'm not sure you could tell the difference anyway.)13:00
SamB_XPmeaning you're never sane ?13:02
fullermdSanity is for the unimaginative.13:03
SamB_XPyeah, it does seem overrated ;-P13:03
fullermdAnyway, back to only vaguely off-topic, the MIT license and the 2-claues BSD license are isomorphic, so that's a matter of taste.  3-clause BSD is slightly more restrictive.13:06
fullermd... and the main reason to choose a 4-clause is to tick rms off   :p13:06
SamB_XPsadly it will also tick a lot of others off if they for some reason end up wanting to combine your software with something that's under the GPL ...13:08
fullermdTheir own fault for picking such a B&D license  :p13:08
SamB_XPthey might not have written that part13:08
Peng_...ISC! :D13:08
fullermdWe should write an Escher license, granting all rights to users in a 4-dimensional space.13:10
SamB_XPor on a mobius strip?13:11
Peng_The ISC license is nice. It's equivalent to 2-clause BSD, but shorter. http://en.wikipedia.org/wiki/ISC_license13:12
bob2...from the Internet Systems Consortium, or NAMBLA...13:14
=== menesis1 is now known as menesis
Torneis the right syntax for a password for svn:// repo just scheme=svn ?13:33
Torneif i put my credentials for this svn repo in authentication.conf and try to push, bzr-svn dies with TypeError: password should be string13:34
Torneit works if i just let it prompt me for it13:34
bob2if the svn command line tool caches it, I belive bzr-svn will pick that up13:35
jelmerTorne: Sounds like a bug in bzr-svn13:35
Tornebob2: i've never touched this one with actual svn, so i don't have it stored there :)13:35
jelmerTorne: please file a bug and include the backtrace13:35
jelmerwith a bit of luck we should be able to fix it for the 1.0.1 release13:36
Tornejelmer: ok13:36
Tornejelmer: submitted, https://bugs.launchpad.net/bzr-svn/+bug/45212113:40
ubottuLaunchpad bug 452121 in bzr-svn "Putting svn password in authentication.conf doesn't work" [Undecided,New]13:40
jelmerTorne: thanks13:40
TorneI *nearly* copypasted my password into the report. :)13:40
jelmerheh13:41
Tornewhile i'm here: bzr-svn is fantastic other than that :)13:42
Tornei've just never had to actually push before ;)13:42
jelmercool, great to hear :-)13:44
Torneanyway, bye for now ;)13:44
bialixspiv is here?13:49
bialixspiv: when you'll back here: please comment somehow on bug #43038213:53
ubottuLaunchpad bug 430382 in qbzr "qcommit crashes during Cancel" [High,Confirmed] https://launchpad.net/bugs/43038213:53
=== mrevell-lunch is now known as mrevell
jelmerjam: If you have time, any chance you could have a quick look at my lp:~jelmer/bzr/foreign-tests1 branch and see if the way the tests are set up is ood?14:17
awilkinsOod? http://tardis.wikia.com/wiki/File:Ood.jpg   (joke)14:21
jelmer*good14:21
jelmerawilkins: :-)14:22
idnarPeng_: the thing I find stupid about all of those licenses is that the DISCLAIMER OF WARRANTY WHICH IS IN ALL CAPS FOR SOME BIZARRE REASON is longer than the actual license14:30
fullermdWell, that's easily solved, just make the actual license part 10 or 15 pages long.  Then it's shorter   :p14:37
=== tchan1 is now known as tchan
gnomefreakn/win 314:46
Pegasus_RPGhowdy14:51
=== jblount is now known as jblount-bot
=== jblount-bot is now known as jblount
AnteruHi15:12
AnteruProbably one for the FAQ, but I cannot find it: How do I remove a local branch? Just deleting the folder works -- I wonder whether there are any ill effects of that?15:13
Anterui.e. I have /trunk, /feature-branch locally, and I merged /feature-branch back into trunk, so I don't need it15:14
awilkinsAnteru: No ill effects, if you merged it the revisions are all somewhere else. If it's in a shared repo, the revisions don't evaporate, the branch is a pointer.15:44
Anteruok, cool, thanks!15:45
bialixfullermd: ping?15:47
=== e-jat is now known as norly
=== mfer is now known as mfer-lunch
jamjelmer: I'll try to get to the review. Sorry about the delay16:29
jam /cry, wordpress doesn't auto-save your document, and it crashed while trying to insert and move an image...16:29
jamback to blogger for me....16:29
jamI liked parts of the interface better, but crashing w/ no autosave is just out16:30
jamheck, this post may never be written now...16:31
bialixjam: blogger has feature to send post via e-mail16:32
jamI was writing up a fairly involved post about what it took to release 2.0.1 and 2.1.0b116:33
bialixbut I'm unable to send images with my post16:33
jamI got things mostly written, was inserting an image, tried to move it....16:33
jamand then firefox hung with 100% cpu16:33
bialixbad16:33
bialixI like your posts16:33
jamw/ blogger, at least it would have saved for me16:34
bialixdo you have twitter account?16:34
jamperhaps WP has a ^S16:34
jamI do not have twitter16:34
bialixnp16:34
jamseems... silly to me so far16:34
Anteruwp has autosave, at least my installation saves every 5 minutes or so16:36
jmlwhere's my bzr-backed wiki17:11
jmlit's almost 2010 and I have no flying cars, no hoverboards, no pony and no bazaar-backed wiki17:12
Taktrac?17:12
beunojml, you mean ikiwiki?17:12
jmlbeuno, maybe I do.17:12
beunohttp://ikiwiki.info/17:13
beunoI think it's in perl though17:13
jamI know people have worked on a bzr back end17:26
LarstiQjames_w (and myself very minimally)17:27
LarstiQof course, it has a svn and git backend, so..17:27
awilkinsWas there a plugin that pushes the revisions AND the current working tree to another machine?17:27
LarstiQjml: there is als Hatta, which is hg backed17:28
james_wawilkins: push-and-update?17:30
james_wI can't remember now if the bzr backend for ikiwiki was merged17:30
awilkinsjames_w: Not quite, I have uncommitted state that I want to end up in the target17:30
jamawilkins: rsync ?17:30
awilkinsjam: I was just using a tree-comparision client :)17:31
jampushing uncommitted changes isn't something that is likely to be supported 'out-of-the-box' for us17:31
jamif you want them pushed, why not commit and push ?17:31
jam(why is it important that they not be committed ?)17:32
=== beuno is now known as beuno-lunch
jmlLarstiQ, yeah, I saw a talk about Hatta at EuroPython, you probably did too17:34
LarstiQjml: yup17:36
* LarstiQ forgot there was lightning talk about it17:36
awilkinsjam: Just my inner voice saying "no, don't push incomplete changes!"17:37
awilkinsjam: Or commit them, rather17:37
LarstiQawilkins: yet you want to deploy them?17:37
awilkinsLarstiQ: It's not deployment, it's moving workstation17:38
awilkinsI suppose what I really want is shelve-and-move-to-another-machine17:38
LarstiQawilkins: ah, yes17:39
LarstiQawilkins: or just diff, rsync, apply17:39
awilkinsShelves are basically orphaned revisions (as I understand them now)17:39
jamawilkins: I don't think they are put into the repo, but otherwise, yeah17:39
Keybukso you know those archive inconsistencies I keep getting17:50
Keybuktheory: they're ghost revisions17:50
Keybukie. where I've overwritten one head with another17:50
jamawilkins: bzr commit; bzr push; bzr uncommit...17:50
awilkinsjam: More ghost revisions :-)17:51
jamawilkins: those aren't ghosts17:51
jamghosts are ancestors we don't have17:51
Keybukjam: what are those?17:51
jamthose are just heads that aren't in a branch17:51
Keybukbzr commit; bzr push; bzr uncommit; bzr commit; bzr push --overwrite17:51
awilkinsAh, loose heads17:51
Peng_Keybuk: A ghost is a revision in the branch's history, except we don't actually have a copy of that revision.17:52
Peng_Or something!17:52
Keybukhmm, actually I'm not sure that's right17:52
jamPeng_: something spookier I believe :)17:52
Keybukso I have the following error on push now17:52
jamnot sure how...17:52
Keybukinconsistent details in skipped record: ('scott@netsplit.com-20091014154035-x6fdt088smfxy63j',) ('518 291 0 266', ((('scott@netsplit.com-20091014154020-3j2udgsm15lbdfm4',),),)) ('93400 238 0 266', ([('scott@netsplit.com-20091014154020-3j2udgsm15lbdfm4',)],))17:52
Keybukbut the revision ids on each side *do* match17:52
Keybukwhat's more interesting is that each of the revisions were made *after* I upgraded to bzr 2.017:53
jamKeybuk: the warning there is saying that we have revision ids which claim to match, but *content* which claims to differ17:53
Keybukjam: isn't that bad?17:53
jamKeybuk: potentially, though abentley claims that there were ways of getting into this situation that weren't terribly17:53
jamterrible17:53
KeybukI'm getting into this situation with ordinary use of bzr17:53
jamhence why he made it a warning when it used to be an error17:53
KeybukI'm really worried that bzr 2.0 has some *serious* data corruption issues now17:54
jamthe way of triggering it that he knew of17:54
jamwas that launchpad had bad history17:54
jamand different people had different *amounts* of bad history17:54
Keybukthis is on *new* revisions17:54
jamKeybuk: right, but if you base a commit off of X, and someone else sees that as X'17:54
jamthe new commits can disagree17:54
Keybukbut that hasn't happened here17:54
Keybukthis is just an archive17:54
Keybukone is the LP push of the other17:55
Keybukand bzr is throwing up all sorts of errors with it17:55
jamKeybuk: so to start with, try to get a tarball snapshot of the state, so that one of us can take a look at it17:55
Keybukjam: it's on LP17:55
KeybukI can't login to that and give you a tarball17:55
KeybukI suspect you can17:55
jamKeybuk: I don't have access to your branches17:55
jamyou can use "lftp" to mirror the remote to local17:56
jamand then tarball that17:56
Keybukafaict it's the LP-hosted branch that has the issues17:56
jamKeybuk: right, and I can only see the "LP-mirror" of your branch17:56
Keybukgot an example lftp incantation?17:56
=== dorins_ is now known as dorins
jamKeybuk: I think "lftp -c mirror sftp://bazaar.launchpad.net/~keybuk/... local"17:57
jamis what you can use to get an exact copy of the launchpad branches17:57
Keybukok, grabbing that down17:57
Keybukreconcile on this fails17:59
Keybukhttp://people.canonical.com/~scott/ubuntu-core-dev--upstart--ubuntu.tar.gz18:00
Keybukthere you go18:00
Keybukthat's the .bzr18:00
jamKeybuk: it says it is stacked on "~scott/upstart/trunk" can I get a copy of that as well?18:02
Keybukyup18:02
Keybukthat one happens to fail reconcile too iirc18:02
jfroy|workverterok: ping18:03
Keybuk(this is somewhat larger, so give me a few minutes for it :p)18:03
verterokjfroy|work: pong18:04
jfroy|workI just made a few fixes to my packaging branch18:04
jfroy|workincluding a critical fix for an issue I just found in the current distribution / build.py script18:04
jfroy|workthat would replace /usr/local/share/man/man1 with the bzr man page (instead of installing it into that directory)18:05
jfroy|workfortunately, Installer is smart enough to move man1 to "man1 1", so I also added a pre-install script to the distro to fix up that mess.18:05
jfroy|workAnyways, I merged your branch into mine, made the fixes and pushed to LP.18:05
jfroy|workTrying to find how to send you a merge request...18:06
jamKeybuk: so it is possible, that the above warning is bogus. I have to dig into it, but I'm noticing that one side says:18:06
jam(((revid,),),)18:06
jamand the other side says18:06
jam([(revid,)],)18:06
jam(one side has a tuple, the other has a list)18:06
Keybukjam: why does reconcile fail on that branch?18:06
jamit is possible that it is comparing the objects and failing.18:07
verterokjfroy|work: oh, nice!18:07
jamKeybuk: I haven't gotten that far yet. And certainly there is a bug if [] vs () was triggering a warning18:07
verterokjfroy|work: as there is no project we can't do merge proposals18:07
Keybukjam: the branch it's stacked on seems to not fail reconcile fwiw18:07
jfroy|workverterok: ahhh, that explains a lot :p18:07
Keybukjust uploading for you atm18:07
stianhji just installed Bazaar 2.0.0.2 on a Vista 64-bit machine. Running bzr st in an existing bzr repo gives this: "No module named commands" and "Unable to load plugin u'explorer' from u'C:/Program Files/ .. etc'. Bazaar Explorer doesn't seem to be working either. Any ideas?18:07
jamthx18:07
jfroy|workjust merge lp:~jeanfrancois.roy/+junk/SnowLeopard-package then18:07
jamstianhj: you might try "bzr -Derror status"18:08
jamit sounds like it is unable to load bzrlib18:08
jamwhich is fairly serious18:08
jamI'm wondering about a permissions issue18:08
jfroy|workI was going to submit Bazaar-2.0.0-518:08
jamdo you have any other copies of bazaar?18:08
jfroy|workbut with 2.0.1 around then corner, I guess we could wait for that.18:08
jamjfroy|work: 2.0.1 has 'gone gold'18:09
jfroy|workjam: my point exactly18:09
jamso feel free to package Bazaar-2.0.1-118:09
jfroy|workverterok: want to do it?18:09
jamthe tarballs should be uploaded, etc.18:09
jamalso, packaging Bazaar-2.1.0b1-1.pkg would be nice18:09
verterokjfroy|work: the merge or the build? :)18:09
jfroy|workboth :p18:10
verterokjfroy|work: :)18:10
jfroy|workwell you *need* to merge18:10
jfroy|worktrashing man1 is *bad*18:10
stianhjjam: http://pastebin.org/4604118:10
jfroy|workOh, the distro version is in config.py18:10
jfroy|work(I added it)18:10
verterokjfroy|work: I'll merge it in my next boot into OS X, proably to build 10.5 installer ;)18:10
jfroy|workI guess I can build the 10.6 one18:10
jfroy|workso, let's see18:11
jfroy|workhow would I get the 2.0.1 sources?18:11
stianhjjam: bzrlib seems to be the problem I guess18:11
jfroy|workerm, I mean, w/r to your auto-fetch thing18:11
verterokjfroy|work: please, I don't have 10.6 and I'm not sure if it will work if I build it against non system python18:11
jfroy|workverterok: it won't18:11
jamstianhj: so it would look like 'bzr' itself is working, but that explorer is failing to find something18:11
verterokjfroy|work: PYTHONPATH=. python tools/fecth-external.py -p18:12
jamspecifically, it is looking for: from bzrlib.plugins.qbzr.lib.commands import (18:12
jfroy|workverterok: oh, I moved fetch-external.py out of tools :p18:12
jamso it is *qbzr* which it isn't finding18:12
verterokjfroy|work: heh, ok18:12
verterokjfroy|work: so, python fecth-external.py -p  :)18:12
jfroy|workyeah basically18:12
verterok*fetch-external.py -p18:12
jamstianhj: can you try just doing "bzr qbrowse" ?18:12
jamor "bzr qlog" ?18:13
jfroy|workI just tweaked config.py to get 2.0.118:13
verterokjfroy|work: and you can get the docs too, I don't remember the switch18:13
jfroy|workI'll check the plug-ins and update them as well18:13
jfroy|workI don't bundle the docs in the core package18:13
verterokjfroy|work: right, I missed that...update config, run the script18:13
jfroy|workbut I saw the o[tion18:13
jfroy|work*option18:13
verterokjfroy|work: ok18:13
stianhjjam: yes, bzr seems to be working. qbrowse seems to be working, as well as qdiff, qcommit, etc18:14
stianhjqlog as well18:15
jamstianhj: and I assume that doing "bzr explorer ." is failing?18:15
stianhjno wait, qlog doesn't work18:15
stianhjjam: i get a bunch of errors on the console about drawDisplay, and my commit messages aren't showing18:16
jfroy|workoh well, the tar.gz isn't up yet :p18:16
jfroy|workor the URL is wrong, lol18:16
verterokjfroy|work: you need to update the url in the config too18:16
jamKeybuk: so I don't know why 'reconcile' is failing, but it does look like the warning is triggering because of () != []. I don't quite understand how we are getting a list there, though. As we generally always use tuples.18:16
stianhjjam: the commit messages in the list that is. clicking on items gives me all the info at the bottom of the screen18:16
jfroy|workverterok: I did, with a wrong one ;p18:16
jamSo bug #1 is that the comparison is giving you a bogus warning.18:16
ubottuhttps://bugs.launchpad.net/ubuntu/+bug/1 (Timeout)18:16
verterokjfroy|work: heh18:17
jfroy|workworked fine with the actual URL.18:17
jamstianhj: do you know if you have another copy of 'qbzr' installed? Say in your $APPDATA folder?18:17
jamYou can try "bzr plugins -v" to help figure it out18:17
Keybukhttp://people.canonical.com/~scott/scott--upstart--trunk.tar.gz18:17
Keybukjam: that's the stacked branch18:17
Keybukor the under-stacked18:17
Keybukdunno the term there ;)18:18
jamKeybuk: stacked vs stacked-on18:18
jfroy|workverterok: pushed the update for bzr 2.0.1 to my branch18:19
verterokjfroy|work: ok18:19
stianhjjam: appdata only has one bazaar folder that is from the 2.0 installation. Just before installing Bzr 2.0.0.2 I uninstalled Bzr 1.7.1 and rebooted.18:19
stianhjjam: was QBzr a part of Bzr 1.7.1 or did I install it seperately?18:20
jamstianhj: 1.7 ? probably installed separately. "bzr plugins -v" should show you what qbzr we are finding18:21
=== mfer-lunch is now known as mfer
stianhjjam: qbzr is version 0.9.3, and is in $APPDATA\Bazaar\2.0\plugins\qbzr. So doesn't seem to be any conflicts18:22
stianhji think18:22
=== beuno-lunch is now known as beuno
stianhjjam: here's the error from qlog http://pastebin.org/4604718:27
mtaylorcan a shared repo dir be somewhere other than in a directory ancestor and specified explicitly?18:28
jamstianhj: we bundle qbzr 0.14.3 and it should be in C:/Program Files/Bazaar/...18:30
jammtaylor: no18:30
jamthough you could use a lightweight checkout18:30
jametc18:30
mtaylorjam: k. that's what I thought, but I thought I'd check18:31
jamstianhj: so try moving the qbzr in "$APPDATA/Bazaar/2.0/plugins/" to another directory18:31
Keybukhttp://people.canonical.com/~scott/scott--upstart--0.6.tar.gz18:37
Keybukjam: ^ that one also fails reconcile, and may be stacked on the same branch?18:37
Keybukrandom thought, could the [] vs () thing be across the stack point18:37
jamKeybuk: it *is* stacked, I'll let you know the rest as I get a chance to investigate18:38
dashi'm trying to convert twisted's bzr mirror to 2a18:39
dashI initially used bzr upgrade18:40
dashbut when that proved slow, I decided to just do a fresh svn import18:40
dashproblem is, bzr consumes about 10G of memory when doing so18:40
dashand this box only has 6G of RAM. :)18:40
dashso it's really unable to make any headway18:41
LarstiQdash: did you talk about that with jelmer?18:41
jamKeybuk: so I see reconcile fail @18:41
jam    source_parents = file_id_parent_map[key]18:41
jamKeyError: ('test_job.c-20060802025841-69d13b49cc35d5ec', 'scott@netsplit.com-20090709110153-7dcfrdmjwojak3ud')18:41
dashLarstiQ: apparently I am never on IRC at the same time as him :)18:41
jamsound about like what you are seeing?18:41
LarstiQdash: shoot him a mail?18:43
Keybukjam: that looks right yes18:44
dashLarstiQ: Oh email18:44
dashLarstiQ: I guess that's still around.18:44
jamKeybuk: so my initial impression.... is that something about the upstart-0.6 branch thinks that 'test_job.c' was modified in 20090718:45
jamhowever, that revision is not in the stacked branch18:45
jamso I assume it should be in trunk18:45
jam(revision-info says rev 1173)18:45
jammy quick guess is that whatever source upstart-0.6 was created from18:45
jamdifferent from the source that '~scott/upstart/trunk' was created from18:46
LarstiQdash: he has an identi.ca account if you prefer :)18:46
jam*specifically* about the revision 20090718:46
dashLarstiQ: Heh hee.18:46
Keybukjam: let me check the histories18:47
Keybukjam: the branches should be identical up to -r120418:48
Keybuk1205 in both branches is where they diverge18:48
Keybuk2009/08/0218:48
Keybukthat fits with my zsh history as well18:49
Keybukthe last time test_job.c was changed was -r117318:49
Keybukthat was before, even, the release of 0.6.018:49
Keybukso that would have been from trunk18:49
Keybukjust to confirm, the branch point of trunk and 0.6 is well after that revision18:50
Keybukso they should be identical18:50
LarstiQKeybuk: how far back does your zsh history go?18:53
KeybukLarstiQ: I allow 1MB for it18:54
* LarstiQ already feels like SAVEHIST/HISTSIZE=50000 is a lot18:54
LarstiQKeybuk: I see18:54
Keybukyou can never have too much history18:55
Keybuk"I want the command I ran last month that did foo" :p18:56
LarstiQI entirely agree, but I'm not sure my acer ssd does ;)18:56
Keybukpah, your SSD will last just as long as a hard drive these days18:57
LarstiQnot quite :/18:57
LarstiQit's already becoming very slow18:57
LarstiQKeybuk: so yeah, rewrites is not a problem, but at this point vim writing to its swap file when I build my tex can take up to two seconds18:58
LarstiQwhich is starting to become irritating18:59
Keybukyeah, don't bother with swap on ssd18:59
Keybukit's rarely a good idea18:59
Keybukor use swap files18:59
LarstiQright18:59
* fullermd is looking forward to SSD's, in about 6 or 8 years when he comes to trust them.18:59
LarstiQsame thing goes for firefox cache etc18:59
LarstiQfullermd: I'm just waiting for trim support19:00
fullermdI'm still iffy on the longevity of SLC.  MLC is right out.19:00
dashfullermd: really? why19:01
fullermdBecause they wear way too fast.19:02
fullermd(I mean, the prices are still way high, but that's just waiting; I'm sure they'll be reasonable in a few years)19:03
fullermdBut still.  In June I retired some hard drives I bought in 1998, and they worked hard their whole life.  I have zero faith a MLC SSD will be holding data for crap at that point.19:04
fullermdThink about how flash wears; it's not like you write, and write and write and write, and one day it just *ploop* stops working suddenly.19:05
stianhjjam: deleting the $APPDATA\bazaar folder worked. Bzr Qlog works fine, as well as Bzr Explorer, and I get no error messages in the console. Thanks19:05
jamstianhj: always happy to help19:06
jamfullermd: well they load balance while they are wearing19:06
fullermdEvery write reduces the time the charge holds, so you're in trouble long before they "wear out" totally.19:07
Keybukfullermd: that's the same for a hard drive though ;)19:07
fullermdStrictly speaking, yes, but there are orders of magnitude difference.  It's not technically a different of kind, but it's practically equivalent.19:08
=== Guest93713 is now known as tonyyarusso
jamI thought http://www.anandtech.com/storage/showdoc.aspx?i=3631 was a pretty good article on it.19:09
jamhttp://www.anandtech.com/storage/showdoc.aspx?i=3631&p=6 has a specific focus on wear leveling19:09
jamwhich is "writing 7GB of data to disk per day will take ~986 years to wear out all 10k cycles"19:09
jamso even if that is off by 20x or so19:10
jamit still has a reasonable safety margin19:10
fullermdI'm aware of the claims made.  I don't buy them yet, by quite a ways.19:10
jamthe main thing for me was that I could get a 250GB drive as a "free upgrade" or pay $300 for an 80GB SSD for my laptop19:11
jamat $1k for the laptop, 30% for the hardrive was a bit more than I wanted to spend19:11
jamthough sometimes I sure wish I had...19:12
jamnote, though, that I don't expect my laptop to last me 10 years anyway.19:12
fullermdWell, a laptop would be a different story   :p19:12
fullermdI don't expect that much longevity, don't put important data on it, and laptop drives are scary crap in the first place.19:12
jamfullermd: besides, if you really cared, you'd put it all on tape with a lifetime of 30 years and a rewrite of 1M cycles :)19:13
fullermdBut I've got Velociraptors in this workstation, and SCSI drives for the years before that.  More IOPS would be nice, but I don't spend all that much time waiting on them.19:13
fullermdMan, I've used *WAY* too much tape to trust a 30 year figure for that  :p19:13
jamfullermd: well it depends if you put it in controlled storage19:14
jamor leave it on your desk under the coffee cup19:14
fullermdYeah, I don't have quite enough free cash to build a climate controlled storage closet for backup tapes in my house...19:15
fullermdMaybe after I win the lottery.19:15
LarstiQ:)19:15
LarstiQfullermd: mine is, of course, a laptop19:16
jamfullermd: I would think a cardboard box full of LTO tapes would still out-last your raptors :)19:16
jamLarstiQ: mine is launchpad19:16
jam...19:16
fullermdUnless you've got a 7 digit backup budget, hard drives are the best and most reliable backup means around these days.19:16
fullermdI wouldn't.  I don't have faith in tapes lasting more than a year or two (never mind the relative costs of tape vs. HDD)19:17
Peng_Was this the channel that suggested beaming your data into space, then inventing FTL travel to go record the signal whenever you need it?19:18
fullermdWhat a terrible idea.  Who wants to look at a bunch of red-shifted pr0n?19:18
* Peng_ wonders why pushing the last 2 revs of bzr.dev took 1100+ KB of data transfer.19:21
luksindexes?19:23
jamPeng_: the last 2 revs probably include the merges from the releases I made19:25
jamso it is a bunch of changes to NEWS, and probably some non-trivial amount of history19:25
jfroy|workverterok: pushed another revision to update the package content and readmes :|19:29
Peng_jam: Duh, you're right. jam++. Pulling them was quick because I already had most of the revisions in the repo from the 2.0 etc. branches, but the repo I pushed to didn't.19:30
verterokjfroy|work: ok, I'll merge it tonigh. thanks!19:30
Peng_Although it was still barely 300 KB of packs+indices.19:30
jamjelmer: ping if you are around. 'lp:bzr-rewrite' has a tag for 'bzr-rewrite-0.5.4' but that revision is not in the ancestry of "bzr branch lp:bzr-rewrite"19:49
jamwhich points over to your http://people.samba.org branches19:49
jamjfroy|work: are you working on 2.1.0b1 packages?19:51
jfroy|workNo19:51
jfroy|workWell, not today.19:51
jfroy|workI have very limited time for doing packaging...19:51
jfroy|work(not my day job, etc.)19:51
jfroy|workI'll try to get around to it19:52
jamLarstiQ / jelmer: Where is the 'bzr.debian.org' branches?19:56
=== oubiwann_ is now known as oubiwann
LarstiQjam: http://bzr.debian.org/pkg-bazaar/ you mean?19:56
jamprobably19:57
jamthanks19:57
jammostly I'm trying to find the 0.5.4 revision19:57
jamwhich doesn't seem to exist anywhere I can get to yet19:57
jam(I'm guessing jelmer merged it to trunk, but forgot to commit before pushing)19:57
jamit seems his "unstable" branch also has the tag but not the revision... :(20:01
LarstiQjam: and his samba.org branches?20:09
jamLarstiQ: well, the official trunk doesn't have it20:10
jamare there other samba branches to check?20:10
LarstiQah no, sorry20:11
jamanyway, for now I'll just downgrade to 0.5.3 since I can find that one20:13
jambrb, rebooting20:13
mathepicFor fixing a small bug (which is more of a feature request), for NEWS, do I put the bugfix under 2.1.0 or 2.0.2?20:15
=== sdboyer_ is now known as sdboyer
Peng_jam: <33321:20
Peng_(I hope that didn't make his computer beep.)21:21
jamPeng_: of course it did, but why the love?21:21
Peng_jam: "(jam) Start using StaticTuple as part of the btree_index parsing code."21:22
Peng_Plus, why not? Love is fun!21:22
=== jam changed the topic of #bzr to: Bazaar version control system | 2.0.1 and 2.1.0b1 has gone gold! start building those installers | try https://answers.launchpad.net/bzr for more help | http://bazaar-vcs.org | http://irclogs.ubuntu.com/
=== jam changed the topic of #bzr to: Bazaar version control system | 2.0.1 and 2.1.0b1 have gone gold! start building those installers | try https://answers.launchpad.net/bzr for more help | http://bazaar-vcs.org | http://irclogs.ubuntu.com/
jamPeng_: love is grand, I just figured you had a specific reason :)21:24
* Peng_ wonders how many StaticTuples Loggerhead will create.21:24
awilkinsWill that make things fast? It has C in it. Vitamin C.21:25
mwhudsonit will make things small, is the idea21:25
mwhudsonsmall is fast to some extent though21:25
jammwhudson: actually it makes things faster than smaller21:25
jamas an interesting side effect21:25
mwhudsonjam: really?21:25
mwhudsonoh right21:25
Peng_All the StaticTuples in the world wouldn't make Loggerhead "small".21:25
jammwhudson: well for "bzr branch launchpad" it made it 17% smaller and 40% faster21:25
mwhudsonoh yeah, less objects doing gc21:25
jammwhudson: right21:26
awilkinsI find the smaller you make things the more they fit in the CPU cache21:26
jamawilkins: true, but in this case it is GC overhead21:26
jamand when you have 500MB, *nothing* fits in CPU cache :)21:26
Peng_That'd be an awesome CPU.21:27
mwhudsonjam: is there any progress on ways to do branch without the whole index?21:27
awilkinsI think modern CPUs are pretty awesome anyway21:28
jam*argh* the windows installers just refuse to build...21:28
jammwhudson: even if we do it in pieces, I think we'll end up caching most of the index21:28
awilkinsBah, I deleted my win32 build VM21:28
jamhowever, last check shows that bulk of memory is in the groupcompress block caches21:28
jamw/ ~160MB in or "LRUSizeCache(50MB)"21:28
Peng_So far, peak of 110,000 tuples. Dozer doesn't see any StaticTuples.21:28
jamin our21:28
jamPeng_: you did "make" again, right?21:29
jamPeng_: and Dozer won't see StaticTuples21:29
jambecause they aren't in gc.get_objects()21:29
Peng_Oh, of course. No fun!21:29
jamjust as, I'm pretty sure, it won't see Strings21:29
jammwhudson: though I'm still concerned that Meliae shows 250MB when 'debug_memory()' shows 500MB in use.21:29
Peng_You're right, no __builtin__.str or __builtin__.int.21:30
jamPeng_: yeah, and for us, a *lot* of memory can be in strs21:30
jammwhudson: anyway, my target is to cut memory consumption to about 50% for 'bzr branch launchpad', which should be reasonably attainable21:30
jamI'm just worried that I'll cut X amount of memory, and have no clue where the rest is21:31
mwhudsonjam: still, that'd be cool21:31
jamsure21:32
jamPeng_: and we still have quite a few code paths that can be tweaked to use StaticTuple21:33
jamlike the fetch code re-converts all the StaticTuples back to regular tuples for the target repo, etc.21:33
fullermdWell, you want it cut it in half, and Meliae is showing half of the usage.  So just eliminate everything it shows, and you're done   ;)21:35
dashHm21:35
dashis is safe to delete things in .bzr/repository/obsolete_packs or do those still contain actual data21:36
jamdash: generally you can remove the files from obsolete_packs, just don't remove the directory itself21:36
dashOK21:36
dashit's just bigger than the 'packs' dir now :)21:37
jamthey contain the "previous copy", as we can't really be sure that the OS will sync things in the order that we've written them21:37
dashcool21:37
jam(if we deleted them ourselves, the OS may decide to write the 'delete' down before it writes the "and write all this data over here".)21:38
dashwell it looks like 'bzr upgrade' worked fine on a machine with a decent amount of RAM.21:38
dashfilesystems are pretty bad, yeah.21:38
jamnaoki: ping, I'm having some troubles building the win32 installers, I'm getting an error of:21:41
jam"no module named 'tbzr'"21:41
jamany ideas?21:41
jammwhudson: what is "ellipsis" ?22:01
mwhudsonjam: a total weird appendix-like useless thing22:01
jammwhudson: hm... I have a list that 1.5MB in size, and the first entry is "ellipsis" and the next two are "imp.NullImporter"...22:02
mwhudsonjam: weird22:02
mwhudsonjam: it's used by numeric22:02
mwhudsonhttp://pastebin.ubuntu.com/294223/22:02
mwhudsonjam: and, it seems, by something else!22:03
mwhudsonjam: is it sys.path_importer_cache or something?22:03
jamat the end of this list is some big strings22:03
jamI'm almost wondering if it something like a stack frame22:03
jamah... I think I did 'gc.get_objects()' in the debugger22:06
jamand it is dumping extra stuff22:06
jamprobably self refers to the local function refers to the local frame, and that makes things screwy22:06
jamnot sure ,though22:06
jammwhudson: One sucky thing about debugging memory in meliae, is that normal objects have a dict attribute, which is "in the way" between the instance and its attributes22:11
jamI'm wondering if there would be a reasonable way to collapse that structure22:11
mwhudsonjam: yeah22:11
mwhudsonyou get that when debugging via gc.get_referrents too22:11
jamespecially since most members will have one reference to a string, as the name of the member22:11
mwhudsonjam: there are probably some heuristics we could use22:11
jamand the next entry is the actual object22:11
jamwhich means you *could* recreate something nice looking22:11
jammaybe22:11
jamanyway, I *think* I'm seeing that GroupCompressBlock somehow contains a direct pointer to itself22:12
mwhudsonjam: also, when tp_traverse yields the object at tp_dictoffset in the object, you can treat that specially22:12
jamwhich is probably screwing up GC22:12
jammwhudson: interesting thought22:12
mwhudsonjam: you mean instance.attribute = instance ?22:13
jammwhudson: that is what it looks like22:13
mwhudsonjam: the gc should cope fine with that22:13
mwhudsoni guess it won't be terribly performant22:13
mwhudsonbut it shouldn't leak22:13
jamah, I see what it was22:14
jamI was getting "refs" confused with "referrers"22:14
jambecause of wrapping issues22:14
jamso it was just me22:14
mwhudson:)22:14
jammwhudson: anyway, I'd really like to get a gui on this22:14
jambut I'm not sure how to represent it22:15
jamhaving a "dot" graph that I could expand would be cool22:15
mwhudsonpypy has a pygame graph viewer22:15
jamI've looked a bit at "runsnakerun" which has a square-map stuff22:16
jamthe main problem is the cycles22:16
jamas you end up with infinite recursion which doesn't display so well :)22:16
mwhudsonwell, i'd hope a graph viewer would expect cycles really22:17
jelmerjam: bzr-rewrite tag should be fixed; sorry about that22:20
jamwell, runsnakerun is meant to track how time is spent (similar to kcachegrind), and there is  some recursion there, but not really infinite cycles :)22:21
jammwhudson: anyway, thanks for the pointer, I'll take a look22:21
mwhudsonjam: ah22:23
mwhudsonjam: it'll probably require some head scratching and hacking22:24
jammwhudson: and pygame and numpy and ...22:24
jambut I'll get there22:24
jamalso, I'm doing a checkout of pypy and it... just keeps going22:24
jamI'm only grabbing "dist" and its already at 20MB22:25
mwhudsonit's pretty heft22:25
mwhudsony22:25
mwhudsonmy svn checkout is 192 megs22:26
mwhudsonprobably has some .o files and so on in it though22:26
jammwhudson: argh.... and pygame may not even be *in* dist...22:26
jampypy/translator/tool/pygame/ isn't in my checkout yet, at least, though pypy/translator/tool/ is22:26
mwhudsonoh maybe it's an external22:26
jamdownload done, and I did set 'fully recursive'....22:27
jamhm... .../pygame isn't in trunk either22:30
jammaybe they just deleted it?22:30
jamthe mailing list entry I see is from 200422:31
jamnaoki: it is probably your recent change to setup.py that I need.... damn, out-of-order changes...22:33
Peng_Loggerhead's peak number of tuples is still over 400,000, so I'm not sure StaticTuple helped much. OTOH, RAM usage might be suspiciously low.22:36
jammwhudson: do you have a copy of it in your checkout, such that you might help point me to the correct location22:37
jam?22:37
jamPeng_: what branch are you viewing?22:37
mwhudsonjam: i can try and find it22:37
jam"bzr branch launchpad" can create 1.8M tuples22:37
Peng_jam: I'm just looking at my Loggerhead instance, which gets random traffic from Googlebot.22:39
Peng_Because I'm being completely unscientific, it's hard to say anything for sure. :\22:39
jamPeng_: so StaticTuple isn't a 'it just works' you have to go around using it... :)22:39
mwhudsonjam: probably you should ask in #pypy when europe is awake22:39
jamhowever, the Btree reader uses it, which is generally a main source of tuples22:39
jammwhudson: what is 'pyrepl' given that it is (c) you and imports pygame22:43
jamotherwise it looks like "translator/goal/translate" may be what I want22:44
jamor maybe "dotviewer" up above the 'pypy' sources22:46
Peng_I'm afraid to look at Dozer's HTML page listing all of the thousands of tuples.22:47
jammwhudson: it looks like "dotviewer.py" is a generic method for viewing .dot files, which I can easily generate22:48
Peng_OK, I stopped loading the list of tuples after 400 MB of RAM was used. :D22:58
Peng_That was about...35 MB of HTML total.22:59
Peng_I have lots of lists with tuples with revids and stuff in them, from Loggerhead's graph caches.23:05
Peng_I have lists of stuff like "('equal', 507, 510, 511, 514)". Diffs, I guess?23:08
Peng_That looks like a nice place for StaticTuple.23:08
mwhudsonjam: yeah, dotviewer23:09
mwhudsonjam: pyrepl is a command line interface that supports multiline editing23:09
jamPeng_: well, ATM StaticTuple won't accept ints, but we can change that23:13
jamand yes, both places would be good for ST23:13
Peng_FWIW, anyone else can wade through my Dozer stuff too, if you want to: http://bzr.mattnordhoff.com/loggerhead/_dozer/index23:14
Peng_Seems Dozer *is* aware of strings, when it's aware of an object referring to one.23:14
Peng_StaticTuple too.23:15
Peng_but it can't actually show any information about them.23:16
jamwell they aren't in the GC so "gc.get_referents()" returns nothing23:16
jamthough I *do* implement tp_traverse23:16
jamand meliae knows how to use that23:16
jammy system is unhappy about my 30MB dot dump :)23:17
jamno doubt having 1 object referring to *everything* doesn't help :)23:17
jamanyway, EOD23:17
jamthanks for the pointer mwhudson23:17
mwhudsonjam: np23:18
awilkinsHeh, I'm also memory optimizing on my Java stuff, must be catching23:18
Peng_A large portion of LH's tuples are just normal stuff, not torrents of data.23:18
mwhudsonPeng_: a lot of loggerheads tuples will be the merge sorted revision graph i bet23:19
mwhudsonwhich could use static tuples i guess23:20
Peng_Maybe 40%.23:20
Peng_There's a frightening amount of the "normal stuff".23:20
mwhudsonPeng_: what do you mean by that?23:20
Peng_mwhudson: There are tens of thousands of tuples with stuff like None or VfsRequest or docstrings or bits of TAL templates.23:21
Peng_mwhudson: Things like the graph are in the minority.23:21
Peng_Actually, I forgot, I stopped loading the page 4 MB before the end. So maybe things like the graph are, ehh, up to 60%?23:23
Peng_Lists, OTOH, are dominated by the revision graph.23:24
mwhudsonjam: i'm told that http://codespeak.net/svn/pypy/trunk/pypy/translator/tool/reftracker.py might be interesting23:25
mwhudsonloggerhead should use statictuple for that if it can23:25
mwhudsonit may not help much but it will certainly help and not hurt23:25
Peng_Software sure is complicated.23:27
Peng_I never really think about the _scale_ of it all.23:27
mwhudsonjam: and http://domino.research.ibm.com/comm/research_people.nsf/pages/nickmitchell.pubs.html23:27
mwhudson"Making Sense of Large Heaps"23:28
Peng_What should Loggerhead do for static tuples when used with older versions of bzr? Storing a copy of _static_tuple_py.py is actualyl pretty reasonable.23:34
Peng_s/storing/bundling/23:34
mwhudsonPeng_: yeah, that might work23:36
* Peng_ goes with that.23:43
Peng_Peng_ almost wants to go crazy and use StaticTuples *everywhere* possible.23:45
igcmorning23:47
=== oubiwann_ is now known as oubiwann
Peng_Is it just me or is "_revision_graph.keys()" a somewhat bad idea?23:56
mwhudsonPeng_: yes, probably23:57
Peng_Such a bad idea that mwhudson ran away?23:57

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