C
Chris Sheppard
Hello all; I'm having a bit of a problem with distributed Ruby on
Win32; I'm using 1.8.2, from the installer, rc7a. I'm rather enjoying
ruby, and we're using it for a lot of testing in the company where I
work, but this problem is causing some grumbling about whether Ruby is
the right tool for the job... :-/
The issue is that sockets basically seem to be going away; I'm getting
a DRbConnectionError:Invalid argument in the 'read' function, (line
554) in 'load', coming from 'recv_reply'(611) from recv_reply(865),
from 'send_message' (1104), from method_missing (1015)
It looks like the handle it's trying to read is invalid somehow; this
seems very odd. What's even odder is that I still seem able to
communicate with the other end; when my testing script gets the
exception, it proceeds to shut down our software on all the remote
machines that are part of the actual 'test', seemingly without any
trouble. This includes on the machine were we were trying to
communicate and got this invalid socket thing.
What's especially irritating is that it is looking like the message is
being sent; the error is occurring on the reception of the reply, so
this means I can't just put in a 'retry the whole thing on error'
(well, I probably CAN, at least in this case, because it's just asking
for a report, but I don't think it's a Good Idea in general...). OR
does the invalid handle suggest that the message never got through, so
we could be safe doing a Big Retry? Note that I'm having trouble
getting this to reproduce on anything smaller than like a 2 hour test,
which makes the 'make a little change, check if it's working' not work
quite so well..
Has anyone seem anything like this? I've been getting suggestions
here like 'replace the whole test infrastructure with an equivalent in
C#' which makes me itch, so I'd really like to get this solved!
Thanks, and if you need any more info, feel free to email me; I'm Very
Interested in getting this solved...
Chris
Win32; I'm using 1.8.2, from the installer, rc7a. I'm rather enjoying
ruby, and we're using it for a lot of testing in the company where I
work, but this problem is causing some grumbling about whether Ruby is
the right tool for the job... :-/
The issue is that sockets basically seem to be going away; I'm getting
a DRbConnectionError:Invalid argument in the 'read' function, (line
554) in 'load', coming from 'recv_reply'(611) from recv_reply(865),
from 'send_message' (1104), from method_missing (1015)
It looks like the handle it's trying to read is invalid somehow; this
seems very odd. What's even odder is that I still seem able to
communicate with the other end; when my testing script gets the
exception, it proceeds to shut down our software on all the remote
machines that are part of the actual 'test', seemingly without any
trouble. This includes on the machine were we were trying to
communicate and got this invalid socket thing.
What's especially irritating is that it is looking like the message is
being sent; the error is occurring on the reception of the reply, so
this means I can't just put in a 'retry the whole thing on error'
(well, I probably CAN, at least in this case, because it's just asking
for a report, but I don't think it's a Good Idea in general...). OR
does the invalid handle suggest that the message never got through, so
we could be safe doing a Big Retry? Note that I'm having trouble
getting this to reproduce on anything smaller than like a 2 hour test,
which makes the 'make a little change, check if it's working' not work
quite so well..
Has anyone seem anything like this? I've been getting suggestions
here like 'replace the whole test infrastructure with an equivalent in
C#' which makes me itch, so I'd really like to get this solved!
Thanks, and if you need any more info, feel free to email me; I'm Very
Interested in getting this solved...
Chris