Thanks Akshesh. Disconnecting participants is one way to achieve the goal.
But it could impact the all replicas on that participant.

I would suggest Imran to disable the partition for that instance. So it
will trigger it from Master -> Slave. Then you can throw exception during
the process to make it to ERROR state. Or just peacefully shut it down.

Best,

Junkai

On Sat, Jun 27, 2020 at 6:17 AM Akshesh Doshi <[email protected]>
wrote:

> Hi Imran
>
> I am not sure if you can mark it as ERROR or not (since the transition
> S->M has already completed successfully) but if you just care about this
> replica going down and spawning a master on another node you can just stop
> this replica by stopping this process or *disconnecting
> <https://github.com/apache/helix/blob/master/helix-core/src/main/java/org/apache/helix/examples/Quickstart.java#L258>*
> this replica from Helix.
>
>
> HTH
> Regards
> Akshesh Doshi
>
>
> On Fri, 19 Jun 2020 at 18:37, Imran S. Shah <[email protected]> wrote:
>
>> Hi Lei,
>>
>> The partition is already in M state as transition was completed quite
>> sometime back. Now, only 1 partition in the participant needs to be moved
>> to ERROR state as some I/O exception has happened. So is there any API that
>> the participant could call to mark this particular partition in ERROR so
>> helix controller can start doing reassignments?
>>
>> Thanks
>> Imran
>>
>> On Mon, Jun 15, 2020 at 7:55 AM Lei Xia <[email protected]> wrote:
>>
>>> Hi, Imran
>>>
>>>    You can simply throw out an exception from your M->S state
>>> transition, then Helix will mark it as ERROR.
>>>
>>>
>>> Lei
>>>
>>> On Fri, Jun 12, 2020 at 4:41 AM Imran S. Shah <[email protected]>
>>> wrote:
>>>
>>>> Hello
>>>>
>>>> I have implemented a standard Master-Slave model. Now let's say my
>>>> partitions are in Master state, but however due to some errors (out of disk
>>>> space for a particular partition on the participant), I would like the
>>>> participant to transition the state to error. However, looking at the
>>>> documentation it doesn't look like there is a method that I could call.
>>>> Updating the state on the model just updates the local variable and doesn't
>>>> notify the controller.
>>>>
>>>> Any pointers or examples would be appreciated.
>>>>
>>>> Thanks,
>>>> Imran
>>>>
>>>
>>>
>>> --
>>> Lei Xia
>>>
>>

Reply via email to