В PostgreSQL есть механизм блокировки, называемый консультативный блокировка. Он предоставляет следующие функции API.
Функция, которая позволяет нам получить такую блокировку, принимает большой целочисленный аргумент: pg_advisory_lock(key bigint)
или два целых ключа: pg_advisory_lock(key1 int, key2 int)
(вторая форма).
Какой механизм абстракции можно использовать для использования строковых ключей вместо целых? Может быть, некоторые хеширующие функции смогут выполнить эту работу?
Возможно ли реализовать это только в PostgreSQL без необходимости приведения строки к целому числу на уровне приложения?
Если желаемая цель трудно достичь, возможно, я могу использовать два целых числа, чтобы идентифицировать строку в таблице. Второе целое может быть первичным ключом строки, но какое целое число можно использовать в качестве идентификатора таблицы?