Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4660: Error read binary archive, created by old boost version
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-09-22 06:50:28
#4660: Error read binary archive, created by old boost version
---------------------------------------+------------------------------------
Reporter: serge-voropaev@⦠| Owner: ramey
Type: Bugs | Status: new
Milestone: To Be Determined | Component: serialization
Version: Boost 1.44.0 | Severity: Showstopper
Resolution: | Keywords:
---------------------------------------+------------------------------------
Comment (by Sergey Voropaev <serge-voropaev@â¦>):
I prepare some simple test program cser and tser. See attachments. First
program (cser) creates simple native binary archive. Second program (tser)
test these archive. I build these programs with 3 different version of
BOOST â 1.34.1, 1.43 and 1.44. Then I run all version of cser and create 3
archive â arch_1_34_1.dat, arch_1_43.dat and arch_1_43.dat (see
attachments).
Then I run each version of tser with each version of archive. The results
are:
tser + boost 1.34.1[[BR]]
arch_1_34_1.dat â âTest â OKâ[[BR]]
arch_1_43.dat â âarchive serializations error - unsupported versionâ[[BR]]
arch_1_44.dat â âarchive serializations error - unsupported versionâ[[BR]]
tser + boost 1.43[[BR]]
arch_1_34_1.dat â âTest â OKâ[[BR]]
arch_1_43.dat â âTest â OKâ[[BR]]
arch_1_44.dat â âarchive serializations error - incompatible native format
- size of intâ[[BR]]
tser + boost 1.44[[BR]]
arch_1_34_1.dat â âarchive serializations error - unsupported
versionâ[[BR]]
arch_1_43.dat â âarchive serializations error - unsupported versionâ[[BR]]
arch_1_44.dat â âTest â OKâ[[BR]]
My summary[[BR]]
1) serialization 1.44 can not work with old version of binary archives. So
backward compatibility was ruined.[[BR]]
2) format of binary archive in version 1.44 was changed, so version 1.43
does not work with new archive. And now we have 2 different incompatible
version of native binary archive (before 1.44 and 1.44). Text archive does
not have this problem
So implementation of serialization in 1.44 is broken. I think this problem
must be resolved ASAP. I think users must be informed about these problem
with serialization and users must do not use this version in production
code. May be we need 1.44.1 version?
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4660#comment:7> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:04 UTC