Wenn mysql und last_insert_id() denke daran: last_insert_id() ist auf die DB-Session bezogen. D.h., wenn jeder Prozess seine eigene DB-Session bekommt, ist alles ok.
Und woher soll ich jetzt wissen ob jeder Prozess eine eigene DB-Session bekommt?
Es kann Probleme geben bei persistenten DB-Sessions (DB-Handle), also DB-Sessions, die vor einem Prozessbeginn bereits etabliert sind. Mehrere Prozesse teilen sich dann die DB-Session, so kann es passieren, dass ein Prozess die last_insert_id() von einem anderen Prozess erfährt (in einer mir bekannten Fa kam sowas öfter vor, ich musste dann mühsam die binlogs auswerten zum Rekonstruieren von verlorengegangenen Warenkörben).
Wenn jeder Prozess seine eigene DB-Session herstellt, kann sowas nicht passieren.
Viele Grüße!