Perfect, that does help, thank you! It seemed like ERROR state was the right thing, but I wasn’t sure and I definitely didn’t know about the exception throwing triggering that automatically.
Thanks again! ~Brent > On Sep 15, 2020, at 9:44 PM, kishore g <[email protected]> wrote: > > > Throwing an exception is good enough. Helix will put that node into Error > state and pick another node to promote it to MASTER. > > You can also disable that partition on that node using helix api. > > Hope that helps. > > >> On Tue, Sep 15, 2020 at 9:16 PM Brent Nash <[email protected]> wrote: >> Hello! >> >> I had a follow-up question similar to an existing post: >> >> https://mail-archives.apache.org/mod_mbox/helix-user/202008.mbox/%3CCAKg%2BLsmZBHKXkWUXcQX5cPuPgX6Wz9RpVSrjUZDeZ5TgAjjOGg%40mail.gmail.com%3E >> >> My apologies for creating a new thread. I couldn't figure out how to reply >> to the existing one. >> >> Here is a hypothetical scenario: >> >> Let's say that I have a Helix controller running alongside a cluster. I >> have a configuration with a resource named "Database" representing a sharded >> database and a MASTER/SLAVE state model. >> >> Due to changes in the cluster, the Helix controller tells node 10.144.100.1 >> that it should transition from the SLAVE state to the MASTER state. But >> when the code on 10.144.100.1 attempts to transition from SLAVE state to >> MASTER state, it encounters a failure (e.g. it can't open its database >> shard) and cannot complete the transition to MASTER. >> >> Is there any way for node 10.144.100.1 to tell the Helix Controller that it >> failed the transition and it can't become the MASTER? >> >> In general, how does the Helix Controller know whether or not a node >> transitions state successfully? >> >> Thank you for your time and help! >> >>
