Closed dsyme closed 6 years ago
@dsyme the exception is unrelated, and more or less expected to happen. The hang seems to be caused by some failure in Thespian.
@dsyme the exception is unrelated, and more or less expected to happen. The hang seems to be caused by some failure in Thespian.
Hmm... Well, something changed between 3.0.0 and 3.1.0 to cause this test failure... The test passes when using FsPickler 3.0.0... But I took a good look and didn't spot any specific changes which might be responsible, though there was a fair bit of churn
I'll check if the exception occurs when using 3.0.0. TBH it feels like the Vagabond actor controlling the state is making a self-request which never replies, my impression is that this was because of some unexpected failure
when debugging this myself I saw that the remote process received the bits and successfully ran the execution, the hang occurring when the result value was pushed back to the reply channel. Not saying this is not caused by FsPickler changes, but it looks like some kind of interplay with FsPickler and Thespian.
@eiriktsarpalis Hmm, yes, the Thespian we're using was built with 3.0.0. Perhaps there is a binary incompatibility between 3.0.0 and 3.1.0 (or plausibly a logical incompatibility induced by cross-assembly inlining). I'll rebuild Thespian for 3.1.0 and try again.
@eiriktsarpalis I tried updating Thespian too, but I got the same error. It really does seem to be some specific change for FsPickler 3.0.0 --> 3.1.0, unless I've made some mistake
Perhaps the next step is to include a debug build of FsPickler/Thespian in the vagabond setup
This has been fixed in the latest release of vagabond
Hi @eiriktsarpalis
Something in FsPickler 3.1.0 introduces a failure in a very simple Vagabond test related to pickling quotations, see https://github.com/mbraceproject/Vagabond/issues/20
Here are the commits between 3.0.0 and 3.1.0. They all look related to the "TypeShape" implementation: https://github.com/mbraceproject/FsPickler/compare/3.0.0...3.1.0
Here's the exception that gets thrown in the Vagabond test:
Any ideas? Thanks!