/srv/irclogs.ubuntu.com/2007/11/29/#bzr.txt

poolieright00:17
jmlhello00:19
jmlI've got a straightforward documentation patch that still needs another positive review.00:20
jelmerlifeless: I'm looking for a SubunitTestRunner - is there something like htat yet?00:20
lifelessjelmer: all my changes are pushed; what is it you want to do ?00:20
lifelessjelmer: run a suite in a subprocess?00:20
jelmeryes - samba4's testsuite is subunit based00:21
jelmerbut the main process is written in perl, not python00:21
jelmerincluding the subunit parser00:21
pooliejml, url?00:21
lifelessjelmer: contribute it back dude00:21
jmlpoolie: http://bundlebuggy.aaronbentley.com/request/%3Cd06a5cd30711261654k61edd4c4n66c7d5894d1c485c@mail.gmail.com%3E00:22
jelmerlifeless: I will at some point, once we get rid of some of our extensions00:23
pooliebtw you should think about naming a child, should you have one, U.R.Lange :)00:23
lifelessjelmer: in subunit itself, you can use ExecTestCase to run external tests, and IsolatedTestCase/IsolatedTestSuite to run existings tests past a fork() barrier00:23
jelmerlifeless: I doubt you want support for setting up a Samba server inside subunit ;-)00:23
lifelessjelmer: well, thats really part of your tests: )00:24
lifelessjelmer: but the hook to make that easier; that I could go for00:24
jmlpoolie: heh heh00:24
jmlpoolie: I guess that's better than Minnie Lange00:24
=== jamesh_ is now known as jamesh
jmlpoolie: thanks00:31
=== mw is now known as mw|out
pooliejml, can you merge it or do you need an adult to help?00:33
jmlpoolie: I need a grown up to do it.00:34
jmlpoolie: will I get an email once it's merged?00:35
poolieno, but you can poll that page00:35
lifelessjml: subscribe to bazaar-commits00:35
jmllifeless: yeesh.00:37
lifelessspiv: you can commit kthxbye00:42
spivlifeless: ta :)00:43
spiv'bzr: ERROR: bzrlib.errors.ShortReadvError: readv() read unknown bytes rather than unknown bytes at unknown for "http://bazaar-vcs.org/bzr/bzr.dev/.bzr/repository/packs/a3069b4df97462558e8666ff0cc72386.pack": Server aborted the request'01:03
spivThat's a lot of unknowns.01:03
lifeless-rw-r--r-- 1 robertc warthogs 58844730 Nov 28 03:44 a3069b4df97462558e8666ff0cc72386.pack01:05
lifeless.bzr.log have any hints? I pulled ok earlier today01:06
* spiv looks01:06
lifelesswe have 58844730, 52560, 13592, 5453, 4930, 2259, 2052 packs01:07
spivhttp readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 649 collapsed 14901:07
spivgot pycurl error: 18, transfer closed with 162685 bytes remaining to read, (18, 'transfer closed with 162685 bytes remaining to read'), url: http://bazaar-vcs.01:07
lifelessin bytes01:07
spivorg/bzr/bzr.dev/.bzr/repository/packs/a3069b4df97462558e8666ff0cc72386.pack01:07
lifelessspiv: interesting01:07
lifelesslink error perhaps?01:07
spivLots of other successful readvs before that, but none with more than 16 parts after collapsing.01:08
spivThis is updating my bzr.dev from before I was on leave.01:08
spiv(but using a current bzr.dev to the pull, and the local repo is now in packs-0.92 format)01:09
lifelessis it in knit or pack form?01:09
lifelessstrange01:09
spivi.e. pulling into 2977 pqm@pqm.ubuntu.com-20071109154145-1yq4oi390uk3z90o01:09
lifelessare you using bzr.dev to do this? or your old bzr.dev ?01:09
spivCurrent bzr.dev, as of last night.01:09
lifelessok, that has the http fix01:09
spiv(3041 pqm@pqm.ubuntu.com-20071128045852-9ii8fj85vxz1om46)01:10
lifelessis it repeatable?01:10
spivLet's find out.01:10
spivOh, one other interesting fact:01:10
spivreal    38m32.140s01:10
spivuser    0m3.196s01:10
spivsys     0m0.380s01:10
lifelesserm01:10
lifelessex-wtf-me01:10
spivWhich seems... odd :)01:10
spivPossibly supports the "link error" hypothesis I guess.01:10
* spiv tries again.01:11
lifelesstime bzr pull01:11
lifelessUsing saved location: http://bazaar-vcs.org/bzr/bzr.dev/01:11
lifelessNow on revision 3047.01:12
lifelessreal    0m36.865s01:12
lifelessuser    0m6.844s01:12
lifelesssys     0m0.344s01:12
lifelessstill slow01:12
lifelessbut I think mostly fixable via indexing work01:12
lifelessalso we could do01:12
lifelessread-invs01:12
lifelessthen read revs + texts + sigs in one readv to the pack01:12
lifelessdropping latency by 2 RTT per pack01:12
spivlifeless: still weirdly slow01:16
spivlifeless: long delay at "http readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 381 collapsed 4" in the .bzr.log01:16
spivlifeless: now another long delay now that it's reached "http readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 649 collapsed 149"01:18
spivlifeless: no network traffic atm according to tcpdump01:18
lifelessspiv: disable your squid.01:19
jelmerjml: how does trial retrieve tests from a path?01:20
lifelessspiv: or otherwise bypass; then try again.01:20
jelmerjml: hi, btw :-)01:20
jmljelmer: hi01:20
jmljelmer: black magic.01:20
jelmerjml: appears to be something custom, and I can't easily figure it out from the source, but I guess I'm missing something...01:20
spivlifeless: ok.01:21
jmljelmer: you are particularly interested in 'trial foo/bar/baz' rather than 'trial foo.bar.baz', right?01:21
jml(foo bar baz BZR)01:21
jelmerjml: yep, in running stuff that's not in my PYTHONPATH01:22
spivlifeless: btw, some traffic has occurred finally01:22
jmljelmer: the code is in twisted.trial.runner.filenameToModule01:22
jelmerjml: This is for the Samba testsuite - I really don't want people to have to install twisted just to run the testsuite but I like how easy it is to use trial01:23
jelmerjml: thanks!01:23
spivlifeless: for added laughs, Ctrl-C doesn't interrupt it.01:24
spiv(nor does Ctrl-\)01:24
spivlifeless: gdb seems to think it's in pycurl.so (but there's a lot of ?? in the backtrace).01:26
* spiv SIGTERMs it01:27
fullermdI think 'pycurl is uninterruptable' is on the known list...01:29
* spiv nods01:30
spivlifeless: it just completed in 3m 7s real when I bypass squid.01:34
* spiv files a bug01:36
lifelessspiv: interesting.01:38
spivlifeless: filed bug 17270101:45
ubotuLaunchpad bug 172701 in bzr "Large readv requests can fail if there is a squid proxy" [Undecided,New] https://launchpad.net/bugs/17270101:46
spivPerhaps I should have just said "readv requests" rather than "Large readv requests" in that summary.01:46
lifelessspiv: a http request decode of what is sent to squid, and squid to upstream for the .pack read that fails would help01:47
spivlifeless: do you know an easy way to get that off the top of your head?  (e.g. the right tcpdump magic?)01:47
spivI can look it up if you don't.01:48
fullermdWireshark's decoder/trace is handy.01:48
poolie-R 'http.request' i think?01:48
lifelesstshark ftw01:49
fullermdComing up with 'wireshark' of course mentally requires a detour through "etherea...  wait, what did they change their name to?".  Stupid program renaming.01:50
lifelessyes01:53
lifelessbecause wireshark is so much more clear and inuitive01:53
ubotuNew bug: #172701 in bzr "Large readv requests can fail if there is a squid proxy" [Undecided,New] https://launchpad.net/bugs/17270101:56
groversquick question: what's the best bzr setup for two people working on a project in a LAN? I can't seem to get permissions that work for the both of us03:24
=== michelp_ is now known as michelp
pooliegrovers, sftp tends to have problems with permissions03:27
poolieso i'd suggest using bzr+ssh, which should preserve them03:27
groversis there any way to use bzr+ssh with a non-standard SSH port?03:28
pooliesure, i think you can put it in the url, or in your .ssh/config (on unix)03:28
groversso it would be acceptable for us to push/pull to each other?03:29
abentleylifeless: Bundle Buggy's on packs, but I'm in the middle of reconciling my bzr repo.04:04
lifelessabentley: cool04:05
lifelesswool04:06
lifeless:!./bzr --no-plugins selftest reconcile.*ack  -104:06
lifelesstesting: /home/robertc/source/baz/reconcile/bzr04:06
lifeless   /home/robertc/source/baz/reconcile/bzrlib (0.93.0.dev.0 python2.5.1.final.0)04:06
lifeless[141/141 in 11s, 3 skipped] repository_implementations.test_check_reconcile.TestFileParentReconciliation.test_reconcile_behaviour(RepositoryFormatKnitPack3,UnreferencedFileParentsFromNoOpMergeScenario)04:06
lifelessnative packs reconcile FTW04:06
lifelesslet me check all pack tests, then I'm firing this off and done for the day.04:06
lifelesslater all04:19
PengOmg! I got git to compile!04:20
PengWait, I don't want to learn git.04:22
lifelessI was going to say04:24
lifelessPeng: there is a native pack reconcile patch I just sent to the list; if you04:24
lifelessare interested.04:24
lifelessPeng: (take a backup of .bzr first, of course :)).04:25
PengI am interested, but I'm too tired to try it now.04:26
PengAlso, running bzr.dev is pushing it enough. But a patch?04:27
lifeless:)04:27
lifelessjust giving the customer what they want :)04:27
PengThe customer wants a nap. :P04:29
PengAnyway, thanks.04:30
* lifeless gives Peng a nap04:30
* Peng snoozes.04:31
* spiv -> late lunch04:39
PengWoah.04:40
PengI keep ~/local in a bzr branch, and the pack for installing git is 68 MB!04:40
PengA lot of bin/git-* files are the same 4.2 MB file. Might be hardlinked together, but bzr doesn't know that.04:42
abentleyHeh, converting my branches from format 5 to 6 saved about 14M of storage.04:48
abentleyknits: 145M, Pack+branch5 98M, Pack+branch6 84M.04:51
PengBranch6?04:53
PengBranch5 to branch6, that would be dirstate's branch format to dirstate-tags's?04:53
PengHeehee, I've got git installed. Cloning git.git had crazy fun output, and only took 2 minutes.04:54
* Peng goes to bed.05:02
abentleyPeng: correct.05:05
poolieok, i'm looking at bug 16530405:37
ubotuLaunchpad bug 165304 in bzr "can't pull knits to packs over hpss" [Critical,In progress] https://launchpad.net/bugs/16530405:37
pooliespiv, still here?06:07
pooliespiv, if you think it's correct could you merge john's fix for check? it looks plausible to me06:08
spivpoolie: I'm here.06:12
spivpoolie: I think it may have been obsoleted by an API change that got merged a bit later (which effectively made the same fix); I sent that reply will trying to catch up on the >1000 bazaar@ messages waiting for me :)06:16
spivpoolie: I'll double check that's what happened, and if not I'll merge John's fix.06:16
pooliehm06:16
pooliei'm not sure if reading, or even trying to skim all the messages is a good idea06:16
spivWell, I mostly just marked entire threads as "read" based on subject line alone.06:17
spivI wanted to make sure I didn't miss anything about e.g. 1.0 planning.06:17
spivI had to resist my curiousity several times :)06:19
spivpoolie: yes, an equivalent fix was made by a separate change.06:21
poolieoh ok, so it's not still happening?06:21
spivAs of yesterday, by the looks.06:23
pooliecool06:23
spivIn r3040; that particular change was in 3036.1.2.06:24
abentleylifeless: My tests show that on some merges, the text extraction time for the simple case (no text merge) is the bottleneck.  I'll be interested in putting in iter_files_bytes, once we have a good implementation.06:30
pooliei'm seeing some odd failures - new tests from alexander for making the tree hidden call build_tree() incorrectly06:31
pooliepassing just a string, not a list06:31
pooliei don't understand how this passed before06:31
i386lifeless: ping07:27
lifelessi386: yo07:29
lifelessabentley: if you'd like to write up a decent iter_files_bytes, I'd be happy to give pointers07:29
i386hey :)07:29
i386Ive been prototyping some APIs for rhodes recently07:29
i386and I dont like the feel of JavaScript for my usecase07:30
lifelessabentley: basically we need to plan the texts and retrieve them across N weaves, so need more code extraction for reuse from knits; generalising the underlying stuff to be arbitrary delta code instead, and make it talk (file_id, revision_id) pairs07:30
lifelessi386: yah07:30
i386so ive decided the world needs another DSL07:30
lifelesshave you implemented lisp yet ?07:30
i386:P07:31
i386I bought a book on ANTLR07:31
i386from the pragmatic dudes07:31
lifelessok...07:33
lifelessso you're going to write an entire DSL, or layer it on javascript using jantler, if such a beast exists.07:33
i386No on top of python07:36
i386since it already has a target07:36
i386and I already have some code :)07:36
i386anyway07:37
i386Ill buy you many beers if you can poke holes in my implementation / give me advice07:37
lifeless:)07:38
lifelessmail me a link to code07:38
i386Only when I have a language though07:38
lifelesswhat is rhodes?07:38
i386http://i386.kruel.org/blog/?p=25707:39
i386^^ rhodes07:39
lifelessi386: hmm, my first reaction is doom07:42
lifelessrhodes++07:42
lifelessnew language--07:42
Necrogamihmm07:42
i386Yeah07:42
i386I want something simple and really controllable07:42
NecrogamiBazaar is Python?07:43
lifelessNecrogami: oh yes; i386 and I are talking off-topic.07:43
i386Necrogami: yes07:43
NecrogamiStackless or standard python?07:43
lifelessstandard07:43
Necrogami:-\07:43
lifelesspython 2.4 or above07:43
i386perhaps we could take this somewhere else lifeless ?07:43
lifelessi386: #rhodes I guess :)07:43
Necrogamiim a svn user currently how does it compare? or should i spend more time reading?07:44
lifelessNecrogami: stackless python is a little harder for users to get :). I'm not sure why you'd want it to require stackless python.07:44
Necrogamistackless is quicker :-\07:44
lifelessNecrogami: we think its superior to svn (and we're biased :)). Its got many features svn does not; and a few notables ones svn has are missing.07:44
lifelessNecrogami: speed is relative; we commit on trees with 50K files in about 4 seconds on laptop hardware;07:45
NecrogamiRight07:45
Necrogamiim worrying about size of my files to commiting vs time it takes to commit07:46
lifelessNecrogami: most of the places we're not extremely fast are in the process of being solved; and stackless wouldn't give as much of a win on its own as just fixing our code07:46
Necrogamithat's the problem  i'm currently having07:46
lifelessNecrogami: how many MB are your files ?07:46
Necrogami44.82gb07:46
Necrogamilol07:46
NecrogamiXML07:46
lifelesseach ?07:46
Necrogamiit's one main file07:46
lifeless*blink*. Just to be clear; you have a single file that is ~40GB ?07:47
Necrogamibut it has about ... 12.5Million Files attached07:47
NecrogamiYes07:47
NecrogamiXml rendered map07:47
lifelessand 12M subordinate files. wow.07:47
NecrogamiIt's a map for a game i'm designing07:47
lifelessso I can tell you today that we can't commit that; we hold files we're committing in memory as we commit them07:48
Necrogami12.58 million Sq Miles each sub file is a sq mile07:48
lifelessNecrogami: ok this isn't making sense to me; if you have separate files then your main file is not going to be 44G07:48
Necrogamino ...the Sub files are Images07:48
Necrogaminothing more07:49
lifelessNecrogami: so to be sure I'm reading this right07:49
lifelessyou have:07:49
NecrogamiThe main file contains all of the linking data for down 1 sq ft07:49
lifeless12.58M images07:49
lifeless1 xml file that is 44GB in size07:49
Necrogamiyep07:49
lifelessbzr can't handle that today; we currently start swapping at 3M versions paths; we will be fixing that.07:50
Necrogamikk07:50
lifelesseach individual file gets held in memory to commit: 1 copy for the basis, 1 copy for the current version.07:50
lifelessmerges need 3 copies07:51
lifelessso you'd need about 150GB of memory to do a commit of that file.07:51
Necrogamiyeah ow07:51
lifelessI'm surprised any tool can manage that size file well though, xml requires a data shuffle to modify elements07:51
lifelessso my immediate reaction is to suggest ways to shrink that file07:52
NecrogamiYeah were in the process of breaking it down to SQL of some sort07:52
Necrogamibe it oracle or something07:52
lifelessnow, versioning a database is still going to be a problem :)07:52
Necrogamioh i know07:53
Necrogamibut breaking down the database by regions is alot easier07:53
lifelessso, we'd like to handle such size files in principle.07:53
i386wow07:54
i386big file07:54
Necrogamioh i know07:54
lifelessthere are a number of engineering tasks to complete before we can.07:54
Necrogamii'll definately have to stick around...07:54
lifelessmainly writing streaming diff and merge07:54
i386Necrogami: You might have better luck breaking each "record" of that file into a single file07:55
Necrogamiany current webapi's for bzr?07:55
i386and having an index that lists all the "records"07:55
Necrogamiuh07:55
lifelessi386: 24M paths will be a problem too07:55
Necrogamiright?07:55
lifelessi386: :)07:55
i386ahh :)07:55
NecrogamiLifeless.... Every building and item on the map is in the XML07:55
lifelessNecrogami: if you mean web viewers to see the code; yes - there is loggerhead, and bzr webserver07:55
Necrogamiso record count .. is about 85 Million07:55
i386whoa07:56
lifelessNecrogami: sure thats fine; like I said, currently 3M files makes us swap on commonly available hardware07:56
i386enjoy :)07:56
NecrogamiLast time i ran a record counter...07:56
NecrogamiYeah07:56
lifelesswe often hold the full tree in memory; the next inventory format should take us some way to solving that and only needing to hold modified regions in memory07:56
NecrogamiNothing about this game is gonna be "common"07:56
NecrogamiYeah i just lost a SVN database ...07:58
Necrogamiso i'm looking around for an alternative07:58
i386backups are good :07:58
i386:)07:58
NecrogamiAlways .. but not necessarilly easy07:59
lifelessI'm quite surprised svn managed to handle that07:59
lifelessand impressed07:59
Necrogamiit wasn't handeling the main file07:59
Necrogamijust all of the images and sub files07:59
lifelessoh :)07:59
NecrogamiYeah :-\08:01
Necrogamithe first time i tried to load that main file on there08:01
Necrogamiit segfaulted the box08:01
lifelessrofl08:02
Necrogamiso i quit there w/ that file08:02
lifelessDinner time08:05
poolie_lifeless, i tryed changing the default and get a failure in switch tests08:05
poolie_this might be after you last tested it08:05
poolie_nm, enjoy your dinner08:05
lifelesspoolie_: ring me if you want to chat aboot it08:05
ubotuNew bug: #172741 in bzr "merge from knit-repo to knit branch: invalid progress bar 0/0" [Undecided,New] https://launchpad.net/bugs/17274108:26
mrevellmorning09:13
poolie_hi mrevell09:22
poolie_on the phone, will be off in a bit09:22
mrevellHi poolie_09:22
=== poolie_ is now known as poolie
jdahlinI have bzr-svn question09:56
jdahlinIs it no possible to merge from an svn repo in a normal bzr branch?09:56
jdahlinI branched of a vcs-import of a svn-repo, and then tried to merge from the real repository09:56
jdahlinwhich  gives me bzr: ERROR: Repository KnitRepository(...) is not compatible with repository SvnRepository(...)09:57
pborjdahlin: I think that to be able to merge you should have branched the bzr repo with bzr-svn, branching from a vcs-import doesn't ensure that your bzr branch and the svn repo have a common ancestor10:09
pooliejdahlin, i think you might need to upgrade to a rich-root repository for the bzr side10:10
jdahlinpbor, ah, I take it that the vcs import tool is not creating branches which are compatible with bzr-svn.10:24
jdahlinpoolie, hmm, how do I do that, and are you sure that would help?10:24
pborjdahlin: yeah, that's what I've been told10:27
* jdahlin prays bzr-svn will survive importing his 4000 revision repository10:31
nebuchadnezzarhello10:35
nebuchadnezzarI want to make a svn branch with the bzr-svn plugin but I need to define a http_proxy10:37
nebuchadnezzarthe proxy is defined for the svn command, it works but it doesn't with bzr-svn :-/10:39
pborjdahlin: no way, you have to do that in chunks10:40
jdahlinnebuchadnezzar, did you try setting the environment variable http_proxy ?10:40
nebuchadnezzaryes10:40
nebuchadnezzarit is set10:40
jdahlinpbor, I'm 60% done, so almost there10:40
pborjdahlin: then you have plenty of ram :)10:41
jdahlinpbor, ram usage by that process is also 60%, interestingly :-)10:41
nebuchadnezzarjdahlin: netstat show me that python send a SYN to the remote web server instead of the proxy10:41
jdahlinnebuchadnezzar, iirc urllib is supposed to pickup http_proxy10:42
jdahlinI'm not sure what bzr uses for http though10:42
james_wbzr uses pycurl by default, but this is probably going through the libsvn, so I'm not sure why it would differ to the svn client.10:44
james_wnebuchadnezzar: have you tried bzr branch svn+http://...?10:44
nebuchadnezzarjames_w: it works10:46
nebuchadnezzarwith svn+https:// the connection is done via the proxy10:46
=== cfbolz_ is now known as cfbolz
VSpikehi folks.. probably a simple question but working on a train with limited battery and no internet except cellphone...10:56
VSpikei want to move versioned files from foo to foo/baz10:57
VSpikeI tried bzr move foo foo/baz10:57
VSpikeand it gave me a exception trace10:57
VSpikewhich i will email when i can as it asks10:58
VSpikeso i did mkdir foo/baz10:58
VSpikemv foo/* foo/baz10:59
VSpikebzr mv foo foo/baz --after10:59
VSpikebut it said foo/baz was not versioned (Id moved .bzr too)11:00
KinnisonWas this within a tree?11:00
KinnisonE.g.11:00
Kinnisonmkdir foo foo/baz11:00
Kinnisonbzr add foo11:00
Kinnisonbzr mv foo foo/baz/11:00
Kinnisonor moving a tree in its entirety?11:01
VSpikeso i moved files back and tried bzr init foo/baz && bzr mv foo foo/baz11:01
VSpikei want to move tree entirely11:01
VSpikeif i just move it all including .bzr it thinks files have been deleted11:02
VSpikewill i have to move it sideways then down?11:03
KinnisonErm11:06
KinnisonSo you have dir foo11:06
Kinnisonand dir foo is a bzr branch?11:06
Kinnisonyou can just rename the dir11:06
VSpikeyep11:06
VSpike.bzr doesnt contain any absolute paths?11:07
Zindarno11:07
Kinnisonnope, it's all relative to where the .bzr is11:07
VSpikehm ok i figured i would have to tell it somehow11:07
pooliemrevell, can you please make sure to read ian's user guide draft, if you haven't already11:08
poolieit's on the list11:08
VSpikelet me try that again11:08
Zindarhi all :)11:08
=== n2diy_ is now known as n2diy
mrevellpoolie: Thanks for the reminder. I'm working through it now.11:08
KinnisonVSpike: http://rafb.net/p/PcjCBE85.html11:08
=== VSpike2 is now known as VSpike
VSpikesorry..dunno if you saw my last msg11:19
VSpikewhen i move it bzr status list lots of files as unknown11:19
VSpikeif u did i missed ur resp11:19
KinnisonVSpike: I offered http://rafb.net/p/PcjCBE85.html11:26
Kinnisonthat was the last bit I said11:26
=== cfbolz_ is now known as cfbolz
AfCjdahlin_: how's your import going?12:06
jdahlin_AfC, oh12:07
jdahlin_it broke :-)12:07
jdahlin_SubversionException: ("REPORT request failed on '/svn/!svn/vcc/default'", 175002)12:07
AfCGee, I wouldn't have used a smiley for that!12:08
jdahlin_ah, it was at 90% or so12:08
jdahlin_how could I not smile?12:08
jdahlin_let me attempt to do it in steps as pbor suggested12:08
jdahlin_so the first run is simple, just say, -r 50012:09
jdahlin_and after that should just be a merge -r 100012:09
jdahlin_right pbor?12:09
pboryeah... I may have a script I used for gedit12:10
pborr=$112:10
pborwhile [ $r -ne $2 ]; do12:10
pbor        bzr pull -r$r svn+ssh://pborelli@svn.gnome.org/svn/gedit/trunk12:10
pbor        r=$(( $r + 100 ))12:10
pbordone12:10
AfCjdahlin_: (can I suggest doing it in steps of 5 or so, to get the technique right first?)12:10
jdahlin_AfC, too late, but I'll do the 5 revisions in the first merge12:11
jdahlin_assuming I can branch of the first 500 revisions12:11
AfCheh12:11
jdahlin_thanks pbor12:12
jdahlin_pbor, I tried bzr-svn 6 months ago or so, I had some issues merging back and forth12:12
jdahlin_pbor, do you know if it's working better these days?12:12
pborjdahlin_: I tried it a bit and it worked12:13
AfCjdahlin_: I gather that it is - although the person who was hacking on it most (jelmer) is now faced with writing bzr-git12:13
=== mrevell is now known as mrevell-lunch
pbor(to be honest I am doing so little dev that I went back to plain svn)12:13
pborjdahlin_: make sure to also get the rebase plugin12:13
jdahlin_cool, bzr-git!12:14
jdahlin_does that mean that I don't have to use git any longer?12:14
AfCHopefully it will someday.12:15
AfCRoundtripping between dissimilar systems is always going to risk being lossy; I'll be happy with one way import if I can get it.12:15
jdahlin_pbor, what is the rebase plugin for?12:21
pborjdahlin_: suppose you branch from svn at rev 100 and then hack away and commit locally...12:22
pborthen some commits happen in svn, e.g. the current head revision is 10212:23
pboryou can rebase your local changes as they were done branching from 10212:23
jdahlin_I thought I would be able to get these changes by doing another bzr merge?12:23
pborand then you can safely push to svn to commit12:23
AfCWhy wouldn't you just merge?12:24
pborI guess this allwows to keep th history more linear12:24
pbornot sure what the practical implications are12:25
ubotuNew bug: #172791 in bzr "bzr merge A B and bzr merge B A produce different sets of conflicts" [Undecided,New] https://launchpad.net/bugs/17279112:26
=== weigon_ is now known as weigon
JanzertTo upgrade from 0.90 is it safe to just run setup.py install or should I remove the 0.90 bzrlib directory first or?12:35
jdahlin__hmm, and no bzr-svn ubuntu packages for bzr-svn 0.4.412:38
ubotuNew bug: #172794 in bzr-eclipse "add support for quick diff" [Undecided,New] https://launchpad.net/bugs/17279412:41
jdahlin__oh, there is one in hardy. nice.12:41
abentleylifeless: I am starting to work on mpdiff-based packs.  I'll be making iter_files_bytes the underlying content-retrieval mechanism.12:54
AfCJanzert: should be safe12:57
JanzertAfC: ok, thanks.12:58
=== mw|out is now known as mw
=== jdahlin__ is now known as jdahlin
mneisenHi, I just wanted to branch the mainline branch of bzr and got the error message: "bzr: ERROR: Connection error: curl connection error (problem with the SSL CA cert (path? access rights?))". What shall I do?14:08
mwhudsonuh14:09
=== SteveA_ is now known as SteveA
mwhudsonmneisen: what command line did you use?14:10
mneisenmwhudson: The right one :-D ... Anayway, case close, I garbled up the URL ... https instead of http. No wonder bzr could not make any sense of it!14:11
mwhudsonmneisen: well, that's not the correct url then is it :)14:12
mwhudsonmneisen: glad to hear it's working in any case14:12
mneisenmwhudson: thank you anyway?14:13
mneisenmwhudson: The question mark was unintended.14:14
mwhudsonmneisen: :)14:14
=== jam-laptop is now known as jam
=== cprov is now known as cprov-lunch
datoheh, here I was wondering why updating bzr.dev was taking so long15:25
jamdato: pulling from packs into knits?15:25
datoyes15:26
jamif you have an older bzr that is *really* slow15:26
jamwith bzr.dev it is a bit faster15:26
jambut it isn't transparently fast15:26
datothe best I could do would be `bzr upgrade` in my bzr.dev copy, right?15:26
jamdato: well if you only have 1 branch of bzr.dev (no personal ones) I would probably nuke it and start from scratch15:27
jambecause you should "bzr reconcile" before you "bzr upgrade"15:27
datook, thanks; I'll branch from scratch15:27
jamThough bzr reconcile should be better than it used to be15:27
jamThe last time I reconciled, it took about 1hr15:27
jamso I'm guessing a fresh pull will be faster for you15:27
* dato does `rsync -avP --exclude .bzr.backup bazaar-vcs.org::bazaar-ng/bzr/bzr.dev bzr.dev`15:42
datojelmer: hi, are you around for a bzr-svn problem? I'm finally trying to push a bzr branch to svn, but I get this error:15:47
dato% b svn-push https://forja.rediris.es/csl2-minirok/trunk/15:48
datobzr: ERROR: Not a branch: "https://forja.rediris.es/csl2-minirok/trunk/".15:48
jamdato: just as an aside, did you try "bzr svn-push svn+https://" ?15:48
datonope, should I?15:48
datoah15:48
datoright15:48
datonope, same error15:49
jamdato: are you sure you have the right URL, going there in a browser15:57
jamgives me a 40415:57
jam"Page not Found"15:57
jelmerabentley: hi15:57
jamdato: it certainly seems difficult for a 404 to be a branch15:57
jamespecially an svn one15:57
jelmers/abentley/dato/15:58
datohm15:58
jamdato: https://forja.rediris.es/svn/csl2-minirok/15:58
jamyou need the "svn/" in the url15:58
datooops, thanks15:58
jamdato: however, there is no 'trunk' either15:58
jamthough maybe you are creating it?15:58
datoyes15:58
datosorry for having you debug this15:58
jamI don't know if you can create branches with svn-push15:58
jamjelmer: ^^ ?15:58
datoyes, afaik15:59
datonot with "push" alone15:59
jelmeryes, you can - but only with svn-push15:59
datojelmer: svn-push -r 1 should just push one revision, right?15:59
jelmeryep16:00
jelmeruhm16:00
jelmerif -r is supported for svn-push16:00
datoit's in the help16:00
datolet's see if they've actually enabled the pre-revprop-change16:00
datobzr: ERROR: Permission denied: ".": MKACTIVITY of '/svn/csl2-minirok/!svn/act/eedb297f-6600-4219-a18b-b62d24fcce9b': authorization failed (https://forja.rediris.es)16:08
datojelmer: is that error sort of known?16:08
jelmerdato: you weren't expecting a permission denied error?16:09
datowell16:09
datoI guess it makes sense, since it didn't ask for a passwrd16:09
jelmerbug 12076816:10
ubotuLaunchpad bug 120768 in subversion "Should prompt for passwords" [Undecided,New] https://launchpad.net/bugs/12076816:10
jamvila: ping16:18
vilajam: pong16:18
jamvila: I think you took Robert's code too literally16:18
jamI just sent an email16:18
jambut: ranges = coalesced[group * max_ranges:group+1 * max_ranges]16:18
jamlooks like it has a host of problems with it16:18
jamI think the real value you want is:16:18
jamranges = coalesced[group:group+max_ranges]16:19
vilarhaaa, I knew something simpler was possible ;)16:19
jamI don't know how what you had was working16:19
jamUnless you only had 1 range16:19
jamor maybe 216:19
vila..and correct too :)16:21
vilait worked in the smoke test because no readv required more than 200 ranges16:23
vilathanks anyway, fixed, nobody could use that buggy version so far except me, I rarely commit before testing but I'm highly interruptible these days, so...16:25
vilajam: did you read the rest of my patch, any comments ?16:30
jamvila: did you read my email16:30
jam?16:30
vilaI tried re-factoring sftp_readv up front, but there was too many unclear small diferrences between sftp and http16:30
jamyeah, the off-by one is a killer16:31
jamhttp ranges are inclusive16:31
jamI don't remember sftp16:31
jambut it is either start+length16:31
vilajam: about sftp patch ? Yes replied ;-) off-by-one ? did you send several emails ?16:31
jamor start => end non-inclusive16:31
jamvila: I sent 2 email16:31
jamemails16:31
vilaok16:31
jamone to your list email16:32
jamand one to your patch email16:32
jam(from bazaar-commits)16:32
jamvila: for the 65536... openssh supports larger ranges16:32
jambut the sftp spec16:32
jamsays they "must support at least 32k"16:32
jamI believe it says they must support a total request of at least 34k16:33
jamincluding overhead16:33
vilaparamiko seems to use 32768 anyway in my currently installed version, nvm16:33
vilabut I looked at the async implementation with a thread... ;-)16:34
jamwell paramiko uses threads, IIRC16:35
jambut bzr itself doesn't16:35
datojelmer: so how should I do it, do a dummy commit with the svn client so that the credentials get stored and bzr can use them?16:35
jelmerdato: yes, that's the only way I'm aware of16:35
vilaha, your second email is there16:35
jelmerdato: until I manage to fix upstream svn...16:36
vilamain problem for the http parser: if we turn it into an iterator to return data as soon as they arrive, there will be no guarantee anymore that the socket is left "clean", i.e. no finally statement for the iterator16:37
vilaI can clean that when the last offset is handled but do I have the guarantee that bzr will always consume all offsets ?16:38
=== cprov-lunch is now known as cprov
vilajam: Since http processing is still synchronous I don't understand your point, more requests means more latency means more clock time.16:46
jamvila: well, I'm thinking more polling the socket for more data16:47
jamI won't make a strict guarantee that we iterate all of the data, just because if we get an exception we won't pull the rest16:47
jambut the fact that we requested it means we want it16:47
jamso I don't think we will issue a request and only read 1/216:47
jamin 2.5 you could use a try/finally16:48
jamthe poor man's version is a try/except/else16:48
jam(for 2.4)16:48
jambut you aren't guaranteed to have the finally happen if we stop iterating16:48
jamvila: for you other statement...16:48
jamright now bzr pull http:// *feels* slow16:48
jambecause we spend a long time buffering a huge request16:48
jama) Not consuming memory may help VM pressure, but that isn't really a primary effect16:49
jamb) It will *feel* faster because we can at least spin our little progress bars as we go16:49
jamc) you will be able to ^C even with pycurl16:49
jambecause it isn't buffering 20MB before returning control16:49
vilac) hehe, you leave me no surprise to announce ;-)16:50
vilaa) and b) should be addressed by rewriting the http response parsing16:50
jamvila: well the other fix for (c) is to give the pycurl code a python write function16:51
jamso that as it gets data, it calls back into python16:51
jamwhich can check for ^C16:51
vilajam: I know16:51
jambut I'm not sure how well pycurl handles having the callback raise an exception16:51
jamI think we could even just have a simple progress callback16:51
vilajam: realized it lately, but didn't look at how do it16:51
jamand have it still do the buffering internal to pycurl16:51
vilaregarding exption/iterators, you say that if an exception occurs in the user code, the execption can be seen in the iterator func and a simple except Exception is enough to catch it ?16:53
jamvila: no16:53
jamjust if it happens in the readv code16:54
jamin python2.516:54
jamtry/finally works16:54
jambecause when a generator is garbage collected16:54
jamit gets an exception16:54
datojelmer: ok, it worked. I'm so happy to have bzr-svn. :-)16:54
jambut that construct is *illegal* in python2.4 :*(16:54
jam:'(16:55
jamhmm. what is the tear smiley?16:55
jamI guess Colloquy doesn't have it16:55
vilabah, garbage collection is far too late for me, I should clean the http socket before reusing it for another request while in the same time not trying to read too much if it's clean ;-/16:55
jelmerdato: cool :-)16:56
vilawell, thanks for the explanation, the easy way does not work then16:56
jamvila: I'm not talking GC as in python interpreter shutdown16:56
jamI mean as soon as it is no longer referenced16:56
jamaka, the calling code has had an exception16:56
jamvila: I wouldn't try too hard16:57
jamI think we will always consume everything16:57
jamexcept when we have an unrecoverable error16:57
jamI suppose you could set a flag16:57
jamwhich tells the HTTPTransport whether it is clean16:57
jamand set it to false at the beginning of readv()16:58
jamand only set it True if you get to the end.16:58
vilajam: hmm, not trying too hard and get blamed when the next hhtp request fails :-)16:58
jamvila: I'm always happy to blame you16:58
vilajam: yeah sure, but just  an expect clause is easier and cleaner16:58
vilajam: that's a good start ;-)16:58
jam"expect" or "except"16:59
vilaexcept of course16:59
vilamost of my typos occurs because the brain->fingers socket is UDP17:00
jamhave you ever been checked for Dyslexia ?17:01
jam:)17:01
vilahave you ever been trying to change you keyboard mapping between azert and qwerty hundreds times by day ? ;-)17:02
jamvila: I have gone from dvorak to x,dokt17:02
jamoh, I mean qwerty :)17:02
vilaI now use only qwery keyboards but the harm is done ;)17:02
jam,dppw G hslqk vls, ,jak tsf mdal17:02
jamGq.d ld.do jah rosnpdm; ,gkj vdtmar;17:02
jelmerjam: Why'd you decide to go back?17:02
jam(I don't know what you mean, I've never had problems with keymaps)17:03
jamjelmer: I still use dvorak primarily17:03
jambut it is hard to touch type with one hand17:03
* jelmer has attempted to switch to dvorak a couple of times17:03
jamwith a baby in the other17:03
jelmerbut I just get so annoyed after a couple of days that I switch back17:03
jamwhen you have a qwerty keyboard in dvorak mode17:03
jamjelmer: it took me 1 month to get back to real speed17:03
jamI had a slow month one time when my wife was away17:03
jelmerjam: There's single-handed dvorak as well :-)17:03
jamjelmer: sure, but try getting that on the keyboard :)17:04
jamAnd it is also a left form17:04
jamand a right-form17:04
jamand the baby goes both ways too17:04
jamso I would need keys with dynamic labels17:04
jelmer:-) More keymaps to learn...17:04
jamwhich would be really cool17:04
jamsome other oddities17:04
jamthe "A" and "M" keys don't move17:05
jamso it is really easy to switch to the wrong keyboard after typing one17:05
jamBut Typing Tutor showed my WPM rate to be huge on those keys17:05
jamI would be like 10-20 WPM for most keys17:05
jamand then Spacebar was about 9017:05
jamand A & M were still in the 70 range17:05
jamthe graph looked pretty funny17:05
jamjelmer: I'm pretty happy with dvorak now. And I know Martin uses it, too.17:06
jamVim was the hardest to switch between17:06
jambecause so many commands just become muscle memory17:06
jamrather than "O" or "a"17:06
jelmeryeah, I've heard from quite a few people that it's really good17:06
datojelmer: I think it'd be best if the changelog of bzr-rebase and bzr-svn would explicitly have a DD adding the DM-foo header, so it's clear it wasn't sneaked or anything. I'll put my name if you don't mind?17:06
jamWhen I switched and started getting *good*17:06
jamit felt like I was typing slower17:06
jambecause my fingers weren't moving as much17:06
jelmerdato: sure, thanks!17:07
jamWhich I felt was a good sign that it is actually less stressful17:07
* jelmer just needs to gather the discipline at some point to actually make the switch and not quit halfway through again :-)17:10
jamjelmer: well, I would switch back occasionally when I had a long email to write17:10
jelmerdid you relabel your keyboard or anything?17:10
jamI did not relabel17:11
jambut I'm a strong touch typist (now)17:11
jamIn high-school I always looked at my hands, but eventually I just grew out of it17:11
jamnot sure exactly when it happened17:11
jambut it wasn't a conscious effort17:11
jamanyway, not having the keyboards labeled actually worked well for me17:11
jamI do have a keyboard with the labels moved around now17:12
jambut I couldn't move the "F" and "J" keys17:12
jambecause they have the little dots that you put your fingers on17:12
jamand I accidentally switched the V and W17:12
jamand haven't gone back to fix it.17:12
jam(Which is a pretty big issue because ^W is close window, while ^V is paste text)17:12
jamnot something you want to mix up.17:13
jelmer:-)17:17
ubotuNew bug: #172861 in bzr "add: accepts aliases due to case insensitivity" [Undecided,New] https://launchpad.net/bugs/17286117:35
ubotuNew bug: #172865 in bzr "commit: fails to detect deletion of aliased file" [Undecided,New] https://launchpad.net/bugs/17286517:45
ubotuNew bug: #172870 in bzr "'bzr fetch' broken" [Low,Triaged] https://launchpad.net/bugs/17287018:06
mwhudsoner18:44
mwhudsonbzr --no-plugins selftest test_build_and_install18:45
mwhudsonfails for me on bzr.dev18:45
mwhudsonoh duh18:45
mwhudson./bzr18:45
mwhudsoni'm always doing that18:46
datoOH GOD18:48
datothis is *so* fast18:48
datocommiting in bzr.dev with packs18:48
mwhudsonabentley: should revisiontree have case_sensitive = True somewhere?18:50
=== mw is now known as mw|wicked-busy
=== kiko-zzz is now known as kiko
mwhudsonhow long should i expect reconciling bzr.dev (with bzr.dev) to take?19:14
mwhudson(in a knits repo)19:15
dato16:27 <jam> Though bzr reconcile should be better than it used to be19:17
dato16:27 <jam> The last time I reconciled, it took about 1hr19:17
mwhudsonthanks19:19
mwhudsonthe progress bar is doing funny things :)19:19
jammwhudson: it depends a lot on hardware. I don't think I've tested it after Robert's latest improvements19:30
jambut just prior to that, my desktop was about 1.5hrs and my laptop was 2-3hrs19:30
mwhudsongoing for 28 minutes here19:30
mwhudsonand the progress bar is almost all the way across19:31
mwhudsonfor the second time :)19:31
mwhudsonoh wow, just finished19:31
mwhudsonso must have been ~30 minutes19:32
mwhudsonnot bad at all19:32
mwhudsonfooey19:37
jam?19:37
mwhudsonmy upgrade to packs broke19:37
mwhudsonbzr: ERROR: Revision {('aaron.bentley@utoronto.ca-20070517163555-3i7jamitmffdg85l',)} not present in "<bzrlib.knit.KnitGraphIndex object at 0x4cb3ed0>".19:37
mwhudson/home/mwh/src/bzr/bzr.dev/bzrlib/lockable_files.py:110: UserWarning: file group LockableFiles(<bzrlib.transport.local.LocalTransport url=file:///home/mwh/src/bzr/.bzr/repository.backup/>) was not explicitly unlocked19:37
jamthat isn't good19:38
jamis that from a 'bzr check' ?19:38
jammwhudson: how did you get that error?19:39
mwhudson"time ./bzr.dev/bzr upgrade --format=rich-root-pack"19:39
jamso the upgrade itself failed19:39
mwhudsonyes19:39
jamhmm.. rich-root-pack will have to rebuild all of your inventories19:39
jamare you sure you don't want pack-0.92 ?19:40
mwhudsonnot really no19:40
mwhudsonlet me try that instead19:40
jamIt still shouldn't fall over and die19:40
jambut we should start with 1 step at a time19:40
jammwhudson: if you have been using bzr-svn in that repository, you probably *have* to use it, though.19:41
mwhudsonindeed, if this works i can try upgrading again19:41
mwhudsonok, so _that_ went rather more smoothly19:42
jamwell, pack-0.92 just has to do a very simple transformation19:43
jamactually, I think it can just shove the inventory data over verbatim19:43
jambut for the file data19:43
jamit gunzip, split & strip, gzip19:43
jam(it strips the annotation lines.)19:43
mwhudsonoh, is pushing from knits to packs still terrible?19:46
mwhudsoner19:46
mwhudsonpacks to knits19:46
jammwhudson: not as terrible19:46
jamIt has to add the texts one by one19:47
jambut it doesn't rebuild the whole history of each modified file19:47
mwhudsonjam: ok19:47
jamI'm using it right now19:47
jam(my local repos are packs, bound to a knit repo)19:47
mwhudsonoh, actually this is a fairly big push i'm doing19:47
igcmorning19:56
jammorning igc19:59
igchi jam19:59
jamenjoying OSDC?19:59
igcexcellent19:59
igcall finished now19:59
ubotuNew bug: #172893 in bzr "test_lock_permission selftest fails" [Undecided,New] https://launchpad.net/bugs/17289320:00
mwhudsonyah, ./bzr.dev/bzr upgrade --format=rich-root-pack fails starting from packs-0.9220:04
mwhudsoni guess that's a bug or something20:04
jamor you might still have inconsistent data, and the plain upgrade to packs doesn't notice20:06
jamcan you try running 'bzr check'?20:07
jamIt is probably a bit slower than 'bzr reconcile', though.20:07
mwhudsonin a bit20:07
jamthanks20:07
lifelessmmoin20:09
mwhudsonactually it fails in 0.3 seconds :)20:09
mwhudsonoh, partial upgrade20:09
beunoabentley, when you got a minute, I'd like to have a quick chat with you over this whole XML thing if possible. Seems easier then through the ML20:09
lifelesshi statik20:18
beunoI'm pulling bzr.dev to my current local knit repo and it's *extremely* slow (I'm at revno 3021 and it's been ~25 minutes and I'm < 10% through)20:26
beunois this an expected behaviour due to the change to packs?20:27
lifelessbeuno: what revno are you using to pull?20:27
beunolifeless, I'm at 3021 and I just did "bzr pull"20:27
lifelessbeuno: there was a bug where it reannotated too much, which you could be experiencing20:27
beunowould it be useful if I canceled and debuged somehow, or is it solved?20:28
datobeuno: jam recommended me to pull a new fresh branch20:28
lifelessbeuno: looks like that is not the case20:29
lifelessbeuno: don't stop it20:29
lifelessbeuno: look in  ~/.bzr.log20:29
lifelessis there http readv log output20:29
lifelessif so, look for 'error...retring with one request' after a large collapsed readv count20:29
beunolifeless, yeap20:30
beunohttp readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 14 collapsed 420:30
beunoGET: [http://bazaar-vcs.org/bzr/bzr.dev/.bzr/repository/packs/a3069b4df97462558e8666ff0cc72386.pack]20:30
beunohttp readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 15 collapsed 420:30
beunoGET: [http://bazaar-vcs.org/bzr/bzr.dev/.bzr/repository/packs/a3069b4df97462558e8666ff0cc72386.pack]20:30
beunohttp readv of a3069b4df97462558e8666ff0cc72386.pack  offsets => 14 collapsed 520:30
beunoGET: [http://bazaar-vcs.org/bzr/bzr.dev/.bzr/repository/packs/a3069b4df97462558e8666ff0cc72386.pack]20:30
beunolots of those20:30
lifelessbeuno: so each of those is reading one text20:30
lifelessbeuno: then it gets annotated and inserted into your local repo20:31
beunolifeless, right, so it's a "known bug". Can we make use of this case in anyway, or should I follow dato's suggestion and re-branch?20:31
lifelessbeuno: I would reconcile and upgrade to packs, then pull. No need to rebranch20:33
beunolifeless, will do, thanks20:33
=== cprov is now known as cprov-out
lifelessjam: ping20:41
jamlifeless: pong20:41
lifelesshow are you going on the pull bug20:42
jamdoing okay20:42
jamgetting sidetracked again because bzr+ssh is taking 6s to copy 2MB on my loopback20:42
lifelessthat will be the data stream api sucking on bzr:20:43
jamsftp is taking 700ms20:43
jambut on my server it is 244ms20:43
jamfor bzr+ssh20:43
lifelessoh20:43
lifelesspush or pull20:43
jamand 358ms for sftp20:43
jamtransport.get_bytes()20:43
lifelesspull20:43
jamI don't know if Mac is just really Fubar20:43
jamor if we are provoking it20:44
lifelessdo you want me to take over the patch then ?20:44
jamI'll finish it up20:44
lifelessok20:44
jamjust frusttrating to use bound branches20:44
jamwhen every commit is taking > 6s20:44
jambecause it is loading the remote index20:44
lifelessI'll are they packs?20:44
jamremote is still knits20:45
lifelesswell then20:45
jamI want to test the pack => knit stuff20:45
lifelesspacks -> partial indices.20:45
jamsince it exposed some real issues20:45
lifelesskk20:45
jamweird, the Pack=>Pack code isn't being tested by interrepository_implementations20:56
jamI'm adding it, since the way you had me set up the test is portable across all repos20:57
lifelessare you sure ?20:57
jam(with the rule that you either have to copy the basis text, or you have to fail)20:57
jamlifeless: InterPackRepo isn't listed in __init__.py20:57
lifelessI am positive I have test failures within interrepository when I bugger up pack to pack20:57
lifelessjam: which __init__ ?20:57
jamhmm... you are using InterRepository._optimizers20:57
lifelessright20:57
lifelessdynamic registration -> tests20:58
jaminterrepository_implementations/__init__.py20:58
lifelessso that plugins get tested too20:58
jamlifeless: I don't think it is working as you expect20:58
jamsince it wasn't testing that code20:58
lifeless__init__ only lists specific manual combinations where the dynamic stuff isn't sufficient20:58
jamuntil I manually added it20:58
jamhmm.. maybe20:58
jamI'll take a closer look20:58
lifelessit may have been masked by poolies nuking the default repository format attribute; unlikely but possible; run with -v20:59
jamUnfortunately the ids only show you the inter object20:59
jamso Knit1 => Knit3 is just InterKnit20:59
lifelessright20:59
lifelessso if -v shows InterPack20:59
lifelessthen it thinks its testing it20:59
lifelessbut if its not failing, something is masking it.21:00
jamyou're right21:00
jamand it seems like Pack=>Pack is the only thing that fails21:00
jamPack => Knit is file21:00
jamfine21:00
jamand Knit => Pack is fine21:00
lifelessprobably incorrect parameterisation - some aspect of the format isn't actually one that will cause it to match21:00
jam(Probably because both use the Knit=>Knit code)21:00
jamlifeless: it is present, and it is failing21:01
jamI just thought I should see more failures21:01
lifelessjam: good; why did you think it wasn't being tested :)21:01
jamOnly 1 fail21:01
jamI thought it was a Pack => knit21:01
jamor knit => pack21:01
lifelessno, they do the dumb recursive-join-of-versioned-files stuff21:01
lifelessremote* uses data streams21:02
jamso do we need an inter that goes through Remote ?21:02
jamby the way, we use pack_repo.Packer() to do the fetch21:04
jamis this going to conflict with your latest revising of that code?21:04
jamI suppose I can just review your patch21:04
jamand get it merged21:05
kiko 1366 kiko      15   0  302m 300m 2812 R    6 14.9   0:59.62 bzr21:06
* kiko tells bzr to stop growing21:07
jamkiko: what are you doing? and what version of bzr are you doing it with?21:07
jam(reconciling launchpad code with an older version of bzr is not recommended)21:07
kikojam: just a bzr branch21:08
jamfrom/to ?21:08
jam(that said, at the moment, if you are using http we will buffer all requests before processing them.)21:09
lifelessjam: there are two21:13
lifelessjam: two and from21:13
lifelessjam: my reconcile patch contains most of the code you need.21:14
jamI'm trying to review your "trivial syntax error"21:14
lifelesskiko: what version of bzr  ?21:14
jamwhich I think is your reconcile patch21:14
lifelessjam: yes; see the prior email for the cover text21:14
kikoBazaar (bzr) 0.91.021:15
kikojam: a local branch of launchpad from a local rsynced launchpad21:15
kikono repo21:15
lifelesskiko: use bzr.dev; I think you'll find its a lot more efficient on memory21:15
jamlifeless: it is a little bit hard to track down what actually changed versus what is just mechanical21:25
jamsince you split the functions up21:25
jamI can certainly check ReconcilePacker directly21:26
jambut any hints for just plain Packer ?21:26
lifelessoh21:26
lifelessso, in plan Packer there are no changes, just shuffling21:27
lifelessthere is one new method in Packer, which is useful to you21:27
lifelessbut not actually called21:27
lifelessthats the external_text_references method21:27
lifelessit might be better on Pack actually; still - its the thing you need to determine what external texts you need to reconstruct all the texts in the pack21:28
jamlifeless: "external_compression_parents_of_new_texts" ?21:29
lifelessyes21:29
lifelesse.g. for the scenario we cooked up21:30
jamyeah21:30
lifelessrev B file id F deltas against rev A file id F21:30
lifelessthat should return [(F,A)]21:30
kikolifeless, where does bzr.dev live21:30
lifelessthen you can do present_external_keys = list(self._pack_collection.text_index.combined_index.iter_entries([(F,A)]))21:31
lifelessif len(present_external_keys) != len([(F,A)]):21:31
lifeless   error here21:31
lifelesskiko: http://bazaar-vcs.org/bzr/bzr.dev, or lp:bzr21:31
kikolifeless, and debs?21:33
lifelesswe don't currently build debs of bzr.dev21:33
kikoah, I see21:34
lifelesskiko: you know you can run from source trivially -21:34
kikoyeah, I know21:34
beunolifeless, I reconciled and did: "bzr upgrade --format=knitpacks-experimental", and it's still taking forever to pull with the same feedback in ~/.bzr.log.  What could I have done wrong?21:36
lifelessbeuno: do you have a shared repository? did you actually upgrade the repo and not just a branch?21:37
lifelessbzr info will tell you21:37
beunolifeless, aaaaah, yes, shared repo21:37
beunothat might be it21:37
beunodoing the same with the shared repo21:38
lifelesshi jrydberg21:41
=== jdahlin_ is now known as jdahlin
* igc breakfast22:00
pooliemorning22:13
beunohello again22:16
beunoupgrading to packs22:16
beunoand I'm getting this: http://paste.ubuntu-nl.org/46275/22:16
beuno(the shared repo has already been reconciled and upgraded)22:19
jamwell, it seems the reconcile is seeing nothing to do22:20
jambut I don't know why it is trying to remove the un-added pack from the memory index22:20
jambeuno: so (a) the error is "harmless" your data is good22:20
jam(b) I'm guessing Robert's new code (which I'm reviewing now) is going to change all of this anyway22:21
lifelessbeuno: what version of bzr are you doing that with ?22:21
lifelessbeuno: oh, yes. you can't reconcile packs without my patch22:21
lifelesshhi poolie22:21
lifelesspoolie: I've changed the deefault; patch up for review22:21
poolieok, thanks22:21
lifelesspoolie: I'm working on 165106 now22:22
datobug #16510622:22
ubotuLaunchpad bug 165106 in bzr "check that get_data_stream distinguishes annotated and unannotated knits" [High,Invalid] https://launchpad.net/bugs/16510622:22
lifelessnearly done22:22
pooliei didn'tread the reconcile patch now, but will soon22:22
beunolifeless, latest bzr.dev22:22
beunofreshly pulled22:22
jamlifeless: generally it seems good22:22
beunolifeless, it's actually a knit branch with a shared-repo with packs22:23
jamThere are a couple confusing things which should probably be documented22:23
jamand a small bug in some error handling code22:23
jamlifeless: and I would like to build on your patch, but I think I can do it without any cleanups22:24
lifelessjam: feel free to +1, then merge it into yours and build on it and cleanup at the same time :)22:26
lifelessjam: no point serialising your fixes to me then me deserialising and doing22:26
lifelessjam: unless its easier for you22:26
jamlifeless: as long as you are okay with my comments22:26
jamI've already bb:tweak ed it22:26
lifelessref-keys is missing_texts22:29
jamI'm planning on merging your code into my branch22:29
lifelessk22:29
jamit should be fine as is22:29
jamfor what I need22:29
lifelessso your comments and questions are good22:29
lifelessthis is unannotated so the ordering stuff is moot22:29
jamother than "locality of reference" but sure22:30
lifelessyah22:31
lifelessbut this is meant to be rare22:31
lifelessthe _use_pack stuff looks correct to me; its a little redundant is what I think you are saying22:31
jamlifeless: correct22:32
lifelessthe knitversionedfile index stuff I'll write up for you22:32
jambut also I meant to point out you could check the indexes there22:32
lifelesswell we don't want to have to compare 10's of thousands of keys22:33
lifelessbetter to set a flag when we notice a problem22:33
lifelessand not all issues will show up in the indices22:33
poolielifeless, did you fix the switch thing implicitly to change the format?22:48
pooliei think there were no other failure22:48
poolies22:48
lifelesspoolie: I fixed the switch thing yes22:49
lifelesspart of the same patch22:49
poolielifeless, spiv, igc, jam: one minute to call22:59
igcsure22:59
vilaspiv: have you looked at my comment on bug #172701 ?23:30
ubotuLaunchpad bug 172701 in bzr "Large readv requests can fail if there is a squid proxy" [High,In progress] https://launchpad.net/bugs/17270123:30
spivvila: Thanks; I just saw it.23:32
spivvila: I'll try again with pycurl.VERBOSE.  Also I'll try capturing the actual HTTP requests/responses involved, both before and after the proxy.23:32
lifelessvila: I knew spiv had a proxy23:33
lifelessvila: I was doing divide and conquer23:33
vilalifeless: oh, I hoped you had an insight...23:33
spivvila: in case it helps, my proxy is an intercepting proxy (i.e. the client thinks it is connecting to port 80 of bazaar-vcs.org, but it actually connects to squid).23:33
spivlifeless: you wanted to figure out which software of yours to blame? ;)23:34
vilahehe23:34
vilaspiv: anyway, there is a bug here since we should have catched the short read and issued another request (the new implementation will catch it, but I want to to give a try to read-as-we-receive before submtting)23:36
vilagood night all, kudos for the hard work of the last days23:37

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