Igniters,

I'm working on IgniteSet in Java thin client [1], and I'm not sure how to
deal with iterator release.

On the "thick" API side we use WeakReferenceCloseableIterator [2] to
release iterator resources automatically when the iterator instance is
claimed by GC.

a) Reuse this on the client side somehow.
    Pros: consistent behavior, fool-proof
    Cons: complexity, nondeterministic resource release

b) Make client-side iterator AutoCloseable
    Pros: simple, deterministic
    Cons: error-prone for users, not consistent with thick API

Thoughts?


[1] https://issues.apache.org/jira/browse/IGNITE-16897
[2]
https://github.com/apache/ignite/blob/71ff768ac98b3411fee876d42cad9689f1b16c2a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheWeakQueryIteratorsHolder.java#L350

Reply via email to