Yossi,
While the statements about backwards compatibility are generally true please
keep in mind that geode-native pre-modernization was never an official release.
I strongly recommend you upgrade to an official release. Several bugs, memory
leaks and security issues have been addressed in the official released versions
of geode-native.
Unfortunately for you, the pre-modernization branch does not have a simple
migration path since the official release of geode-native changes almost every
API to use modern C++11 standards. It isn’t a terribly difficult task to make
the conversion and this list will be happy to provide assistance with specific
questions on changes.
A couple of hints:
There is no singleton cache anymore. Create your Cache instance and hold onto
it. When it is destructed the cache will be closed and destroyed. You can now
have more than one Cache in a process space. Cache is moveable so you can move
it into a shared_ptr or unique_ptr.
SharedPtr<T> is now std::shared_ptr<T>.
Use auto keyword everywhere you can.
Nearly all raw pointers are now std::unique_ptr, std::shared_ptr, or references.
All char* have been converted to std::string.
All std::strings are expected to be UTF-8 encoded.
std::u16string are expected to be UTF-16
std::u32string are expected to be UTF-32
std::wstring are platform dependent, but generally UTF-16 or UTF-32.
-Jake
> On Dec 12, 2019, at 2:30 AM, Alberto Gomez <[email protected]> wrote:
>
> Hi Yossi,
>
> Version 1.4 of the cpp native client should work with Geode version 1.10.
> Client/server backward compatibility is a requirement in Geode as described
> here:
>
> https://cwiki.apache.org/confluence/display/GEODE/Managing+Backward+Compatibility
>
> ---------------------------------------------------------------------------------------------
> Client/server backward compatibility
>
> Client/server backward compatibility must work for all releases. All previous
> versions of clients must be supported because they may be embedded in
> applications that users would find difficult, if not impossible, to track
> down and upgrade.
>
> ---------------------------------------------------------------------------------------------
>
>
> Nevertheless, it is always advisable to use the client in the latest release
> available, so if it is possible for you to upgrade the clients, the
> recommendation would be to upgrade to cpp native client version 1.10.
>
> Best regards,
>
> /Alberto
>
> ________________________________
> From: Yossi Reginiano <[email protected]>
> Sent: Thursday, December 12, 2019 9:24 AM
> To: [email protected] <[email protected]>
> Cc: [email protected] <[email protected]>
> Subject: upgrade of geode version
>
>
> Hi team,
>
>
>
> We are currently using geode version 1.4 and wish to upgrade to version 1.10
>
> We are still using cpp client geode-native -
> pre-modernization<https://github.com/apache/geode-native/releases/tag/pre-modernization>
> (that was released on the 8th of may 2017), can we still work with this
> client after the upgrade to 1.10?
>
> If not – which cpp client version is suitable?
>
>
>
> Thanks,
>
> Yossi Reginiano
>
>
>
> This email and the information contained herein is proprietary and
> confidential and subject to the Amdocs Email Terms of Service, which you may
> review at https://www.amdocs.com/about/email-terms-of-service