Re: Disable WAL for several cache groups within one exchange

2018-05-14 Thread Anton Vinogradov
Ivan, enableWal/disableWal will return false in case enabling/disabling was caused not by this call. For example it will return false in case wal already enabled/disabled. Example: boolean res1 = srv.cluster().enableWal(CACHE_NAME); boolean res2 = srv.cluster().enableWal(CACHE_NAME); assert

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Ivan Rakov
Agree about collections. Regarding return type: it's a tricky question. Maybe author of this feature may help. Anton V., in which case enableWal/disableWal can return false? Best Regards, Ivan Rakov On 11.05.2018 18:19, Vladimir Ozerov wrote: Ivan, This proven to be too hard to understand.

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Vladimir Ozerov
Ivan, This proven to be too hard to understand. It is better to have a lot small methods with clear and compact semantics. Also arrays are harder to manage than collections, users typically prefer the latest. Also we need to think on what would be a result of this operation. Current methods with

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Ivan Rakov
It would be six methods in total (3 for enabling, 3 for disabling). What about accepting null in *enableWAL(String... caches)* as wildcard? Best Regards, Ivan Rakov On 11.05.2018 17:52, Andrey Mashenkov wrote: Ivan, Huge +1 for this improvement. I think we can have 2 overloaded method

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Ivan Rakov
Vladimir, I fully agree. We don't expose groups to public API (except for cache configuration), so we shouldn't start doing it here. Ignite issue for this improvement: https://issues.apache.org/jira/browse/IGNITE-8473 Best Regards, Ivan Rakov On 11.05.2018 17:49, Vladimir Ozerov wrote:

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Andrey Mashenkov
Ivan, Huge +1 for this improvement. I think we can have 2 overloaded method enableWal() with no args to enable WAL for all caches and enableWAL(String... caches) for one or multiple caches. (and same for disable wal) On Fri, May 11, 2018 at 5:25 PM, Dmitriy Govorukhin <

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Vladimir Ozerov
Ivan, WAL disable for multiple caches was not implemented in the first place for a reason. We striven to maintain API consistency, "IgniteCluster.disableWal(cacheName)" maps exactly to "ALTER TABLE tableName NOLOGGING" command. There is no SQL equivalent for multiple caches. WAL disable for

Re: Disable WAL for several cache groups within one exchange

2018-05-11 Thread Dmitriy Govorukhin
Ivan, Agree, if we have the batch method for cache create, we should have the ability to enable/disable WAL in the batch too. On Fri, May 11, 2018 at 5:17 PM, Ivan Rakov wrote: > Igniters, > > API method for disabling WAL in IgniteCluster accepts only one cache name. >

Disable WAL for several cache groups within one exchange

2018-05-11 Thread Ivan Rakov
Igniters, API method for disabling WAL in IgniteCluster accepts only one cache name. Every call triggers exchange and checkpoints cluster-wide - it takes plenty of time to disable/enable WAL for multiple caches. I think, we should add option to disable/enable WAL for several caches with