cms-dev / cms

Contest Management System
http://cms-dev.github.io/
GNU Affero General Public License v3.0
886 stars 360 forks source link

Make SS able to compute the score board without RWS #37

Closed giomasce closed 11 years ago

giomasce commented 11 years ago

The title says everything. See also https://github.com/cms-dev/cms/issues/34#issuecomment-9207786.

lw commented 11 years ago

I don't think there's much difference between requiring to start a service to compute the scores and requiring to start a service to show them, aggregated in some useful ways. Also, the protocol we're using to communicate is HTTP, which has been tested (both in its design and in the implementations we're using) for many more years compared to our internal ad-hoc communication protocol. And, yes, the communication channel between SS and RWS is more "at risk" than the one between the other services, but HTTP guarantees that messages arrive, and signals when some problem prevents this from happening.

Anyway, I understand the issues you're posing and I think that some kind of score-retrieval-mechanism should be added to SS. What kind of interface are you thinking about? An HTTP-based HTML interface? A textual interface? A way to make SS produce a file? A RPC method?

stefano-maggiolo commented 11 years ago

Well, the scores of single submissions are already in the database, what is missing is just the computation of the score of the task (which incidentally is simpler than the computations that RWS does). In my opinion, we should add to cmscommon an (authoritative) function to obtain the score of a task from a list of (timestamp, score, tokened) information; this can be used by AWS to display the score of a user on a task (note for future programmers: pay attention on what happens when some of these submissions are not yet scored).

Obtaining a ranking is than just a matter of a few, very simple, operations, that do not need configuration (they're just sums and sorting) - it seems to me that this could be done in AWS, without requiring communication between AWS and SS. AWS can offer the option of downloading the ranking in several formats (csv among them).

giomasce commented 11 years ago

Il 14/10/2012 12:02, Stefano Maggiolo ha scritto:

Obtaining a ranking is than just a matter of a few, very simple, operations, that do not need configuration (they're just sums and sorting) - it seems to me that this could be done in AWS, without requiring communication between AWS and SS. AWS can offer the option of downloading the ranking in several formats (csv among them).

I more or less agree with Stefano. Let me just underline that setting up RWS is something rather different from setting up the rest of CMS, and needing to do it just for retrieve the scoring appears to me a bit of an overkill.

Giovanni.

Giovanni Mascellani mascellani@poisson.phc.unipi.it Pisa, Italy

Web: http://poisson.phc.unipi.it/~mascellani Jabber: g.mascellani@jabber.org / giovanni@elabor.homelinux.org

stefano-maggiolo commented 11 years ago

A very simple ranking facility has been implemented in 92782540b14e86ddd7805fe642bba31333399c46. Closing.