IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

[debutant]Liberation enreg en fin de session


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Par défaut [debutant]Liberation enreg en fin de session
    Bonjour
    Nous avons deux sessions ouvertes : A et B
    Dans la session A, après chaque insertion un commit est exécuté
    Mais dans la session B, les enregistrements créés par la session A
    ne sont pas visibles, malgré les commit.
    Ils ne deviennent visibles dans la session B, qu'à la fin de la session A.
    Qu'est ce qui peut produire ce genre de blocage ?
    Merci de votre aide

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Cela dépend.

    Si on relance la même requête 2 fois de suite dans la même transaction, chaque requête prend par défaut l'état de la base au moment du démarrage de la requête en cours d'exécution. Donc on peut voir des données qui n'étaient pas visibles avant. Cela correspond au mode d'isolation COMMITTED READ de la transaction.

    On peut changer ce mode mais en plus restrictif (SERILIAZABLE): dans ce cas, là chaque requête d'une même transaction voit l'état de la base par rapport au début de la transaction en cours.

    Ce blocage est tout à fait normal et empêche de faire des lectures sales (lire des données dont la transaction qui les modifie peut faire ROLLBACK).

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Par défaut
    N'existe t il pas dans une base Oracle le moyen de faire en sorte que tous
    les traitements ne soit validés dans la base qu'en fin de session ?
    D'apres ce que j'ai vu (et compris) en mode 'serializable' les 'commit' permettent aux autres sessions de voir les modifications.

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Citation Envoyé par tonyiommi
    N'existe t il pas dans une base Oracle le moyen de faire en sorte que tous
    les traitements ne soit validés dans la base qu'en fin de session ?
    A moins de faire une seule transaction pendant toute la durée de la session, non.

    Citation Envoyé par tonyiommi
    D'apres ce que j'ai vu (et compris) en mode 'serializable' les 'commit' permettent aux autres sessions de voir les modifications
    Ce n'est pas ce que dit la documentation:
    http://download-uk.oracle.com/docs/c...cnsis.htm#2778

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 6
    Par défaut
    Merci pour ces renseignements
    et mon : (et compris) s'entendait avec des : ???, beaucoup de doutes sur ma compréhension, vu ma méconnaissance d'Oracle

Discussions similaires

  1. [websphere] Version du JSDK et fin de session.
    Par ncachet dans le forum Websphere
    Réponses: 2
    Dernier message: 04/01/2006, 00h04
  2. [Débutant][ThreadGroup] Détecter la fin de toutes les tâches
    Par onlytoine dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 19/09/2005, 10h47
  3. message d'erreur perso lors fin de session
    Par zorba49 dans le forum ASP
    Réponses: 1
    Dernier message: 26/08/2005, 11h12
  4. detruire une cookie après fin de session
    Par MASSAKA dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 25/08/2005, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo