Giter Club home page Giter Club logo

Comments (9)

krig avatar krig commented on August 15, 2024

It sounds like there might be a bug, yes. I will investigate.

from crmsh.

krig avatar krig commented on August 15, 2024

Well, crmsh hasn't changed in this aspect from what I can tell.. did you upgrade pacemaker as well as crmsh?

from crmsh.

omgold avatar omgold commented on August 15, 2024

Yes, previously I used 1.1.10, with the new crmsh I'm on 1.1.12.

from crmsh.

dmuhamedagic avatar dmuhamedagic commented on August 15, 2024

On Thu, Mar 12, 2015 at 06:31:52AM -0700, omgold wrote:

Yes, previously I used 1.1.10, with the new crmsh I'm on 1.1.12.

Essentially, the wait option makes crmsh wait for the pacemaker
DC to get back into the IDLE state.

Perhaps something changed in the meantime in pacemaker.

Does crmsh immediately return?

Could you also provide a hb_report (or crm_report) when crmsh
doesn't behave as expected? If you can easily reproduce, then run
crm with -dR and provide that output too.

from crmsh.

omgold avatar omgold commented on August 15, 2024

In fact, right now I have trouble reproducing on the fly. I get it more or less consistently on a fresh system, when trying it for the first time (I have an automated testing setup, which shows this behavior). So the problem definitely exists, but it seems to take me time to look into that. I will send you a crm_report as soon as I can get one.

from crmsh.

omgold avatar omgold commented on August 15, 2024

Okay, now got a crm_report for you, but I cannot attach it here. Where should I send it to?

Two more interesting facts:

  • it also doesn't happen with old crmsh on pacemaker 1.1.10, so the
    problem seems to be with crmsh
  • it seems to need some long chains of order constraints, so the
    failover will take time

from crmsh.

omgold avatar omgold commented on August 15, 2024

Did some search myself in the crmsh code. It seems when I try the command above wait4dc() is actually called and the found state is immediately S_IDLE. I tried adding an extra delay there before the first check. This shows, though, that the actually change of the stickiness does not happen before the wait4dc returns. So it is no surprise at all that the state is still idle. The call to wait4dc seems to come from Context.execute_command(), which looks okay to me. So I don't understand why the wait is before the change of stickiness.

from crmsh.

krig avatar krig commented on August 15, 2024

Thanks, that made it click for me! I've figured out what the problem is now. I just need to work out a fix.

from crmsh.

krig avatar krig commented on August 15, 2024

The above commit should fix the problem. execute_command() was actually the wrong place to wait, since the actual CIB commit happens after the command to modify the CIB was executed. I accidentally created this bug when I reworked the UI code between 1.2 and 2.0. Need to figure out some way to create a reliable test case for this.. Thanks for reporting it!

from crmsh.

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.