[04:16] <joako> The problem I have with bzr is it consumes too much memory. I simply wish to ¨download¨ some code. After 12mb is downloaded 225mb of RAM has been consumed
[04:20] <thumper> and that is a problem because...
[04:20] <joako> After about 50mb is downloaded approx 500mb is consumed and I am out of memory and bzr abruptly exits with a message ¨Killed¨
[04:20] <joako> In dmesg there is the message: Out of memory: Kill process 3572 (bzr) score 500 or sacrifice child
[04:21] <joako> I just wish to download the code of launchpad.net but I don´t see any direct download option
[04:21] <SamB> joako: you might want to consider adding some swap
[04:21] <joako> SamB, Yes but why is it so complex to download a software? Why does it need 10x more memory than what it downloads?
[04:22] <SamB> joako: who knows :-(
[04:22] <thumper> python possibly
[04:22] <SamB> whoever knew probably moved on
[04:22] <thumper> lifeless probably knows
[04:22] <SamB> thumper: pretty sure that's not why
[04:23] <joako> Is there any other way? E.g. in sourceforge.net there is a download zip option direct from the browser
[04:32] <thumper> joako: what are you trying to get?
[04:39] <spiv> There's extensive discussions on the list archives about why it consumes so much memory.
[04:40] <spiv> The simplest workaround is usually to download incrementally; "bzr branch -r 1000 URL; cd proj; bzr pull -r 2000; bzr pull -r 3000; …"
[04:41] <SamB> hmm, true
[04:43]  * SamB couldn't remember if that would actually work until he just now realized "well otherwise 'bzr pull' would always take AGES on lp:launchpad" ...
[04:43] <spiv> (Btw, “python” isn't why)
[04:43] <spiv> Well, mostly ;)
[04:43] <SamB> yeah, Python can only explain a small amount of it
[04:44] <SamB> like I might believe a 2x-4x lossage to Python
[05:15] <lifeless> thumper: oh hiai?
[05:16] <thumper> lifeless: joako above was complaining about the memory use of bzr
[05:16] <thumper> lifeless: I said you'd probably know why it was as high as he was reporting
[05:16] <lifeless> oh
[05:16] <thumper> because I have NFI
[05:16] <lifeless> so  last I recall a big chunk was the slab cache
[05:17] <lifeless> if you're pulling off of a smart server it can mostly blat stuff to disk but we still need to do some processing for integrity
[05:18] <SamB> lifeless: he was particularly complaining that it's many times as big in RAM as on the wire
[05:20] <lifeless> SamB: that's partly because we get 1000's
[05:20] <lifeless> SamB: -> 1 compression
[05:21] <SamB> probably it would be better if validation could be performed by reading it back off the disk
[05:26] <lifeless> so the thing to do would be to oke at it with jameinel's memory profiler and see where the usage is
[05:26] <lifeless> my bet is on cached gc slabs, which is a tunable tat can be tuned down
[05:26] <lifeless> (in exchange for more reads off of disk...)
[05:30] <SamB> that sure beats being OOM killed ...
[07:10] <karlis> How would you go about creating a folder in launchpad? Something like lp:~team/project/container-folder/branch?
[08:24] <thumper> karlis: you can't
[08:27] <karlis> thumper: thats what i started to figure
[08:27] <thumper> karlis: branches are a flat namespace in launchpad on a project
[08:27] <thumper> well, flat in that it goes ~owner/project/name
[08:27] <thumper> so that tuple has to be unique
[08:27] <thumper> no folders
[08:28] <thumper> it complicates traversal
[08:29] <karlis> So what is the convention? I just create my structure locally and push the branches straight to my project?
[08:29] <karlis> Seems things could get cluttered if you make to many release branches.
[08:30] <karlis> thumper: Ether way thank you for the explanation
[08:30] <thumper> well, it depends
[08:31] <thumper> launchpad tracks merges,
[08:31] <thumper> so if a branch is merged into trunk, it gets marked as merged
[08:31] <thumper> so doesn't show up in the default branch listing
[08:31] <thumper> normally you'd have the development focus series branch set
[08:31] <thumper> it becomes the short lp:project name
[08:31] <thumper> other series can have linked branches too
[08:31] <thumper> to be lp:project/series
[08:39] <karlis> Good to know
[09:54] <karlis> Thanks btw ;)
[12:23] <karlis> Is there a way i could move branches around my repository. But so they change there bound URI to an appropriate destination on the bzr server?
[12:24] <karlis> I guess what I'm asking is there a bzr way to do mv,init,bind?
[12:25] <maxb> I can't underderstand what you're trying to do
[12:26] <karlis> i want to move a branch from folder dev to merged
[12:27] <maxb> If you want to move whole branches around on disk, you just do it (subject to the restriction that if they use a shared repository, you can't move them outside it)
[12:32] <karlis> I guess that makes perfect sense if i think about it
[15:10] <gakins> I'm having permission problems with bazaar.  (I'm also new to bazaar so forgive me if this is stupid).  It looks like when I do a bar pull that I'm can't access the 'lock' did because my user only has read) access.  Is it sufficient to give a 'group' write access to the entire project directory?  Or is there more finesse required?
[15:10] <gakins> bzr pull.. not bar pull (Stupid autocorrect)
[15:11] <mgz> try creating a new branch from what you're trying to pull from
[15:11] <gakins> No.  I have a local repo which another developer created.  I'm trying to get the most recent code from the remote repo
[15:12] <mgz> right, so find the url of the remote repo `bzr info`
[15:12] <mgz> then create a new branch `bzr branch REMOTE NEW-LOCAL`
[15:13] <mgz> you can fiddle with the bits you have on disk if you like, but it's just as easy to get a new copy of what you actually want
[15:13] <gakins> It appears that you're saying just to ignore the current local branch and create a new one.. am I understanding that correctly?
[15:14] <gakins> mgz:Ah.. OK  Thanks!
[15:14] <mgz> yup. there are other options, but that's simple and doesn't matter how screwed up the perms are with what you have currently.