J'essaie de comprendre Oracle 11g un peu plus de plus près. Ma question est simple: comment Oracle gère-t-il deux sessions qui tentent d'insérer des enregistrements dans une seule table en même temps.
Par exemple, insérez une course à 13h00 contre le tableau 1. Il faudra 5 minutes à compléter. Insérer B est exécuté à 1:02 PM contre le tableau 1. Il faudra 1 minute à compléter.
Que va-t-il arriver? La file d'attente Oracle sera-t-elle exécutée après l'insertion A terminée? Insérera-t-il B exécuter simultanément avec insérer A?
Merci!
Les inserts ne s'affectent pas à moins d'avoir un conflit avec des contraintes clés uniques ou primaires. Ils devraient être indépendants. Je crois que cette question de concurrence est l'une des raisons pour lesquelles la séquence d'Oracle est un objet séparé (Cached, génération de PK de substitution de substitution séparée de l'insert).
À cet égard, ils fonctionnent sur la table non engagée comme on le voit à leur session. Ce comportement est décrit dans le poste de Stackoverflow ci-dessous.
https://stackoverflow.com/questions/3194999/dml-by-multiple-utilisateurs-Commit-scénarios-in-oracle