Igniters, the feature is ready for review:
https://issues.apache.org/jira/browse/IGNITE-12932
https://github.com/apache/ignite/pull/7744

On Thu, May 7, 2020 at 6:23 PM Pavel Tupitsyn <ptupit...@apache.org> wrote:

> Alex,
>
> Event subscription is a good idea. We should certainly add this in future.
> However, it might be non-trivial with multiple connections: should we
> subscribe on every server?
> Then we'll get an event from every server, which seems redundant.
>
> Igor,
>
> Agreed. Let's keep existing behavior.
>
> On Thu, May 7, 2020 at 5:29 PM Igor Sapego <isap...@apache.org> wrote:
>
>> Pavel,
>>
>> First of all, I think we need to move it out of scope of this feature.
>>
>> Also, why do we need to keep connection alive? I think, if user do not
>> use connection for a long time and connection is lost we could just
>> detect this and re-establish connection on the next user action which
>> requires network interaction. Any issues with this approach?
>>
>> Best Regards,
>> Igor
>>
>>
>> On Thu, May 7, 2020 at 1:18 AM Alex Plehanov <plehanov.a...@gmail.com>
>> wrote:
>>
>> > Pavel,
>> >
>> > Since we have a notification mechanism for thin clients now, we can
>> > implement a subscription to some types of events and this can be used
>> > to inform a client about topology change as well. I think it's a
>> > more appropriate way to detect topology changes than ping requests. But
>> > approach with ping requests has another advantage: the client can detect
>> > that connection was lost earlier. With subscriptions approach client
>> will
>> > detect problems with a connection only after the next request to the
>> > server.
>> >
>> >
>> > ср, 6 мая 2020 г. в 17:31, Pavel Tupitsyn <ptupit...@apache.org>:
>> >
>> > > Igniters, let's discuss the following issue:
>> > >
>> > > For partition awareness, and now for cluster discovery, we use a
>> response
>> > > flag to detect topology changes.
>> > > The problem is - if the client does not do anything (user code does
>> not
>> > > perform operations),
>> > > then we'll never know about topology changes and may even lose the
>> > cluster
>> > > (all known nodes leave).
>> > >
>> > > Should we introduce some keep-alive mechanism, so that thin clients
>> send
>> > > periodic ping requests?
>> > > Maybe do this as a separate feature.
>> > >
>> > > Thoughts?
>> > >
>> > > On Tue, Apr 28, 2020 at 8:14 PM Pavel Tupitsyn <ptupit...@apache.org>
>> > > wrote:
>> > >
>> > > > Ok, I've updated IEP and POC accordingly:
>> > > > * Config flag removed
>> > > > * IPs and host names retrieval simplified - use existing node
>> > properties
>> > > > and attributes instead of Compute
>> > > >
>> > > > On Tue, Apr 28, 2020 at 7:57 PM Igor Sapego <isap...@apache.org>
>> > wrote:
>> > > >
>> > > >> I guess it makes sense. If anyone needs more control over
>> connection
>> > > >> we would need to implement a new feature anyway (like node filter
>> we
>> > > >> discussed earlier)
>> > > >>
>> > > >> Best Regards,
>> > > >> Igor
>> > > >>
>> > > >>
>> > > >> On Tue, Apr 28, 2020 at 12:29 PM Pavel Tupitsyn <
>> ptupit...@apache.org
>> > >
>> > > >> wrote:
>> > > >>
>> > > >> > > enable the capability if the best effort affinity is on
>> > > >> > I agree, makes sense.
>> > > >> >
>> > > >> > Igor, what do you think?
>> > > >> >
>> > > >> > On Tue, Apr 28, 2020 at 8:25 AM Denis Magda <dma...@apache.org>
>> > > wrote:
>> > > >> >
>> > > >> > > Pavel,
>> > > >> > >
>> > > >> > > That would be a tremendous improvement for the recently release
>> > best
>> > > >> > effort
>> > > >> > > affinity feature. Without this capability, we force application
>> > > >> > developers
>> > > >> > > to reopen thin client connections every type a cluster is
>> scaled
>> > > out.
>> > > >> I
>> > > >> > > believe that once the folks start using the best effort
>> affinity,
>> > > >> we'll
>> > > >> > be
>> > > >> > > hearing more of a feature request for what you're proposing in
>> > this
>> > > >> > thread.
>> > > >> > > So, thanks for taking care of this proactively!
>> > > >> > >
>> > > >> > > As for the public API changes, do we really need any extra
>> flag? I
>> > > >> would
>> > > >> > > enable the capability if the best effort affinity is on. For
>> me,
>> > > it's
>> > > >> > just
>> > > >> > > a natural improvement of the latter and it sounds reasonable to
>> > > reuse
>> > > >> the
>> > > >> > > best effort affinity's flag.
>> > > >> > >
>> > > >> > > -
>> > > >> > > Denis
>> > > >> > >
>> > > >> > >
>> > > >> > > On Mon, Apr 27, 2020 at 2:58 AM Pavel Tupitsyn <
>> > > ptupit...@apache.org>
>> > > >> > > wrote:
>> > > >> > >
>> > > >> > > > Igniters,
>> > > >> > > >
>> > > >> > > > I've prepared an IEP [1] and a POC [2] for Thin Client
>> Discovery
>> > > >> > feature.
>> > > >> > > > Let's discuss it here.
>> > > >> > > >
>> > > >> > > > In particular, I'd like to address the following points:
>> > > >> > > >
>> > > >> > > > 1. Value: do you think this would be a good feature to have?
>> > > >> > > > 2. Public API changes: is a boolean property enough? Should
>> we
>> > > have
>> > > >> > > > something more complex, so users can plug in custom logic to
>> > > filter
>> > > >> > > and/or
>> > > >> > > > translate IPs and host names?
>> > > >> > > > 3. Server-side implementation details: should we use Compute,
>> > Node
>> > > >> > > > Attributes, or something else to retrieve client endpoints
>> from
>> > > all
>> > > >> > nodes
>> > > >> > > > in cluster?
>> > > >> > > >
>> > > >> > > > [1]
>> > > >> > > >
>> > > >> > > >
>> > > >> > >
>> > > >> >
>> > > >>
>> > >
>> >
>> https://cwiki.apache.org/confluence/display/IGNITE/IEP-44%3A+Thin+client+cluster+discovery
>> > > >> > > > [2] https://github.com/apache/ignite/pull/7744
>> > > >> > > > [3] https://issues.apache.org/jira/browse/IGNITE-12932
>> > > >> > > >
>> > > >> > >
>> > > >> >
>> > > >>
>> > > >
>> > >
>> >
>>
>

Reply via email to