Hi Dan, It looks like you're running into the same issue I was, where the underlying HashDict cannot be serialized correctly to send to the other processes.
I put up a pull request (https://github.com/JuliaLang/DataStructures.jl/pull/138) yesterday to hopefully fix this, feedback is appreciated. Apply these changes to your DataStructures.jl and see if that works. Alternatively, as a temporory workaround, you can override the Base.(de)serialize methods in your own code. Cheers, Another Dan On Tuesday, 27 October 2015 05:02:40 UTC-3, Daniel O'Malley wrote: > > I've recently encountered problems using pmap on a function that returns a > DataStructures.OrderedDict. > > import DataStructures > @everywhere function f(x) > return DataStructures.OrderedDict(zip(["x"], [x])) > end > pmap(f, [1, 2]) > > If the above code is run in a "julia -p 2" environment, it produce a > cascade of errors that seem to begin with > > ERROR: MethodError: `write` has no method matching > write(::SerializationState{TCPSocket}, ::Int32) > > In the original context that this example was trying to replicate, the > error was > > ERROR: MethodError: `read` has no method matching > read(::SerializationState{TCPSocket}, ::Type{Int32}) > > Does anyone have advice on how to resolve this? Should these methods exist > in base julia? Am I doing something wrong? > > Thanks for your help! > > Dan >
