Time Nick Message 00:20 chris_n-2nd gmcharlt: is it my computer or does git cherry-pick crawl? 01:55 gmcharlt chris_n-2nd: yeah, cherry-pick can be a little slwo 01:56 chris_n well with a mere 100 commits to go, I'll be here for breakfast... :-/ 10:11 |Lupin| hi 10:11 cait hi 10:57 greenmang0 @wunder mumbai 10:57 munin greenmang0: The current temperature in Mumbai, India is 27.0�C (4:10 PM IST on August 29, 2009). Conditions: Mostly Cloudy. Humidity: 94%. Dew Point: 26.0�C. Pressure: 29.62 in 1003 hPa (Steady). 11:11 |Lupin| @wunder Paris, France 11:11 munin |Lupin|: The current temperature in Paris, France is 20.0�C (1:00 PM CEST on August 29, 2009). Conditions: Mostly Cloudy. Humidity: 49%. Dew Point: 9.0�C. Pressure: 30.24 in 1024 hPa (Steady). 11:18 cait @wunder Konstanz 11:18 munin cait: The current temperature in Konstanz, Germany is 19.0�C (1:00 PM CEST on August 29, 2009). Conditions: Mostly Cloudy. Humidity: 37%. Dew Point: 8.0�C. Pressure: 30.16 in 1021 hPa (Rising). 13:49 chris_n @wunder Kill Devil Hills, NC 13:49 munin chris_n: The current temperature in Kill Devil Hills, North Carolina is 26.0�C (9:39 AM EDT on August 29, 2009). Conditions: Scattered Clouds. Humidity: 88%. Dew Point: 24.0�C. Pressure: 29.76 in 1008 hPa (Steady). High threat of rip currents today... 14:29 |Lupin| @wunder Paris, France 14:29 munin |Lupin|: The current temperature in Paris, France is 22.0�C (4:00 PM CEST on August 29, 2009). Conditions: Mostly Cloudy. Humidity: 41%. Dew Point: 8.0�C. Pressure: 30.21 in 1023 hPa (Steady). 14:30 |Lupin| @wunder Konstanz 14:30 munin |Lupin|: The current temperature in Taegerwilen, Germany is 20.6�C (4:31 PM CEST on August 29, 2009). Conditions: Scattered Clouds. Humidity: 39%. Dew Point: 6.0�C. Pressure: 30.14 in 1020.5 hPa (Steady). 14:32 |Lupin| @wunder Konstanz, Germany 14:32 munin |Lupin|: The current temperature in Taegerwilen, Germany is 20.6�C (4:33 PM CEST on August 29, 2009). Conditions: Scattered Clouds. Humidity: 37%. Dew Point: 5.0�C. Pressure: 30.14 in 1020.5 hPa (Steady). 17:17 jdavidb Hi, pianohackr. :) 17:17 pianohackr|work Hi, davd 18:05 chris_n pianohackr|work on Saturday? 18:05 pianohackr|work Yup, at the library. 18:06 pianohackr|work You? 18:07 chris_n at home, but cherry-picking the new labels code into 3.2 head 18:07 pianohackr|work Very nice 18:08 chris_n I had a couple of conflicts, but nothing too bad so far (knock on wood) 18:10 chris_n 'git cherry-pick -e commitish..commitish' would be very nice 18:10 chris_n doing it one at a time is verrry slooow :-( 18:11 chris_n I attempted to whip up a quick perl script to do it, but w/o success 18:15 gmcharlt chris_n: may be a bit late, but perhaps a simple git-merge may have saved you time, unless you had a bunch of other commits mixed in your branch 18:15 chris_n actually no others, just label work 18:16 chris it was from 3.0.x though right? 18:16 chris_n I did read about 'git rebase -i -into' ? 18:16 chris id expect a merge to go badly from 3.0.x to master 18:16 gmcharlt ah - yeah, if was originally developed in 3.0, would have been a more complicated merge 18:16 chris_n yes, but I setup a separate repo for 3.2 and added my 3.0.x repo as a remote 18:16 chris rebase into may have worked tho .. but id expect conflicts with that 18:16 chris_n chris: its working like a charm 18:16 gmcharlt though not necessarily *that* bad, since most of the labels code is relatively self-contained 18:17 chris_n that's it, nobody has messed with labels code for a while 18:17 chris its more the rest of 3.0.x 18:17 * gmcharlt really has his work cut out for him tomorrow and over the next few days 18:17 chris which youd get with a merge 18:17 gmcharlt yeah, isolating that could be hard 18:17 chris that i was worried about 18:17 * chris_n emphasizes if it is all this slow 18:18 gmcharlt chris_n: not the git work, the testing, really 18:18 chris_n what about the "rebase -into" interactively? 18:18 chris_n the git guru's seemed to like that for doing things like this 18:19 chris i just went for cherry-picking cos its safest :) you shoudl/could try rebase -into as well 18:20 * chris_n knocks off 75 of 117 commits... :-P 18:20 chris_n http://git.foundations.edu/?p=koha.labels_recon;a=shortlog;h=refs/heads/labels.recon 18:22 gmcharlt chris_n: and then you get to play with git rebase --interactive to squash patches, /me says hopefully? ;) 18:22 chris_n yeah, I will squash it a bit 18:22 gmcharlt chris_n++ 18:22 chris_n I ran through it on a test branch and got it down to 45 -50 commits 18:23 chris_n I figured the merge w/3.2 would go better in smaller chunks if there were real issues 18:23 * gmcharlt puts on dunce cap, finally realizes genesis of your old nick 'fbcit' 18:23 gmcharlt Foundations Bible College IT, right? 18:23 chris_n hehe 18:24 chris_n right 18:26 chris_n too bad there is not a way to pass objects between cgi script calls 18:27 chris there is 18:27 chris memcached 18:27 chris_n I've seen your patches, but havn't had time to examine the memcached thing in detail 18:27 * gmcharlt idly wonders if there's a CGI::Session::Memcached 18:28 * gmcharlt whistles innocently 18:28 chris we store sessions in memcached 18:28 chris at work 18:29 chris_n I could reduce db calls even more if I could pass things like the batch object from call to call and then call to the db once for read or write 18:29 chris yep 18:29 chris_n chris: so memcached can do this sort of thing heh? 18:29 chris chris_n: at work we cache objects (serialised) into memcached 18:29 * chris_n feels a further code re-factor coming on... :-S 18:30 chris gmcharlt: looks like that module exists 18:30 chris chris_n: we also cache html code fragments (rendered templates) and then entire pages into memcached 18:31 chris_n chris: that must really make things fly 18:31 chris yep 18:32 chris the application is in contorl of the cache too, rather than a normal caching proxy 18:33 chris_n cool 18:33 chris so when the editprs publish we can have it show up immediatley 18:33 chris_n I'll definitely take a look at memcached next week 18:33 * chris_n looks for his store of spare time 18:34 chris_n it looks like with CGI::Session::Driver::memcached we could take the session data out of the db? 18:36 chris_n chris: which memcached module are you using? 18:40 chris at work? Cache::FastMemcached 18:43 chris http://git.workbuffer.org/cgi-bin/gitweb.cgi?p=koha.git;a=blob;f=lib/Koha/DataObject.pm;h=c9212f9587a6a80af6eca56029d07ff4831ad270;hb=4f6b53948e49e753904ad69cf4adcb1e9378db53 18:44 chris this was my work for providing a base class of cachable objects for koha 18:44 chris then you have something like 18:44 chris http://git.workbuffer.org/cgi-bin/gitweb.cgi?p=koha.git;a=blob;f=lib/Koha/DataObject/Borrower.pm;h=8acfaac9cdf0acd32f88705b8327946ed3dec66f;hb=4f6b53948e49e753904ad69cf4adcb1e9378db53 18:46 chris http://git.workbuffer.org/cgi-bin/gitweb.cgi?p=koha.git;a=blob;f=rest/borrowers/single_borrower.pl;h=3c3fbfadc060ba0c0d4c8738ff8409e42ddcdb5e;hb=4f6b53948e49e753904ad69cf4adcb1e9378db53 19:14 * pianohackr|work hopes he didn't misunderstand some Selenium issue in his response to hdl 19:16 * chris_n comes back from troubleshooting the dog's invisible fence 19:27 chris_n chris: nice work; any examples of writing the modified cached object back to the db? (or did I miss it) 19:31 chris we always right to the db 19:32 chris write even 19:36 chris we create an obect from the db, store it in the cache ... subsequent scripts just get it from the cache, ... we change something save to db, invalidate cache 19:36 chris and the next script that needs it, fetches from db, stores in cache .. rinse and repeat 19:38 chris_n write 19:38 chris_n err.. right 19:39 chris :) 19:39 chris big chunks of koha, change very little, if we had a preferences object ... it could pretty much live in the cache 19:40 chris and whenever a syspref is changed, we drop it from the cache 19:40 * chris_n does agree that sysprefs seem to be a *big* chunk of koha ;-) 19:41 chris a bunch of really fast selects, but it builds up the ambient load 19:41 chris so if you had essentially a cached hashref 19:42 chris you remove a bunch of noise from the db 19:42 chris_n I bet if we could eliminate even only the duplicate selects from the db things would speed up dramatically 19:42 chris issuing rules is another one 19:42 chris we fetch that everytime we issue a book 19:43 chris_n another thing I noticed while working on labels is the times we fetch more data than we need 19:43 pianohackr|work If you changed MAIN,*,*, you'd have to invalidate the cache for everything below MAIN, but caching issuingrules could be useful 19:44 pianohackr|work chris_n: Such as GetBranches? 19:44 chris_n one call in the labels code retrieved the xml blob and never used it and for each item in the batch 19:46 chris pianohackr|work: yep, but most libraries set and forget issuingrules 19:46 chris its not something you change often 19:46 pianohackr|work True. 19:46 pianohackr|work You could really cache everything under admin 19:46 chris_n s/xml blob/marc xml blob/ 19:46 chris *nod* 19:47 chris select * 19:47 chris_n heh 19:47 chris far too many of those 19:48 pianohackr|work Caching parsed versions of notices might speed up that 19:50 chris there are chunks of html we could cache too 19:50 pianohackr|work Though that might depend on a smarter templating system 19:50 chris i started on that with the template toolkit stuff 19:50 pianohackr|work Which is a whole other ball of wax 19:50 chris yeah 19:51 chris_n "SELECT bi.*, i.*, b.* FROM items AS i, biblioitems AS bi ,biblio AS b WHERE itemnumber=? AND i.biblioitemnumber=bi.biblioitemnumber AND bi.biblionumber=b.biblionumber"; 19:51 chris_n a classic 19:52 chris_n (SELECT *)^3 19:54 chris http://git.workbuffer.org/cgi-bin/gitweb.cgi?p=koha.git;a=blob;f=lib/Template/Plugin/Koha/Cache.pm;h=64e6d5d1cb20244c75b4ad65a3b782a66ac41323;hb=4f6b53948e49e753904ad69cf4adcb1e9378db53 19:55 chris heh, that is pretty special 19:55 pianohackr|work Better get ready to go. Bye, Chris and Chris 19:55 chris cya pianohackr|work 19:56 chris_n I trimmed it down a bit in the rewrite 19:56 chris :) 19:57 chris_n there are actually a number of other improvements/enhancements I'd like to do with the labels stuff, but they'll have to wait 19:58 chris_n I should have looked more seriously at caching objects when I started out, but I'm still on the learning curve for some of this 20:08 chris we'll get there 20:09 chris i figure 3.2.0 will be a big feature release, then we can do lots of little performance improvement releases 20:09 chris before the next feature release 20:35 chris_n hi hdl_laptop 20:41 hdl_laptop hi chris_n 20:44 chris working late hdl_laptop ... more integration work? 20:44 hdl_laptop hehe... Nope. Just buying sthg online ;) 20:48 chris :) 20:53 chris im starting merging and shifting po files to 3.2 20:56 chris_n merging and shifting to 3.2 seems to be the order of the day 20:56 * chris_n also tracks the ISS and listens in to capcom comms 20:59 hdl_laptop thx chris. 20:59 hdl_laptop chris have you created Pos on reconciliation branch for 3.0.4 ? 21:00 chris not yet 21:00 chris is that stable enough now? 21:02 hdl_laptop mmm I think so. But more test needed though 21:02 hdl_laptop chris : Have you seen my selenium test patch ? 21:02 hdl_laptop I know you had done some. 21:03 chris yep, had a quick look i will test them with selenium this week 21:03 hdl_laptop Maybe it could be good to add those. 21:03 chris mine are old 2.2.x ones 21:04 hdl_laptop maybe the way they are written is just naive. 21:04 hdl_laptop Still had no chance to see how to use a YUI + button with customized list. 21:05 hdl_laptop Like New Member or New biblio record. 21:06 hdl_laptop I think the best way to do that would be to Add a Click the select 1st element in list, But could not achieve that. 21:22 * chris_n heads off to eat, bbl