"Delayed" status

The forum to report every bug you find or tell us what you'd like to find in UVa OJ

Moderator: Board moderators

Locked
Krzysztof Duleba
Guru
Posts: 584
Joined: Thu Jun 19, 2003 3:48 am
Location: Sanok, Poland
Contact:

"Delayed" status

Post by Krzysztof Duleba »

The idea of delaying solutions that run too long isn't very bad, but needs to be carefully implemented. Such solutions shouldn't be delayed too much - handling big queue will slow down juding process and waste resources.

Moreover, there seems to be a bug - one of my solutions has been delayed for over 25 minutes after running for 2.271s. Another solution has been delayed for 20 mintes after running for 0.324s only.
For millions of years, mankind lived just like the animals. Then something happened which unleashed the power of our imagination. We learned to talk and we learned to listen...

Krzysztof Duleba
Guru
Posts: 584
Joined: Thu Jun 19, 2003 3:48 am
Location: Sanok, Poland
Contact:

Post by Krzysztof Duleba »

Finally those submissions are judged, but it took almost 4 hours.
For millions of years, mankind lived just like the animals. Then something happened which unleashed the power of our imagination. We learned to talk and we learned to listen...

little joey
Guru
Posts: 1080
Joined: Thu Dec 19, 2002 7:37 pm

Post by little joey »

Hmm, yes. What are the criteria for getting your job 'delayed'? I'm getting one now, but at the moment the load on the judge is very low: only 40 or so other jobs ran in the 15 minutes since I submitted it, some of them having higher time and memory use but running to completion at once. Or is it that I've submitted on this problem already several times?
Quite annoying...
The biggest problem with most problems is not how to solve the problem, but how to not solve what is not the problem.

Carlos
System administrator
Posts: 1286
Joined: Sat Oct 13, 2001 2:00 am
Location: Valladolid, Spain
Contact:

Post by Carlos »

Actually the delayed veredict is not very often. It happens when the judge machine runs out of memory. Then he stops running processes and judges them some time later. Actually, I don't really know the criteria it uses for continuing judging the submissions, but it looks like it won't continue running them when the memory is bak; it takes some time to do so.

We've had several problems with it the day before yesterday. We had over 50 jobs running at the same time, and the judge delayed most of them, while judged as CJ some others. Maybe some internal process run today too, so that the judge had to delay some processes.

I don't think there's a bug on delayed status and its priority queue, but a not optimal way of solving the memory problem. Judge can judge over 20 submissions at the same time and it can stall...maybe it was more optimal if it only judged around 5 at the same time. We can't change that in the current judge (there's no way i can completely understand actual judge's source code for making such an internal change) but we'll avoid this behaviour in the new judge (actually, it will read submissions and stores them in a "problems to judge" queue, instead of trying to compile and run them as soon as he recieves them as actual judge does).
DON'T PM ME --> For any doubt, suggestion or error reporting, please use the "Contact us" form in the web.

little joey
Guru
Posts: 1080
Joined: Thu Dec 19, 2002 7:37 pm

Post by little joey »

I think it has something to do with my ID or IP-address, because after recieving some more 'delayed' verdicts, I now get 'Can't be Judged", no matter what problem I submit to. I never have seen this before, so it has to be something from the last two days. Are you blocking out users that have more than a certain limt of submissions during a period?

Please look into it. It is realy annoying.
The biggest problem with most problems is not how to solve the problem, but how to not solve what is not the problem.

Carlos
System administrator
Posts: 1286
Joined: Sat Oct 13, 2001 2:00 am
Location: Valladolid, Spain
Contact:

Post by Carlos »

this limit has always been there. If you submit 5 problems, and both of them are "active", you'll get CJ for the 5th, and for every problem you submit from them on. We did that to avoid flooding: some people used to send 100 times the same code just to get some better CPU time on it (some miliseconds).

We're thinking about disabling that feature, I agree it's annoying....but the one who made the modification isn't with us anymore (i mean, he doesn't collaborate in the OJ anymore) and we'll have to re-read judge's source to find how he does so. I hope we can do it this evening.

By the way, after we solve it we'll rejudge every CJ.
DON'T PM ME --> For any doubt, suggestion or error reporting, please use the "Contact us" form in the web.

little joey
Guru
Posts: 1080
Joined: Thu Dec 19, 2002 7:37 pm

Post by little joey »

Hmm. I think this anti-flooding feature is good and should not be removed. The problem is that once you get a job 'delayed', all your subsequent jobs will get delayed until you submitted your fifth job, which will get CJ. Removing the anti-flooding feature will only get you more delayed jobs.

So the problem is getting a 'delayed' in the first place, after that the judge is useless for several hours: I got my first 'delayed' more than 5 hours ago, and so the judge is blocked for me since then. Scanning the judge status I see that several users are even blocked longer and the number of blocked users is now in the twenties or thirties and growing, without knowing how long it will last.

You don't have to rejudge my CJs, they where bogey anyway.
The biggest problem with most problems is not how to solve the problem, but how to not solve what is not the problem.

Carlos
System administrator
Posts: 1286
Joined: Sat Oct 13, 2001 2:00 am
Location: Valladolid, Spain
Contact:

Post by Carlos »

we've spent all afternon in that, and we couldn't find anything wrong on the judge. But at least I know why you can't submit any more programs :)

Something doesn't work on the judge. Programs are delayed because there isn't enough free memory (too many running processes?), and when there are no processes running the system doesn't realize that there is enough memory.....maybe the memory size isn't reported corrctly.....or maybe we have a process in background that uses too much memory (it wouldn't be the first time in occurring so). One solution could be to reset the machine, but I don't dare :) We'll keep searching for bugs in the memory management, and if we don't find anything we'll have to wait for Miguel to reset the machine.

Please, be patient, we're working on it. And for those who have 4 delayed submissions......you'll get CJ if you submit anything again, so please don't. Anyway, if you do, your submissions won't be lost, we'll be able to rejudge them in the future.
DON'T PM ME --> For any doubt, suggestion or error reporting, please use the "Contact us" form in the web.

Carlos
System administrator
Posts: 1286
Joined: Sat Oct 13, 2001 2:00 am
Location: Valladolid, Spain
Contact:

Post by Carlos »

we're still working on it.....it looks like it was an extreme use of memory in the judge machine. Everything looks normal now. If any of you have (still getting DL...) or has had (he wants his CJ's rejudged again...) any problem with that, just let us know (problemset@acm.uva.es). If it can help other users, you can open a new thread.
DON'T PM ME --> For any doubt, suggestion or error reporting, please use the "Contact us" form in the web.

Locked

Return to “Bugs and suggestions”