Nie liczę na pomoc bo to dość niszowy temat, ale może coś ktoś...
Chodzi o to, że jest biblioteka SYNC w PHP do synchronizacji procesów, można tam sobie robić: Mutexy, model Reader-Writer, Semafory etc., wszystko wygodnie i cross-platform: https://www.php.net/manual/en/book.sync.php
Problem pojawia się w trybie CLI w PHP, dla klasy SyncReaderWriter kiedy odpala się np. w danej sekundzie kilkanaście procesów PHP, i każdy chce zrobić readlock na ten sam klucz.
Często te readlocki się nie udają: proces wisi aż skończy się timeout (np. 30 sekund) i zgłasza, że readlock byl nieudany, mimo że żaden inny proces nie blokował tak długo tego klucza na który była proba readlocka writelockiem, a tym bardziej readlockiem, który trwa bardzo krótko: readlock, odczyt w kilka ms, unlock.
Wygląda to jakby można było w trybie CLI założyć tylko kilka readlocków na raz na dany zasób, a założenie kolejnego oznacza zwis, nawet jeżeli już wszystkie inne readlocki są odblokowane.
Może ktoś wie jak z tym wlaczyć? Procesy odpalane przez php-fpm nie mają takiego problemu, tylko CLI.