ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Denis Magda <dma...@gridgain.com>
Subject Re: Abandon of the non-throwing version of C++ client API
Date Sat, 21 Jan 2017 15:47:19 GMT
Hi Igor,

My C++ experience is based only on error code methods. This is why I
thought that exceptions based approach is unrelated to C++ at all.

I do remember we discussed all the pros and cons of these ways before.
Could you find that old discussion and share it here? I'm on a mobile now,
not easy to do on my own.


On Friday, January 20, 2017, Igor Sapego <isapego@gridgain.com> wrote:

> Hi Igniters,
> I'm the guy who mostly contribute in C++ Ignite client and I
> need your advice. Mostly I'd like to hear from our users and
> those who are experienced in C++. Currently we have two
> versions of most API methods - the throwing one and the
> one that returns error through output argument. This was initially
> done because we were not sure which way of error-reporting
> is going to be preferred by our users.
> Now this approach bloats C++ API a lot and makes it harder to
> maintain and optimize code. I propose like to abandon and deprecate
> non-throwing version of API and only leave throwing version,
> but first I want to hear from you guys - what do you think? Does
> anyone use non-throwing version of the API? Maybe your toolchain
> does not support exceptions or are you disabling them on purpose?
> For those who prefer disabling exceptions I propose to introduce
> some macros like IGNITE_DISABLE_EXCEPTIONS and add
> some thread-local error-storing mechanism like ignite::GetLastError().
> What do you guys think?
> Best Regards,
> Igor

View raw message