jcrodriguez-dis / moodle-mod_vpl

Virtual Programming Lab for Moodle (Module)
GNU General Public License v3.0
99 stars 85 forks source link

Execution results not received by moodle #58

Closed rfleischer closed 1 year ago

rfleischer commented 6 years ago

Hi,

I recently upgraded moodle to 3.4, and VPL to 3.3.1. I then had the problem that submissions were properly executed on the jail server and the execution files with comments were created but the moodle server did not receive any of these files, and there were no error messages or warnings. After several weeks of trying to figure out what was wrong I tried https://server_name[:secure ports]/OK in my browser (Safari) to check whether there was a connection problem. That call then asked me to accept the server certificates (which had not changed since 2015), and afterwards moodle worked fine again.

Maybe this information is helpful for others who have similar problems.

Even better would be if the VPL module in moodle would catch this error and ask the users to accept the certificates instead of silently failing.

thanks Rudolf

jcrodriguez-dis commented 6 years ago

Hello Rudolf,

thanks for your report. I would like to reproduce your problem. VPL try to report properly any connection error. But may be some case was missing. If the problem is related with the connection of the browser and the execution server go to the Browser JavaScript console and report the lasts lines, the browser commonly show there the JavaScript or connection problems. In this case your problem seems to be related with the connection between the Moodle server and the "execution server". Really strange due to the fact that the retrieve of the execution result is another connection not the first. The check of the execution servers may help in this case ( Advanced settings > Check execution servers).

Please, if you find other information about this problem let me know it.

Best regards, Juan Carlos.

rfleischer commented 6 years ago

Dear Juan,

thanks for your quick follow-up.

I am a professor of computer science and have been the moodle administrator at my university for the past five years, I am not easily lost when something goes wrong with a moodle update.

But this problem gave me a hard time. I regularly update moodle and all plugins, but after some updates about a month ago VPL stopped working properly, i.e., there came no grading feedback from the execution server for submissions. Since I am currently teaching an algorithms course and heavily using VPL for homeworks this was a serious problem.

I spent the last two weeks trying to debug the VPL plugin because I suspected one of the recent upgrades had introduced a bug (maybe a missing call to fetch results, or a configuration problem of the servers). But I just couldn't find anything wrong, except that on the moodle side no data ever arrived from the execution server.

On the jail server everything seemed fine, the C++ programs were compiled and executed and the files (compilation and execution) in var/vpl-jail-system were all created correctly, but the files did not appear on the moodle side. "Evaluate" caused three small pop-up windows to appear for a second: "evaluating", "connecting", and "retrieving results" which looked just fine to me (now with the system working again I see that there should actually be a few more pop-ups, e.g., "compilation" and "evaluating: 1 seg" etc.).

Moodle did not give any error or warning messages, and since the "Check execution servers" listed the jail server as ok I did not suspect a connection problem. However, this morning I found in some documentation the advice to test the network connection https:///OK which gave me a strong warning about insecure connection and when I insisted to proceed asked me to accept the server certificates. Afterwards, VPL worked fine again.

The certificates on the jail server are from 2015 so they did not change during my upgrades. Maybe some settings of the VPL module had changed, or the security tests got more strict, and this caused the problem. But all students had the same problem, no submission was automatically graded anymore (and I could not get grades by "evaluating" the submission manually).

On Wed, Jan 3, 2018 at 10:15 PM, jcrodriguez-dis notifications@github.com wrote:

Hello Rudolf,

thanks for your report. I would like to reproduce your problem. VPL try to report properly any connection error. But may be some case was missing. If the problem is related with the connection of the browser and the execution server go to the Browser JavaScript console and report the lasts lines, the browser commonly show there the JavaScript or connection problems. In this case your problem seems to be related with the connection between the Moodle server and the "execution server".

Correct, but only the direction from the jail server back to moodle server failed. From moodle to jail server everything worked ok apparently.

Really strange due to the fact that the retrieve of the execution result is another connection not the first. The check of the execution servers may help in this case ( Advanced settings > Check execution servers).

My Safari browser now works well, so I started Firefox where the same problem occurs now. . The execution server is listed as running although the submission was correctly evaluated at 00:30, but somehow moodle does not get that information. Actually, these long running entries vanish after a few hours (but not if I restart the jail server). The connection problem on Dec 31 happened because the jail server 172.16.2.29 is only accessible from our internal university network and I had tried to access it from home without starting my university VPN.

I checked the Javascript console, I got one connection error after clicking the "Evaluate" button, but it is not very helpful to identify what is wrong. No other log files seem to contain any information about something going wrong.

Cheers, Rudolf

Please, if you find other information about this problem let me know it.

Best regards, Juan Carlos.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcrodriguez-dis/moodle-mod_vpl/issues/58#issuecomment-355085091, or mute the thread https://github.com/notifications/unsubscribe-auth/ACp8PexyzOuEufwLEJj1PTjctLTjp5cqks5tG8PXgaJpZM4RRrf9 .

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

rfleischer commented 6 years ago

Dear Juan,

here is a another bug. I have a VPL exercise configured with max grade 3 points. However, if all tests are passed the jail server assigns a grade of 10 points, which then appears in the moodle gradebook. Clicking "Calculate" computes the correct grade of 3 points, but this must be done manually while the automatic grading assigns the wrong grade of 10 points.

Cheers, Rudolf

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

jcrodriguez-dis commented 6 years ago

I also teach Computer Science and I use VPL for important task of the courses. I know the problems that may generate the malfunction of the tool. A common problem after an upgrade is the JavaScript code cached by the browser that is mixed with the new code. This problem prevent the use of the editor and is resolved cleaning the browser cache.

The fail of the maximum grade is a bug introduced with the 3.3 version. I will release a new version that fixed the problem ASAP.

Best regards.

rfleischer commented 6 years ago

Hi,

On Thu, Jan 4, 2018 at 11:34 PM, jcrodriguez-dis notifications@github.com wrote:

I also teach Computer Science and I use VPL for important task of the courses. I know the problems that may generate the malfunction of the tool. A common problem after an upgrade is the JavaScript code cached by the browser that is mixed with the new code. This problem prevent the use of the editor and is resolved cleaning the browser cache.

I cleaned the cache and restarted the browser. It does not help. Still the same JS error.

The fail of the maximum grade is a bug introduced with the 3.3 version. I will release a new version that fixed the problem ASAP.

good.

thanks Rudolf

Best regards.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcrodriguez-dis/moodle-mod_vpl/issues/58#issuecomment-355377088, or mute the thread https://github.com/notifications/unsubscribe-auth/ACp8PYuTH1Xtg5EEH55ewh_8Gd4ngJbGks5tHSe-gaJpZM4RRrf9 .

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

jcrodriguez-dis commented 6 years ago

Hello Rudolf, the problem of the maximum grade is resolved in the new 3.3.2 version just released. To try to resolve the initial problem, I need to reproduce it, is possible to reproduce this JS error?

Best regards, Juan Carlos.

rfleischer commented 6 years ago

Hi,

On Tue, Jan 9, 2018 at 10:58 PM, jcrodriguez-dis notifications@github.com wrote:

Hello Rudolf, the problem of the maximum grade is resolved in the new 3.3.2 version just released.

great, it works.

To try to resolve the initial problem, I need to reproduce it, is possible to reproduce this JS error?

yes, I haven't approved the certificates in my Firefox and it still produces the same js error.

Cheers, Rudolf

Best regards, Juan Carlos.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcrodriguez-dis/moodle-mod_vpl/issues/58#issuecomment-356380205, or mute the thread https://github.com/notifications/unsubscribe-auth/ACp8PYr1KQsdWc5KFapb7KvGIoykSY1yks5tI7bFgaJpZM4RRrf9 .

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

jcrodriguez-dis commented 6 years ago

please, post a screenshot of the JS error.

Best regards, Juan Carlos.

rfleischer commented 6 years ago

here are the screenshots.

Chers, Rudolf

On Wed, Jan 10, 2018 at 8:12 PM, jcrodriguez-dis notifications@github.com wrote:

please, post a screenshot of the JS error.

Best regards, Juan Carlos.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcrodriguez-dis/moodle-mod_vpl/issues/58#issuecomment-356650879, or mute the thread https://github.com/notifications/unsubscribe-auth/ACp8Pe8jazWjS8cXp6vpBi74pWqxEWdEks5tJOF6gaJpZM4RRrf9 .

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

jcrodriguez-dis commented 6 years ago

Sorry Rudolf, I don't see any image.

rfleischer commented 6 years ago

I see, let's try jpg instead of png.

Cheers, Rudolf

On Thu, Jan 11, 2018 at 9:24 PM, jcrodriguez-dis notifications@github.com wrote:

Sorry Rudolf, I don't see any image.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jcrodriguez-dis/moodle-mod_vpl/issues/58#issuecomment-356999750, or mute the thread https://github.com/notifications/unsubscribe-auth/ACp8PRD0NLRTXcXOI2lQMcabYIKI64CFks5tJkPcgaJpZM4RRrf9 .

-- Prof Dr Rudolf Fleischer Department of Computer Science German University of Technology in Oman Muscat, Oman

jcrodriguez-dis commented 6 years ago

Hello Rudolf, please, do not reply to the email message, you must write a comment in the forum to attach images. Example: logo2

rfleischer commented 6 years ago

Moodle version:

moodle_version

VPL version:

vpl_version

Errors after clicking 'evaluate':

firefox_error_after_clicking_evaluate

jcrodriguez-dis commented 6 years ago

Thanks Rudolf, I think that now I have enought information to replicate the error.