Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a feature to re-reun a submission by challenge host using UI #2209

Closed
RishabhJain2018 opened this issue Mar 19, 2019 · 16 comments · Fixed by #2340
Closed

Add a feature to re-reun a submission by challenge host using UI #2209

RishabhJain2018 opened this issue Mar 19, 2019 · 16 comments · Fixed by #2340

Comments

@RishabhJain2018
Copy link
Member

Current Behaviour

If a challenge host wants to re-run a submission then the host has to email EvalAI admin to re-run a particular submission from admin.

Expected Behaviour

The challenge host should be able to re-run the submission from the UI.

Please feel free to post the approach first.

@yashdusing
Copy link
Contributor

@RishabhJain2018 I'd like to work on this

@RishabhJain2018
Copy link
Member Author

@yashdusing You can take this up.

@KhalidRmb
Copy link
Member

@RishabhJain2018 I'd like to work on this as well.

@yashdusing
Copy link
Contributor

@RishabhJain2018 also, could you please verify the doubts I've asked on gitter please

@RishabhJain2018
Copy link
Member Author

Sure! I'll take a look at it soon.

@yashdusing
Copy link
Contributor

@RishabhJain2018 So, the challenge host no longer has the access to the annotation file he/she previously submitted. So, the challenge host approaches the admin to fetch the submission annotation file to re-run it on the challenge ? Is that right or am I missing something ?

@RishabhJain2018
Copy link
Member Author

So, the challenge host no longer has the access to the annotation file he/she previously submitted. So, the challenge host approaches the admin to fetch the submission annotation file to re-run it on the challenge ? Is that right or am I missing something ?

I'm not sure why you're talking about annotation file here?

@yashdusing
Copy link
Contributor

@RishabhJain2018 the file submitted by the participant which the challenge host wants to re-evaluate (re-run)

@yashdusing
Copy link
Contributor

@RishabhJain2018 How about the challenge host having a re-run submission button on the leaderboard itself ?
Also, should I use the existing run_submission function in the workers folder or write a function to get the existing files which might be saved onto the temp directory when worker is initiated ?

@RishabhJain2018
Copy link
Member Author

Hey, @yashdusing The file submitted by the participant is the user_submission_file. Please don't confuse it with test_annotation_file.

How about the challenge host having a re-run submission button on the leaderboard itself ?

No, since the leaderboard doesn't list all the entries (as participants can make them private), I think it'd be ideal to have it under view all submissions tab.

Also, should I use the existing run_submission function in the workers folder or write a function to get the existing files which might be saved onto the temp directory when worker is initiated ?

No, please try to understand the architecture, how it works. You need to pass the submission message to the SQS queue and it'll be processed automatically. I've already implemented an admin feature for it. Please take a look at that.

@Ayukha
Copy link
Member

Ayukha commented Mar 23, 2019

@yashdusing I guess publishing the submission parameters to the submission Queue would do the work, a similar kind of approach that we used here.

def submit_job_to_worker(self, request, queryset):
for submission in queryset:
challenge_id = submission.challenge_phase.challenge.id
challenge_phase_id = submission.challenge_phase.id
submission_id = submission.id
logger.info(
"[x] Received submission message with challenge id {}, challenge phase id {}, submission id {}".format(
challenge_id, challenge_phase_id, submission_id
)
)
publish_submission_message(
challenge_id, challenge_phase_id, submission.id
)
queryset.update(status=Submission.SUBMITTED)

@RishabhJain2018
Copy link
Member Author

Yes @Ayukha . Thanks for pointing to the code.

@yashdusing
Copy link
Contributor

@RishabhJain2018 Thanks for clarifying. I was a little confused and thought I needed to make changes directly to worker.py 😅

@yashdusing
Copy link
Contributor

@RishabhJain2018 could you please check my PRs since most of them are not reviewed. Also, my proposal as well

@stale
Copy link

stale bot commented Jun 8, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the inactivity label Jun 8, 2019
@stale
Copy link

stale bot commented Jun 15, 2019

This issue has been automatically closed as there is no further activity. Thank you for your contributions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants