I'm sorry we can't make everything perfect at once, ocharles.
ocharles
ijabz: I spent time on the ticket in question
ruaok
jira tickets, nikki !
ocharles
and trying to fit that into our current constraints spent more time than the naive solution
reosarevok
We have an Anonymous Jira user, which both nikki and me see no real point for
Apart from avoiding us from contacting ticket reporters
I mean, someone's apparently even been voting on tickets with it
nikki
we also have one weird person who keeps using the anonymous user to watch and vote on tickets
warp
we have a large community of people submitting bug reports on jira, so I expect most bugs will be reported if we disable anonymous.
reosarevok
(at least one :p)
warp
+still
so I'm ok with disabling anonymous.
ruaok
I'm ok with nuking that account.
nikki
I don't like that people have to create a second account to report stuff, but since anonymous tickets mean we can't contact people, it makes those tickets hard to deal with
warp
nikki, reosarevok: I assume one of you has enough admin power to disable it?
nikki
I see a delete link
not sure if it works :P
warp
:D
ruaok
one way to find out.
onward to NES, ocharles!
ocharles
ok, just a wrap up topic to see where we stand on this; what to do next, etc
i personally have been researching how the granularity plays in haskell, and it lends itself to some interesting graph reduction problems, but that's not very relevant :)
i see you added a few comments in the doc, but are we happy with the questions and answers in that doc?
ruaok
yes, for now.
the main point that I think we need to address now is the client perspective for the tiny granularity.
ruaok puts on ijabz' hat for a second.
ocharles
hmm, this is just data access though
it doesn't affect clients at all
ruaok
I think it does.
warp
ruaok: this is not the webservice. so you're have ijabz search server hat, not the jaikoz hat.
ijabz
i think it does in an insidious way
ocharles
only if we wrote /ws/3 at the same time
warp
yay english
ruaok
for me, ws/3 might just be a thin layer around the data access stuff.
ocharles
i still worry about doing data access/nes and /ws/3 at once
warp sides with charles.
ijabz
and the data access layer will push how the ws/3 is done
ocharles
i don't think
ruaok
I'm not suggesting that we do that.
ocharles
so
it's so granular you can easily compass into something much monolithic, if you want
but you can't go backwards, hence me advocating granularity where possible
ruaok: ok, cool
ruaok
but I am suggesting that we think about it now.
ocharles: I haven't had a chance to look at the doc since I returned.
ianmcorvidae
so working on it, but only as far as "let's try to not make the data layer break immediately when we try to do /ws/3" ?
ruaok
did you have any comments on my "make as many requests as you want, wait for results from the server async" approach?
ianmcorvidae: sure, that is one way of looking at it.
ocharles
that's actually part of what i've been working on currently, though not quite with that question in mind
I have a prototype where you can describe a graph of queries, and hand it to an engine which figures out what can be run in parallel, what can be aggregated, and so on
this was mostly for fun, but maybe it does actually relate to that
ruaok
ocharles: is it async?
ocharles
not designed with that in mind yet
because it wasn't designed for a client, but more controllers before rendering templates
ruaok
ah.
can you think about it in the context of clients?
kepstin-work
async doesn't make sense for a web service, because there's no way for a server to initate a connection to a client.
ruaok
I would love to bring the granularity to all levels of data access.
ocharles
i would, but not now. I'd like to just have /ws/2 talk to this and act exactly the same
warp
kepstin-work: it could push results back on the existing channel when they become available.
ocharles
kepstin-work: web sockets :)
kepstin-work
warp: I suppose, but then you need to add more complicated framing and request ids to id
ocharles
ruaok: really to think about this from a client side does mean I need to think about /ws/3 a lot more
ruaok
ocharles: I would like that.
ocharles
i can do that if you want me to, but we're juggling a lot of abstractions around as it is
ruaok
we didn't do enough future proofing when we did ws/2.
ijabz
Be nice if you could write down clearly the advantages of granularity, as its still a vague concept to me
ruaok
and this data abstraction will impact a lot of things.
so, it would be nice if we can think more down the road to consider the changes that might come.
ocharles
ok, so this comes back to the data access problem - what questions am I answering? :)
ruaok
ijabz: I think you understand (and hate it) quite clearly. :)
ocharles
do we want a schema for /ws/3? a map of end points?
ijabz
What i don't understand is why everyone seems to think its going to solve a load of problems, I see it only solving one
ruaok
ocharles: the question to answer is how a client can live with a system where they need to make a lot of more calls to fetch the data.
because inside of the current ws/2 model that concept is pure insanity.
ocharles
ruaok: there are various answers, but they all depend on an implementation
ruaok
of course they do.
ocharles
ie: make parallel requests and have a good library to glue it together, remove/reduce the rate limit, use web sockets to stream stuff
ruaok
then lets outline the various answers so we can consider them.
ocharles
I mostly like the idea of submitting a query tree to the server and having it inflate it at the moment
but that's not very RESTy
ijabz
Surely making parallel requests is circumventing rate limiting ectera
ruaok
and maybe REST needs to go. I don't know.
kepstin-work
well, a 1/s ratelimit makes no sense at all with a granular webservice
nikki
note: I haven't deleted the user, but I have changed the password and removed the references to it on the login screen (apparently deleting it will make the comments attached to it a bit weird and then someone could just go and recreate it)
ianmcorvidae
we aren't very RESTful right now, in fairness
kepstin-work
right now we have apps all making /massive/ queries with lots of inc= to workaround the ratelimit
ruaok
ianmcorvidae: and I think us trying to be restful is making our lives harder.
ijabz
I wish I wash't the only paying user seemingly bothered to get involved in this discussion
ruaok
ijabz: you're not.
I personally am representing your side in this.
ianmcorvidae
I think we need to either be more strictly REST about it or drop it entirely, yes
ruaok
ianmcorvidae: agreed.
ianmcorvidae
I think "trying to be restful" isn't really the problem so much as "not really doing REST, but some weird perversion of it"
warp
haha
ruaok
we're struggling to fit our data into the REST model and it doesn't work well like that.
ocharles
i don't think we are
ruaok
we're mapping documents to a graph.
and that is really ugly.
ocharles
because we never designed how it would look with REST
warp
a more granual model would make it fit better with REST though
granular
ruaok
warp: it would.
ianmcorvidae
yeah, granularity is a lot more RESTful
kepstin-work
well, we just need to make the stuff returned from a request include hyperlinks to linked data in the graph, rather than including the data itself
ruaok
but the HTTP RESTful way of doing will drive clients insane.
(in the membrane)
ianmcorvidae
and some of the "but we need so many different URLs!" problem gets solved by being RESTful by using hyperlinks
ijabz_ joined the channel
obviously the ratelimit needs help, but I suspect that's true *whatever* we do
ijabz_
bad time to disconnect, Why don't we we create a document that clearly lists all the problems with ws/2 and then see what solutions we can come up with
ruaok
so, really, I think we need to consider all of our options on this front before we proceed with data access layer work.
kepstin-work
ideally, using smaller simpler queries that are easier to cache would allow the ratelimit to be increased.
ruaok
kepstin-work: sure.
warp
the ratelimit just needs to be tweaked so a fetching full release in picard/jaikoz doesn't take longer than it does for /ws/2. so the amount of data recieved / time should stay constant.
ruaok
but the overhead of making an HTTP call becomes very great at that point.
ianmcorvidae
ijabz_: that's the idea with asking to list options so we can consider them, I think -- but agreed
ruaok
not the best use of resources/time
ijabz_
ianmcorvidae:might have missed that offline
ocharles
so for the next week, what am I doing?
ianmcorvidae
ijabz_: fair enough -- ruaok is wanting a document that explores possible solutions; I think what you're saying needs to be part of that :)
ruaok
warp: i disagree. HTTP call overhead is a problem.
ocharles
i'm hearing a lot of general worries here, but nothing I can specifically focus on
warp
ruaok: ok, a valid criticsm :)
ruaok
ok, I can take a stab at creating this document.
ocharles
!
ruaok
listing existing issues so we can enumerate them.
ocharles
please share it around again, it worked great last time
ruaok
ok, will do.
ocharles
ijabz added a lot of great questions
ruaok
shall we triage some bugs today?
warp
sure
ianmcorvidae
I can try to be the super-pedantic-about-REST voice for you :)
ruaok
ianmcorvidae: please do that!
ianmcorvidae really needs to read Fielding's dissertation at some point
ocharles
ianmcorvidae: i have that base covered too :)
ha, already read it
warp
lol, ocharles wins.
ianmcorvidae
hah, yes
ruaok
ocharles: bug triage?
ianmcorvidae
I mostly volunteered to make myself read the damn thing :)
ocharles
i'm not sure how much time i have
warp
I just read the o'reilly books on the topic.
ianmcorvidae
I can triage for a bit of others want to
ocharles
you're welcome to go ahead and i'll leave when i'm not free