Tu as donné la solution atomique toi-même. Simplement, ce qui précédait ne l'était pas (personne n'a parlé de LOCK).
Maintenant, revers de la médaille, obtenir un lock sur toute une table dégrade les performances. Tu n'as jamais eu de pb parce que dans la pratique, c'est uniquement dans le cas d'une charge maximale que cela se manifestera, sous forme d'un bottleneck pas toujours évident à détecter.
Ceci dit, je m'interroge sur la portée exacte du lock :
Citation :
LOCK TABLES locks tables for the current thread
|
Cela veut-il dire qu'un autre thread pourra malgré tout accéder à la table, malgré le lock ? Mes connaissances en MySQL s'arrêtent là mais ça vaut la peine de se poser la question.
---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}