[contestms] Re: Announcing task versioning (and calling for review)

  • From: Stefano Maggiolo <s.maggiolo@xxxxxxxxx>
  • To: contestms@xxxxxxxxxxxxx
  • Date: Fri, 10 May 2013 16:29:03 +0100

I made a bunch of comments in github, most of them are nits, so feel free
to ignore if you feel like. An additional comment is to please rename the
commits to something that hints to a global plan to implement task
versioning.

Thanks again a lot!
Ste


On 6 May 2013 19:41, Stefano Maggiolo <s.maggiolo@xxxxxxxxx> wrote:

> I took a look when it was first proposed, but I will check if I spot
> anything new. Thanks to both for your work!
>
> Ste
>
>
> On 6 May 2013 18:08, Luca Wehrstedt <luca.wehrstedt@xxxxxxxxx> wrote:
>
>> Hi,
>>
>> in the past months we've been working on a long awaited feature: task
>> versioning!
>>
>> This feature basically splits out many fields from the tasks to put them
>> into so-called "datasets". Nothing great here, except that a task can have
>> many datasets simultaneously! (This forced us to split out compilation,
>> execution and scoring related data from submissions and create so-called
>> "results", one for each (submission, dataset) pair, and the same for
>> usertests too).
>>
>> Only one dataset per task will be "live" at any moment (and the data
>> shown on CWS and RWS will be taken from it), but the others can be
>> (optionally) evaluated too, in "background".
>>
>> The main advantage is that, in case of misconfigurations or bugs in
>> managers and testcase, admins can clone a dataset, fix the error, recompile
>> and/or reevaluate submissions, verify that the error has been correctly
>> fixed, consider the impact that the change will have on the scores and,
>> only at this point (!), activate the dataset to make the users aware of all
>> this. This means that the users will experience no downtime at all during
>> the admin's work and during the reevaluation process.
>>
>> The *code* for this can be found on: *
>> https://github.com/lerks/cms/commits/master*<https://github.com/lerks/cms/commits/master>
>>  (it's
>> based on the current cms-dev/master).
>>
>> The diff is quite large since the changes affect almost every
>> service/server/utility/etc. I tried to split them into "code areas", in
>> order of importance (DB, grading, ES, SS, CWS, AWS, etc.). The commit
>> titles describe this order but are otherwise not very descriptive. We may
>> want to change that (and perhaps squash some commits) before pushing to
>> cms-dev/master: I did this only to ease the review of the code.
>>
>> So, please, *could someone review the code?* I and Bernard already did
>> it, but it'd great if (at least) a third developer could do that too.
>>
>> I'm not very satisfied with the RWS-related commit, but I still need to
>> think if (and how) we can make it better. We're also missing some changes
>> (namely to the documentation and to cmsMake) but they're not essential so
>> don't wait for them to start your review!
>>
>> Thanks for reading this long email,
>>
>> Luca
>>
>
>

Other related posts: