Project

General

Profile

Actions

Feature #18071

open

Use postgresql advisory locks to prevent concurrent dispatcher / keep-balance processes

Added by Tom Clegg about 1 year ago. Updated 4 days ago.

Status:
New
Priority:
Normal
Assigned To:
Category:
-
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
(Total: 0.00 h)
Story points:
-


Subtasks 1 (1 open0 closed)

Task #19507: ReviewNewLucas Di Pentima

Actions
Actions #1

Updated by Tom Clegg about 1 year ago

  • Release deleted (20)
Actions #2

Updated by Tom Clegg about 1 year ago

  • Description updated (diff)
Actions #3

Updated by Tom Clegg 19 days ago

  • Target version set to 2022-09-28 sprint
  • Assigned To set to Tom Clegg
Actions #4

Updated by Peter Amstutz 19 days ago

This should be the kind of lock that allows the new process can elbow out the old process -- I'm thinking of the situation where we start a new "something" and want it to replace the old "something".

So we want to communicate:

  • To the new process that it is now allowed to take over
  • To the old process it should release the lock and shut down
Actions #5

Updated by Peter Amstutz 18 days ago

On second thought, that might be a bad idea, because it could lead to two processes fighting over the lock instead of one getting it and the other failing.

The one that fails to get the lock, perhaps it could stay up health check reports it in a "failed to get lock" state? Also, can the lock record some information about the node that does have the lock.

Actions #6

Updated by Peter Amstutz 18 days ago

When lock is acquired, record hostname + process id

Actions #7

Updated by Peter Amstutz 4 days ago

  • Target version changed from 2022-09-28 sprint to 2022-10-12 sprint
Actions #8

Updated by Peter Amstutz 4 days ago

  • Target version changed from 2022-10-12 sprint to 2022-10-26 sprint
Actions

Also available in: Atom PDF