Code Monkey home page Code Monkey logo

Comments (14)

zuston avatar zuston commented on May 19, 2024

cc @jerqi

from incubator-uniffle.

jerqi avatar jerqi commented on May 19, 2024

@smallzhongfeng What do you think?

from incubator-uniffle.

smallzhongfeng avatar smallzhongfeng commented on May 19, 2024

I think this is a parameter setting. If the retry interval * retry times is greater than the heartbeat time passed by the server to the coordinator, the check of AccessCandidatesChecker is meaningful. If theretry interval * retry times is less than the heartbeat time of the server, Can be solved by setting the number of retries to 0 ? @zuston

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

Firstly i think your PR is meaningful for cluster load access checker.

But in other access checker, sometimes we needn’t retry. So I will introduce a special acess result of NON_TRANSIENT_ACCESS_DENIED to avoid retry in some checkers.

For example

If we enable two checkers

  1. when cluster-loader check deny but candidates checker pass, so we need to retry
  2. when cluster-loader check pass but candidates check deny, retry isn’t needed
  3. when two checks deny, retry isn’t needed

from incubator-uniffle.

smallzhongfeng avatar smallzhongfeng commented on May 19, 2024

I got your point. If you raise a pr, I'm glad to review.@zuston WDYT? @jerqi

from incubator-uniffle.

jerqi avatar jerqi commented on May 19, 2024

A little complex, are there similar mechanisms in the other systems? In my opinion, we shouldn't retry when we use candidate checker. when we only use health checker, we can retry, we can scale out our RSS at the same time. I doubt whether we need this mechanism?

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

If not having this mechanism, how to handle the multiple checkers retry?

In our internal env, we will use the multiple checkers, including health checker(need to retry) and customize checker(no need to retry).

from incubator-uniffle.

jerqi avatar jerqi commented on May 19, 2024

If not having this mechanism, how to handle the multiple checkers retry?

In our internal env, we will use the multiple checkers, including health checker(need to retry) and customize checker(no need to retry).

You can choose not to retry.

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

If not having this mechanism, how to handle the multiple checkers retry?
In our internal env, we will use the multiple checkers, including health checker(need to retry) and customize checker(no need to retry).

You can choose not to retry.

No retry is OK. But this will not solve the problem described in the issue #127

from incubator-uniffle.

smallzhongfeng avatar smallzhongfeng commented on May 19, 2024

Maybe you could choose not to retry when you use multiple checker, because in your description, the scenario of multiple checkers seems to be more dependent on the results of the candidates checker, in this way, it is not enough meaningful to retry, but the default checker is only AccessClusterloadChecker, and the issue #127 I proposed is mainly adapted to this checker, when you use this checker, you can choose to retry.

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

But when having multiple checkers, and the apps are in candidates list, for these apps, it need retry.

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

So do we need this feature ? cc @jerqi

from incubator-uniffle.

jerqi avatar jerqi commented on May 19, 2024

So do we need this feature ? cc @jerqi

I don't think we need so complex retry mechanism ...

from incubator-uniffle.

zuston avatar zuston commented on May 19, 2024

OK. Close it.

from incubator-uniffle.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.