ocharles: when you return.. I think we may want to make lolo a READ ONLY DB slave, so we can spread the load a little.
pgbouncer can help with that right?
Prophet5 joined the channel
ruaok joined the channel
ocharles: ping
ocharles
ruaok: pong, free in ten minutes just on the phone atm
ruaok
k
ocharles
but I don't think pgbouncer can help with that
ruaok
I know people use this configuration. how do we do that?
if you can look into that, that would be awesome.
I will head to DWNI to start on pingu and totoro.
nikki
ocharles: apparently the caa.org/beta/ urls don't work
ocharles
ruaok: you need your code to know when it's only doing read only work
ruaok
I wonder if we take the most popular ws/2 call and point it elsewhere? would that help?
ocharles: think about it.
I;m heading to DWNI
if you need me, use gtalk mayem@ plz
ocharles
ruaok: i have thought about it, it's a hard problem :)
warp
nikki: fixed.
nikki
warp: thanks
warp
the easiest would be to run a seperate musicbrainz-server, point that at read only. and do the routing in nginx.
(if we can identify a certain class of webservice requests which are always read only)
ocharles: I guess an authenticated webservice request will need to write last_login_date
kepstin-work
iirc, there's really only a couple ws calls that aren't read-only, right?
nikki
wouldn't all GETs be read-only?
warp
(or however the column is called)
kepstin-work
stuff like the isrc submission, etc.
warp
nikki: quite possibly not if they're authenticated.
kepstin-work
I mean, it's not like we have an editable webservice :)
nikki
I thought ian said we're not using last_login_date now?
kepstin-work
oh, right, most queries can be authenticated to get user tags :/
warp
kepstin-work: they can even be authenticated if the authentication isn't used for anything.
kepstin-work
i suppose picard probably just authenticates all requests if you give it a user account, eh
warp
kepstin-work: so just checking for inc=user-tags isn't enough.
if the last_login thing isn't updated, it shouldn't matter.
kepstin-work
can you detect any headers added for authentication, maybe?
nikki
when he checked the other day, it hasn't been updating it since we released ngs
kepstin-work
since all write calls need authentication
nikki
and if it's taken 2 years for anyone to notice, it doesn't seem very useful anyway :P
warp
yes, I think we can route based on /ws/2 + no authentication headers. in theory.
nikki: it was just put to use in the whole password reset fuss.
nikki
I said "not very useful", not "not at all useful" :P
ocharles
last_login_date is updated since the password problems
warp
I do not acknoledge this theory of usefulness not being binary ;)
ocharles
anyway, yes, it's obviously easy to say "just make non-authenticated GETS load balance" but I'd like a stricter heuristic
nikki
warp: that's your problem then :P
ocharles
I'd /really/ like to have decent effect typing in the data layer to say "this is a read only transaction" which would fail at compile time if you try and write inside it
warp
ocharles: right. but mb server is not written in haskell :)
ocharles
warp: and that is why I haven't done any work on this :)