Issue with co::serializable in recent Collage version?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Issue with co::serializable in recent Collage version?

cpapado
Hello everyone!

I've got a distributed object that inherits from co::Serializable. This objects serializes a few kilobytes of data all at once, which is then pushed to slave instances. No subsequent commits happen to that object.

Everything was working fine and dandy with previous versions of EQ (this is actually code that's barely been touched in two years or so). Recently, I pulled from the eyscale repos to the latest versions of all the libraries (Collage commit: 378ab5c677c8bfd0a7e8614fe73c158eb6357a65).

Now I'm noticing the following behavior. If i commit less than 600-700 bytes of data, everything works fine. However, if I serialize more than that, I get a bunch of errors within co::fdConnection ("Invalid argument (22)", "Error during write after 0 bytes, closing connection", etc).

Is this related to issue https://github.com/Eyescale/Collage/issues/40 ? Overriding getChangeType() on my distributed object and setting it to co::Object::UNBUFFERED doesn't seem to be helping...

Thanks in advance :),

Harris

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Issue with co::serializable in recent Collage version?

cpapado
Forgot to mention that this is on OSX with Clang 5.1 and compiling against libc++ for 64 bit.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Issue with co::serializable in recent Collage version?

tribal-tec
Hi,

I confirm that there is an issue while sending 'big' data in a Collage::Object, for instance a char[600] in a co::Array. What I found out so far that it is related to compression, so in the meantime you can workaround it by disabling compression on the object (overwrite chooseCompressor()).

Nevertheless, please create an issue on the Collage github page so we and you can track the progress of fixing this issue. @eile is working in this area and might already have a solution, but now there is more pressure on our end to get this fixed asap :)

HTH,
Daniel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Issue with co::serializable in recent Collage version?

cpapado
Nailed it Daniel! Returning EQ_COMPRESSOR_NONE fixed it :).

I'll put up an issue on Github. Let me know if you guys need help with reproducing.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Issue with co::serializable in recent Collage version?

tribal-tec
Hi,

I could not find the issue on Github, but just to let you know that we might have a fix for the problem you described:
https://github.com/Eyescale/Collage/pull/105

Let us know if this fixes the issue you observed with your code.

Cheers,
Daniel
Loading...