Experimental IRC log happs-2007-07-11

Available formats: content-negotiated html turtle (see SIOC for the vocabulary)

Back to channel and daily index: content-negotiated html turtle

These logs are provided as an experiment in indexing discussions using IRCHub.py, Irc2RDF.hs, and SIOC.

01:05:10<blackdog_>SimpleHTTP2 doesn't seem to build in the latest version
01:05:51<Saizan>which error do you get?
01:06:01<blackdog_> Couldn't match expected type `Either req (IO result)'
01:06:02<blackdog_> against inferred type `IO (Either req response)'
01:06:16<blackdog_>oops
01:06:17<blackdog_>src/HAppS/Protocols/SimpleHTTP2.hs:91:37:
01:06:22<blackdog_>line number would be useful, hey :)
01:07:19<Saizan>mh i've that line commented out
01:07:38<blackdog_>... oops.
01:07:42<blackdog_>yeah, sorry, that was me playing around before
01:07:48<blackdog_>ACTION blushes
01:08:33<Saizan>where you trying to get Requests printed on stdout?
01:08:40<Saizan>*were
01:08:53<blackdog_>yep
01:09:08<blackdog_>but i think that was the bug you were talking about with not closing the connection
01:09:35<blackdog_>hm, is there a darcs command to make sure you have a pristine repo?
01:09:42<Saizan>no, that was lower level, in Helper.hs
01:10:01<shapr>blackdog_: It's generic-xml now
01:10:05<blackdog_>yeah - i was trying to work out what was actually happening
01:10:06<blackdog_>shapr: hi dude
01:10:08<blackdog_>yeah, i found it
01:10:09<shapr>It's in hackage, but the public repo is being difficult.
01:10:13<Saizan>you can use darcs revert to undo your unrecorded mods
01:10:18<blackdog_>ah, nice. thanks.
01:10:41<shapr>blackdog_: y0, the post brother ranzo guy showed up on #haskell-blah
01:11:03<blackdog_>oh, really? Why?
01:11:36<Saizan>blackdog_: ,Handle (\req -> (addSideEffect 1 $ logM "HAppS.Protocols.SimpleHTTP2" INFO (show req)) >> request req) <-- i've this in my app to log requests without interfering with the rest
01:11:59<blackdog_>actually he was pre-brother as well - i don't think my boss could find another tech for the rates he wanted to pay :)
01:12:10<blackdog_>thanks Saizan, i'll have a play
01:12:19<Saizan>even if i think this should be handled inside HAppS like before
01:13:28<Saizan>ah, import System.Log.Logger
01:14:27<blackdog_>sweet, works a treat
01:14:41<blackdog_>at last i can get to making HAppS do something useful :)
01:15:10<Saizan>unfortunately it doesn't if you get a server error in a later Handle
01:35:06<blackdog_>hey, has anyone tried doing serious stress testing of HAppS?
01:35:27<blackdog_>i tried with ab, but ab craps out before HAppS does - too many open files...
01:41:39<Saizan>is that good?
01:45:06<blackdog_>well, i guess the problem is that i'm running the benchmarker on the same machine that happs is running on
01:45:21<blackdog_>i should probably fire up another box and let it play the aggressor :)
01:45:59<blackdog_>but in my highly unscientific tests, it's marginally faster than apache.
01:46:08<blackdog_>not that that means a lot
01:46:21<Saizan>serving a static file?
01:46:24<blackdog_>yeah
01:47:09<blackdog_>but i suspect the advantage is more that it won't fall over when you chuck a million connection attempts at it
01:47:20<blackdog_>did you see the Yaws/Apache comparison?
01:47:27<Saizan>no
01:47:53<blackdog_>http://www.sics.se/~joe/apachevsyaws.html
01:47:55<lambdabot>Title: Apache vs. Yaws
01:49:07<blackdog_>summary: if you have one process per connection, you're going to get into trouble at high load...
01:50:41<Saizan>eheh, not hard to imagine ;)
01:52:00<Saizan>uhm i'll get some sleep, it's almost 4 am here.. 'night
01:57:44<blackdog_>night mate
14:43:21<shapr>tuukkah: Ok, darcs get http://happs.org/HAppS/generic-xml works.
15:17:00<tuukkah>shapr, thanks! sorry for the trouble
15:17:17<shapr>No worries
15:19:10<tuukkah>now we're trying to figure out how to write a file to a directory and if that succeeds, store the filename in the state
15:20:03<shapr>There's a BIG change coming to HAppS about now...
15:20:08<tuukkah>i'd expect there to be something like atomically
15:20:20<shapr>Have you seen the update/query change?
15:20:47<tuukkah>i don't think so
15:21:30<shapr>Got the patches from the last day or two? Seen the new example(s)?
15:21:56<tuukkah>i suppose i should look inside them :-)
15:59:21<tuukkah>shapr, i'm looking at the patches available at http://happs.org/HAppS and i don't know which ones you could mean
16:35:56<shapr>btw, I just moved the syb-with-class repo from http://happs.org/HAppS/sybwc to http://happs.org/HAppS/syb-with-class
16:36:03<shapr>Thus the repo name matches the cabal name
21:28:13<shapr>ACTION cheers happily
21:28:19<shapr>Yay, last-modified header is correct now!
21:28:29<shapr>And keep-alive is fixed with HTTP/1.0 !
21:32:13<Saizan>woah!
21:33:08<shapr>But the patches aren't pushed yet.
21:33:29<shapr>I accidentally found the problem with the keep-alive header while trying to fix last-modified, so...
21:51:28<Saizan>ah, i was going to report last-modified but thought it was firefox's fault
21:52:14<shapr>Any other things you think might be broken?
21:54:13<Saizan>well, Requests are no more logged
21:54:29<shapr>huh?
21:55:48<shapr>Ok, I just pushed the patch that fixes keep-alive and last-modified.
21:57:37<shapr>Saizan: Where were requests logged?
21:58:07<Saizan>on stdout i think?
21:58:44<Saizan>for debugging purpouses, i mean
21:58:54<shapr>Try ./$HAPPS --log-level=DEBUG
21:59:07<shapr>I just hacked in Request logging with the same patch :-)
21:59:23<shapr>Sort a necessary accident, but I like that sort of response time!
21:59:49<Saizan>:D
22:00:25<Saizan>ACTION build
22:00:27<Saizan>s
22:00:48<shapr>tuukkah: You're right, the big changes I was talking about are in a fork.
22:00:54<shapr>tuukkah: But they should be visible soon.
22:02:19<tuukkah>good to know :-)
22:04:26<Saizan>shapr: Cookie.hs strictly follows the rfc about the Cookie header format, but most clients and servers use a much more permissive parser that lets you use parens and such chars in the values
22:04:40<Saizan>i've found this using google analytics
22:04:41<shapr>Yeah, I've actually fixed that too, but haven't pushed the patch.
22:04:50<Saizan>oh ok :)
22:05:05<shapr>Good to know it's worth fixing :-)
22:06:39<shapr>Anything else?
22:08:13<tuukkah>FileServe has application/rtc for rtf files
22:08:46<shapr>What's correct?
22:08:46<tuukkah>and it doesn't decode uri escapes to get a proper filename
22:08:52<tuukkah>application/rtf
22:09:21<shapr>decode uri escapes?
22:09:35<tuukkah>like %20 in URI should be a space in the filename
22:09:38<shapr>ohh
22:12:00<shapr>rtc -> rtf is easy to fix, I'll look at uri decoding.
22:12:02<Saizan>a related thing that's not nice but it's hard to solve(i suppose) is that lookS gives you a String that's not "unicode", but has to be interpreted according to the encoding
22:12:26<tuukkah>shapr, benja_ has the function you need to call
22:12:27<shapr>Hm, I'll mention that to the other devs and see if they have some ideas.
22:12:30<Saizan>the problem is that HAppS doesn't know which encoding use..
22:13:22<tuukkah>shapr, respIO $ fileServe "uploads" . map unEscapeString
22:19:58<Saizan>i should try to crop dependecies, ld takes 120+ mb of ram to link my app..
22:20:47<tuukkah>Saizan, yeah, that hurts. especially if you want to compile on a virtual server with no memory to waste
22:22:09<Saizan>or on your desktop with not much memory from the start, in my case..
22:25:18<tuukkah>=(
22:47:45<Saizan>i wonder where instances like ToMessage Html or ToMessage RSS should be.. happs has yet many deps
22:48:00<Saizan>(RSS from bringert's rss package)

Back to channel and daily index: content-negotiated html turtle