Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-12-02 Thread Robby Findler
Thanks: I've pushed the syncronization code to the handin repo. And yes, you're right that `thread` (which is what I think the handin server uses) doesn't make use of multiple cores. Places sound like the right construct to use here, but I can already predict one problem: 2htdp/universe depends on

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-12-01 Thread Paolo Giarrusso
Hi! After a new deadline, I got good news and bad news. # Good news I think *this* bug is fixed. Evidence: instead of crashing at the first reboot under load, the server survived to 10-20 automated reboots with the students submitting en masse without never showing the bug. So not only the patch

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-29 Thread Robby Findler
On Sunday, November 29, 2015, Paolo Giarrusso wrote: > On Friday, November 27, 2015 at 3:44:20 AM UTC+1, Robby Findler wrote: > > Yes, I think you're right. I originally wrote that because I was > > thinking that this code might be involved in evaluating the user's > > submission, but I am not pr

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-29 Thread Paolo Giarrusso
On Friday, November 27, 2015 at 3:44:20 AM UTC+1, Robby Findler wrote: > Yes, I think you're right. I originally wrote that because I was > thinking that this code might be involved in evaluating the user's > submission, but I am not pretty sure I was wrong about that. "not pretty sure"? AFAICS,

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-26 Thread Robby Findler
Yes, I think you're right. I originally wrote that because I was thinking that this code might be involved in evaluating the user's submission, but I am not pretty sure I was wrong about that. So, yes I agree that putting this into the production server may be worth a try (depending on how severe t

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-26 Thread Paolo Giarrusso
On 25 November 2015 at 14:54, Robby Findler wrote: > I'm still not completely > sure, but since you seem to be able to provoke the error, that > emboldens me to suggest you apply the diff below and see if it goes > away. I'm doing this. Annoyingly, I can't force the crash at will yet, and an auto

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-25 Thread Robby Findler
The stomping on I was worried about would happen at a lower-level as I don't think that, in general, dynamic-require is thread-safe. After all, it loads and runs arbitrary code, altho in this case it appears to be a system level lack of thread safety? I'm still not completely sure, but since you s

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-25 Thread Paolo Giarrusso
Hi and thanks for reacting promptly! On 25 November 2015 at 13:52, Robby Findler wrote: > I don't know what's going on here, but could it be that two threads > are, in parallel, trying to load the same implementation of an > unloaded checker and then stomping on each other? Interesting! Sounds c

Re: [racket-users] "bad variable linkage" after restarting handin server under load

2015-11-25 Thread Robby Findler
I don't know what's going on here, but could it be that two threads are, in parallel, trying to load the same implementation of an unloaded checker and then stomping on each other? The file handin-server/private/reloadable has some dynamic-requires without appropriate syncronization around them, a

[racket-users] "bad variable linkage" after restarting handin server under load

2015-11-25 Thread Paolo Giarrusso
Hi all, it's me, handin server guy again. Sorry to bother. Our handin server started "crashing" with "bad variable linkage" errors at deadline time (presumably under somewhat high load), and since it happened twice, I thought I'd report it. Any ideas on what's causing this? After this "crash",