Robert, all, I'm of course happy to help, e.g. try out fixes you propose. The code is available at http://www.launchpad.net/geneva for you to look at, if you want. Click on "View the branch content". The code in question is in the include/geneva and src/geneva subdirectories. I have, just for kicks, commented out the BOOST_SERIALIZATION_ASSUME_ABSTRACT in http://bazaar.launchpad.net/~gemfony/geneva/trunk/annotate/head%3A/include/g... plus the BOOST_CLASS_EXPORT(Gem::Geneva::GPersonalityTraits) in http://bazaar.launchpad.net/~gemfony/geneva/trunk/annotate/head%3A/src/genev... My understanding is that, with gcc, Boost.Serialization is able to detect by itself that GPersonalityTraits is purely virtual, and that BOOST_CLASS_EXPORT doesn't make a difference anyway for a class that cannot be instantiated directly. However, the error message at the end of the program execution remains the same. I am also pretty confident that serialization itself is unaffected (during the program's runtime), since server and client can communicate and the program correctly converges towards the minimum of a toy optimization problem (i.e. the right data is exchanged). Best Regards, Ruediger P.S.: Please do expect a few hours delay between any proposed fix and my answer, given that Robert is in the US and I am in Europe. Robert Ramey wrote:
Anthony Williams wrote:
Eric Niebler
writes: I don't know whether this is a serialization issue or a thread issue. Robert, Anthony, can you two weigh in?
Looks like a serialization problem to me.
I would agree - but its hard to reproduce from here. I don't see this as quick fix - it would require some time and help from the person who can actually reproduce it.
Robert Ramey