Hi Val, This is a very good point.
I've looked around blogs, docs, and system APIs, and updated the IEP accordingly: For Ignite.NET I propose NOT to add sync methods when the actual implementation is async: - It is easy to consume async APIs in C# with async/await keywords (added in 2012 and widely adopted) - Most codebases are fully async anyway - System APIs and popular libraries follow this direction - Sync-over-async is misleading and can affect performance However, I'm not so sure about Java, where async/await are not present, overall async usage seems to be rarer, and removing sync methods may become an obstacle for the users in some cases. Let's create a separate discussion and see what others think. Pavel On Thu, Sep 2, 2021 at 10:32 PM Valentin Kulichenko < valentin.kuliche...@gmail.com> wrote: > Hi Pavel, > > I've looked at the IEP and the public API - looks good to me. > > Quick question - do you plan to add sync methods to the interfaces, or > you're thinking to only leave async? If the latter, what are the arguments > for this? The reason I'm asking is that I'm actually thinking about > suggesting the same for Java as well (or at least having a discussion about > this). > > -Val > > On Thu, Sep 2, 2021 at 10:08 AM Pavel Tupitsyn <ptupit...@apache.org> > wrote: > > > Igniters, > > > > Please review the IEP [1] and the PoC [2] for .NET Thin Client in Ignite > > 3.0. > > > > [1] > > > https://cwiki.apache.org/confluence/display/IGNITE/IEP-78+.NET+Thin+Client > > [2] https://github.com/apache/ignite-3/pull/306 > > >