glasser commented on issue #6349: maintenance mode for Historical
URL: https://github.com/apache/incubator-druid/pull/6349#issuecomment-460536393
 
 
   One thing that's slightly awkward about storing this list as an array in the 
dynamic config: you can't atomically add or remove an element from this list.  
If implementing something that uses this feature dynamically (say from a k8s 
historical's pre-stop hook) it would be nice if they could send a single 
request that is guaranteed to add them to the list without accidentally 
removing something else from the list.
   
   Do you think it would be reasonable to add an optional query param to the 
/druid/coordinator/v1/config POST handler to allow you to specify the expected 
previous contents, so you can do a compare-and-swap write?  One caveat is that 
you'd need to be sure that the value you sent is exactly the value stored in 
the DB, not corrupted by being round-tripped through Jackson...
   
   Another option would be to add a specific HTTP endpoint to add an element to 
a list in the dynamic config.  (There'd still need to be a SQL-level 
compare-and-swap.)

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to