#foswiki 2012-09-10,Mon

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)

WhoWhatWhen
pharveyargh [01:38]
gac410howdy pharvey - looong time no talk :) [01:38]
pharveyindeed [01:38]
gac410Hope all is well [01:38]
pharveysuffering temperature shock, 40+ C in the great sandy desert, to... well, Canberra.
how are foswiki things?
[01:38]
gac410wow
okay I guess. It's been somewhat quiet lately.
[01:39]
pharveybecause I've been away! Haha. [01:39]
gac410yikes [01:40]
pharvey, I introduced a behavior change into wysiwyg - not sure how to even think about it. By treating all links as true TMCE links, if the user just types over the wikiword, it changes the link text but does not update the link. You must click the chain link button [01:52]
SvenDowideitoh dear, I've started to benchmark Data::Foswiki, and I've found what might be a ~70% speedup to reading topics into a hash
but of course, the naf way Foswiki::Meta does it is an even slower version of my original impl
[01:59]
FoswikiBothttp://trunk.foswiki.org/System/PerlDoc?module=Foswiki::Meta [02:00]
gac410careful not to disrupt airflow or remove too much lifting surface while remodeling the plane in flight
:)
[02:01]
SvenDowideitgiggle
next up, I wonder what a C impl could do :/
[02:01]
gac410bah - assembler. you can really optimize there. [02:03]
SvenDowideitthats unrealistic, only because perl is ported to so many archs
though you're right, I would want 'use Data::Foswiki;' to pick the impl that is fastest on that system :}
[02:04]
gac410Just joking, really. The only assembler I was proficient in ... decades ago ... was BAL (IBM 360 / 370 assembler) [02:04]
SvenDowideitso you can implement an asm version that flies on your arduino
i stopped caring after x86, arm and 80196
SvenDowideit is a youngling :p
[02:05]
gac410I never bothered to learn the microprocessor assemblers. [02:06]
SvenDowideit80196 was for our robotics thesis :)
arm was for curiosity, in the late 90's and x86, well, its was useful when dealing with windows SW
[02:06]
pharveyI did 9s12 at uni (cousin of Motorola 68HC11/12, a 16-bit embedded thing), and m68k at home.
weirdest is PIC, it's barely turing-complete :P
[02:11]
SvenDowideitoh, true, those 2 [02:11]
gac410BAL was more like a high level language compared to the micros. native decimal arithmetic, as well as expected integer and floating. large block data commands. [02:11]
SvenDowideitand z80 as a child [02:11]
pharveyI sincerely dislike x86 asm, compared to the simple moto MCUs :) [02:13]
SvenDowideiti think most people agree
tho 80196 was a fun thing in 95
[02:13]
.... (idle for 18mn)
pharveypharvey repairing a zilog-powered thingy next week [02:32]
SvenDowideiti really don't grok regexs
precompiling them makes my deserialisation 1% slower
wow.
guess which is faster
$hash{$1} = $2;
or
$hash{'same strin as in $1'} = $2;
[02:35]
gac410:P damn cell phone network [02:39]
pharveySvenDowideit: I'd expect string-literal to be immeasurably faster by an infinitesimal amount, but from your mutterings I assume the opposite is the case [02:40]
SvenDowideityup
i expected the same as you
but its 1-3% fster to use $1
[02:40]
pharveyand that's real benchmarking? Not just measurement noise? [02:41]
gac410Which perl? Didn't precompiling perl become less useful in the newer perls? [02:41]
SvenDowideitits consistently the case
5.14.2
[02:41]
pharveyI wonder if $1 ends up optimized into some register somewhere, versus having to copy the string-literal out of somewhere [02:42]
SvenDowideitI'm using Benchmark, and min of 4s run for each code
pharvey, bingo :)
it means that
m/\%META:(TOPICINFO){(.*)}\%\n?$/
is faster than
m/\%META:TOPICINFO{(.*)}\%\n?$/
[02:42]
pharveypharvey lost 15kg last month, babysitting trainees and climbing 10m of drill floor a few times a day apparently is almost the same as real exercise [02:43]
SvenDowideitbut m/\%META:(\S){(.*)}\%\n?$/ && $1 qe 'TOPICINFO' is slower by far [02:43]
gac410Are you using qr/ / notation or /o to optimize? Seems to be some suggestions that /o is deprecated in favor of using qr// [02:44]
SvenDowideitpharvey, awesome!
gac410, both wr// and /o were slower again
qr//
which is also counter to sanity
[02:44]
gac410wow. [02:44]
SvenDowideitok, i take that back
i have to re-bm those without using 'TOPICINFO'
[02:44]
pharveyI'm getting hammered by users who are finding our wiki even more choppy in performance than usual [02:45]
SvenDowideitpharvey, not good [02:45]
pharveyusually on saves/attach
time to try PlainFileStore
[02:45]
SvenDowideiti'm working twards an in-memory DBD store, [02:46]
pharveyjust wish I could reproduce the damn problem [02:46]
gac410Have you seen all of Micha's optimization done on trunk? [02:46]
SvenDowideitbut that won't change save i think [02:46]
pharveyI haven't reviewed commits yet [02:46]
SvenDowideitok, qr// is essentially the same as just using the regex
which means for a program that uses few regexs, its clever as all heck
[02:47]
.......... (idle for 45mn)
ohdear.
my @text = @_; is a terrible thing to do
[03:32]
pharveySvenDowideit: Development.JordanKoppoleWouldLikeToCheckIn [03:33]
SvenDowideiti missed that completely :/
i just made my Data::Foswiki 1200% faster than my initial impl
[03:33]
pharveydock his pay! [03:33]
SvenDowideitand i recon my initial impl was at least 200% faster than foswiki's [03:33]
pharveypharvey tries to remember what a Data::Foswiki is [03:34]
SvenDowideiti released it yesterday :p
or was it last week
https://metacpan.org/module/Data::Foswiki
[03:34]
pharveymy brain is full of solder fumes and chromatograms
ooOOoh
[03:34]
gac410Seemed to have no track record on foswiki. Has he been on irc at all? [03:34]
SvenDowideiti started on making a DBD::AnyData backend
so I can SQL query text file topics
ie, a cpan version of what DBCache does, but faster and stabler
and then i'll hook that onto DBIStoreContrib
[03:35]
pharveyhttp://foswiki.org/Tasks/Item8316 [03:36]
SvenDowideitand thus we have a text file->RAM DBD, that can be seamlessly migrated to a reall SQL engine when you need to scale to >RAM [03:36]
pharveyincidentally, I received my DataHand keyboard [03:38]
SvenDowideitand its uuuuuuugly? [03:39]
pharveypretty wasn't on my criteria for a new keyboard :P
made good progress learning the layout over the weekend, but still only ~50WPM
the real suckage is punctuation, that's going to take months
[03:39]
SvenDowideitouch
thats where the french layout is cool
numbers are shifted
puncutation isn't
love the idea, not doing it tho :)
omg.
add on /o and it goes form 1200% faster to 3000%faster?
think of the children!
[03:40]
gac410before /o was slower, now it's faster. Will you make up your mind :D [03:45]
pharveywhat does /o even *do* these days on a modern perl. It doesn't bother interpolating variables present in the regex? Can you achieve the same thing with \Q\E? [03:45]
SvenDowideithonestly, a huge pass
if you're not using 5.17, life is a crapshoot
[03:45]
pharveyI really like the concept of the DataHand, shame there isn't much market for a $500+ keyboard (although Maltron/Kinesis seem to keep existing, but their products probably have a lot lower tooling cost) [03:45]
SvenDowideiti liked the idea of the dataegg
but that quietly was just a designidea
[03:46]
....... (idle for 30mn)
mmm, i wonder why
return \%hash;
uses up 1.5s
[04:16]
pharveywhat does %hash contain [04:18]
SvenDowideitlots [04:18]
pharveyreferences? [04:18]
SvenDowideitthat too [04:19]
pharveypharvey wonders why mailnotify won't send notifications unless he explicitly names a web to notify in >:(
Last notification was at 1970-01-01T10:00:00+10:00
lame
[04:19]
SvenDowideitohwow, $_[0] is readonly
inneresting
so if the foswiki core deserialiser can read ~50 topics per second (i'm guessing) and my naive simplification 120/s
and my optimisation so far ~3200/s
er, 3350/s now
split is soooo much faster than s/same reges//g
never ever forget it :/
[04:22]
pharveysplit, indeed
yeah, so that's probably the limitation for loading into mongo too
I seem to recall about 30/s when loading up trin wiki into mongo
[04:25]
SvenDowideiti made macro parsing massivly faster using split in twiki dakar, i should have looked further :/ [04:26]
pharveyoh, mailnotify, why have you forsaken me [04:27]
SvenDowideitSvenDowideit mumbles about madness
mm, almost at 5000/s
and this is still in perl
even my $str = \@_; wastes 500mS
(when called as fast as we can for 4seconds
[04:32]
pharveyso, when I call perl -I bin tools/mailnotify -user AdminUser
for some reason mailNotify is looking for webs that are named AdminUser
[04:34]
SvenDowideitiiirc someone had somethign like this on irc in the last week
y
there is apparently no -user param
[04:35]
pharveyWTF [04:35]
SvenDowideit(i did not check, just recalling reading backlog [04:35]
pharveythe documentation for this thing explicitly lists -user AdminUser as an example [04:36]
SvenDowideiti have no idea, just recalling (plausibly poorly)
atm, i'm wondering if i can get deserialisation up to 10,000 topics per second
[04:37]
pharveyI don't see any code handling a -user arg [04:37]
SvenDowideitit'd be in the core proper i think
mmm, 5076/s
caonverting to a ref looks to be a bad idea
hell, even creating a my %hash; is a bad idea
aha, i lost somethign in rtanslation
back to 4600/s
[04:37]
pharveyItem12072 [04:43]
FoswikiBothttp://foswiki.org/Tasks/Item12072 [ Item12072: MailerContrib no longer has a =-user= arg? This breaks old installations, documented examples ] [04:43]
......... (idle for 44mn)
SvenDowideiti just got another 50 topic reads / second by changing a for loop
from for(my $i=0 to for(my $i=1
mumbles
[05:27]
.......... (idle for 48mn)
heya CDot
I wrote a really naive simplified embedded topic file reader and published it as Data::Foswiki on cpan
it gets a whopping 100 topic reads per second
i think the core one gets ~50/5 or less, as it calls that morass of Meta stuff to carry indexes we don't really need
I spent the arvo poking my impl, and now have it up at a dismal 4800 reads / sec
(using 7 interesting topics in the foswiki release tgz)
its pretty astounding and sad tho
i got over 60% of the speedup going from my @str = @_ to using $_[$i]
and other ancient painful to read things
most frustrating is that using a literal string is slower than using an already existant var
(put like that it sounds reasonable)
but ..
$str =~ /(TOPICINFO)(.*)/ ; $ref->{$1} = $2;
is faster than
$str =~ /TOPICINFO(.*)/ ; $ref->{TOPICINFO} = $2;
and guess which we tend to use
or, in the case i just did
$str[0] is much slower than $str[$start]
[06:16]
......... (idle for 42mn)
Babaroh Sven, sneex was complaining that he didn't manage to put himself into AdminGroup using Debian 6 and your packages. I tried on my vagrant box, installed your package, it worked just as expected. So in case he complains again, he must be doing something really wrong... [07:08]
SvenDowideiti have the small suspicion that he's not got his dpkg set to not as questions
and so never sets the configure admin pwd
other than that, beats the heck out of me
cos yes, i've used it lots
SvenDowideit runs to pick up kids, then cook
[07:09]
.... (idle for 17mn)
***ChanServ sets mode: +o MichaelDaum [07:27]
......................... (idle for 2h4mn)
CDotSvenDowideit: so what's different about it?
oh right, the morass of meta stuff. Sure, makes sense.
the @_ to $_[$i] "performance boost" isn't reliable. Some code does the exact reverse.
either way, the compiler isn't doing its job if we even have to think about that. :-(
[09:31]
MichaelDaumah the man chewing up his own leg is back [09:46]
............ (idle for 56mn)
sneexwell; I'd say it deosn't matter -- stuffs like that :P [10:42]
............................. (idle for 2h23mn)
CDotMichaelDaum: have you ever heard of the "coyote system"? [13:05]
MichaelDaumCDot, hm nope. this driver community thing? [13:07]
CDothttp://www.urbandictionary.com/define.php?term=coyote%20ugly [13:08]
MichaelDaumargh
nice movie though
[13:09]
Babaryeah, awesome movie :) [13:17]
.... (idle for 19mn)
CDoty, it really dealt with some important feminist issues in a caring and sensitive way. [13:36]
.......................................................................................................................... (idle for 10h9mn)
sneexlol; /bin/configure allows Apache login but you cant save changes :P says password is incorrect [23:45]
gac410They are separate mechanisms sneex.
Did you use dpkg command to set the configure password?
[23:46]
sneexlet try again (backup what I got first) [23:49]
gac410The apache login is controlled by apache configuration. *probably* requiring a specific userid or maybe just a valid userid from the .htpasswd file.
The configure save uses the password in lib/LocalSite.cfg (or on debian, maybe Foswiki.cfg somewhere in etc. )
[23:49]
sneexno it LocalSite.cfg [23:49]
gac410Debian packages install foswiki using Debian packaging standards, which for me are a total mystery. [23:50]
sneexwell my debian system is fairly standard but on this new set up dpg --configure foswiki breaks :P
I've installed foswiki with the debian packages now 9 times -- same result -- cant believe admin cant log in without manual tricks but cant change configs ether
[23:55]
gac410Okay. So in your apache configuration, there should be a FileMatch section for bin/configure. In there should be a "require valid user" or maybe "require user admin" as well as it should point to a .htpasswd file somewhere.
Is that all correct?
I'm guessing that is right, because you can login and get to bin/configure.
So part 2. In your LocalSite.cfg should be a line $Foswiki::cfg{Password}='some hash';
If you *delete* that line, configure will prompt you for a new password. It will NOT UPDATE the .htpasswd file. So it should have no effect at all on the login. Only the save.
[23:57]

↑back Search ←Prev date Next date→ Show only urls(Click on time to select a line by its url)