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

PL/SQL Oracle Discussion :

[9i] Lock de sequence, est-ce possible ?


Sujet :

PL/SQL Oracle

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Scorpi0
    Invité(e)
    Par défaut [9i] Lock de sequence, est-ce possible ?
    Bonjour,

    Me voilà devant un problème embêtant.
    Un code Pro*C gère une séquence de manière peu catholique.
    A un moment, il y a une mise à jour de la current value d'une séquence Oracle à faire. Le moyen utilisé est celui la :

    1- Calcul du delta à rajouter à la séquence
    2- Incrémentation du step de la séquence
    3- sélection de la nextval de la séquence
    4- ré initialisation du step à 1

    J'ai vu que ce genre de manip était conseillé sur certain forum pour mettre à jour la valeur d'une séquence (plus rapide que n fois un nextval).

    Certes, le problème étant que ce Pro*C est lancé plusieurs fois en même temps. A la fin, on se retrouve avec d'énorme saut de séquence, ce qui est à peine étonnant puisqu'il suffit qu'un des thread accède à la nextval pendant que la valeur du step est >1 pour avoir des sauts.

    Une solution à laquelle on peu penser est de locker la séquence le temps de l'incrémentation, mais j'ai peur que ce ne soit pas possible sous Oracle.

    La question : comment mettre à jour une séquence par un thread de manière sûre, c'est à dire sans s'exposer à des problème de concurrence, ni de saut de séquence ?


    Edit Delestage : bien que la question reste ouverte, mon problème n'était pas provoqué par la séquence, out donc ^^
    Dernière modification par Scorpi0 ; 18/08/2008 à 15h48.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/03/2010, 19h59
  2. [IRC] -> Est-ce possible avec JBuilder ?
    Par MaTHieU_ dans le forum JBuilder
    Réponses: 4
    Dernier message: 26/08/2003, 17h24
  3. Réponses: 3
    Dernier message: 29/07/2003, 09h38
  4. Réponses: 2
    Dernier message: 16/05/2003, 10h14
  5. [CR] Est il possible de créer des univers avec Seagate Info?
    Par Frank dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 27/06/2002, 15h22

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