A Kestra, la plateforme d’orchestration et de scheduling de workflow pour laquelle je travaille, nous avons deux implémentations de repository: JDBC (avec support pour H2, MySQL et Postgres) et Elasticsearch.

En JDBC, locker un enregistrement pour le traiter est assez facile :

SELECT FOR UPDATE … WHERE … va poser un lock sur le ou les enregistrements On traite le ou les enregistrements dans la même transaction UPDATE… En fin de transaction, la BDD va automatiquement relâcher les locks obtenu via le SELECT FOR UPDATE.

Mais Elasticsearch ne supporte ni les locks ni les transactions, existe-t-il un moyen de simuler un lock?

Commentaires

Vous devez vous inscrire ou vous connecter pour poster un commentaire