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

SSIS Discussion :

Blocage de transaction


Sujet :

SSIS

  1. #1
    Membre régulier Avatar de Fredo02
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 146
    Points : 91
    Points
    91
    Par défaut Blocage de transaction
    Bonjour,

    J'ai un package SSIS qui insert des données dans une BD depuis un fichier plat.
    Mes différentes insertions sont placées dans un conteneur de séquences.
    Au dessus de ce contenur j'ai une tache SQL qui fait "BEGIN TRAN matransac".
    En dessous de ce conteneur j'ai 2 taches SQL, une en sortie avec succés "COMMIT TRAN matransac" et l'autre en cas d'erreur "ROLLBACK TRAN matransac".

    Si mon conteneur de séquence passe sans erreur je commit sinon je rollback.
    J'ai correctement attribué la proptiété RetainSameConnection à True.

    Cependant en fonction de la taille du fichier plat, le package coince en plein milieu, la case reste jaune.

    Une idée ?

    Merci
    Microsoft Certified Professional Developer SharePoint 2010

  2. #2
    Membre régulier Avatar de Fredo02
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 146
    Points : 91
    Points
    91
    Par défaut
    Petite info non négligeable, le problème se situe lorsque j'essaye d'inserer en meme temps dans la meme table.

    En fait j'ai un fractionnement conditionnel et pour chaque branche j'insere dans la table client mais avec des valeurs différentes.

    J'ai tenté de déchoché la case "Verrou" mais çà ne change rien.
    Microsoft Certified Professional Developer SharePoint 2010

  3. #3
    Membre émérite Avatar de FrancoisJehl
    Homme Profil pro
    BI Engineer
    Inscrit en
    Juillet 2009
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 485
    Points : 2 883
    Points
    2 883
    Par défaut
    Tu as essayé de rajouter un WITH(NOLOCK) à ton SELECT d'entrée?
    François JEHL
    BI Engineer | MVP SQL Server
    http://fjehl.wordpress.com
    Pour me contacter, par MP ou ici, mais pas pour des questions techniques.

    /*
    Avant de poster cherchez dans la FAQ et utilisez la fonction "Rechercher" du forum.
    Au moment de poster, posez votre question dans le bon sous-forum (Débuter, SSAS, SSRS, SSIS), en utilisant les TAGs prédéfinis ([2K], [2K5], [2K8], [2K8R2]).
    */

  4. #4
    Membre régulier Avatar de Fredo02
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 146
    Points : 91
    Points
    91
    Par défaut
    Je n'ai pas de select, c'est un fichier plat.
    Microsoft Certified Professional Developer SharePoint 2010

  5. #5
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Décembre 2011
    Messages : 17
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par Fredo02 Voir le message
    Au dessus de ce contenur j'ai une tache SQL qui fait "BEGIN TRAN matransac".
    En dessous de ce conteneur j'ai 2 taches SQL, une en sortie avec succés "COMMIT TRAN matransac" et l'autre en cas d'erreur "ROLLBACK TRAN matransac".
    J'aurais une petite question pour ma culture personnelle: Y a-t-il un intérêt à préférer l'utilisation de tâches SQL pour gérer une transaction sachant que le conteneur de séquences comporte la propriété "TransactionOption" qui permet de le faire?

  6. #6
    Membre émérite Avatar de FrancoisJehl
    Homme Profil pro
    BI Engineer
    Inscrit en
    Juillet 2009
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 485
    Points : 2 883
    Points
    2 883
    Par défaut
    En fait j'ai un fractionnement conditionnel et pour chaque branche j'insere dans la table client mais avec des valeurs différentes.
    J'avais mal lu c'est un scénario que j'évite en général. Et hormis décocher TABLOCK...

    Y a-t-il un intérêt à préférer l'utilisation de tâches SQL pour gérer une transaction sachant que le conteneur de séquences comporte la propriété "TransactionOption" qui permet de le faire?
    Technologiquement ça n'a pas grand chose à voir, donc les usages divergent
    d'un côté tu gères les transactions en mode DTC, ce qui est assez transparent mais nécessite de la config côté réseau (parles en à un admin, DTC sur du multi serveur c'est assez vite un cauchemar à configurer). Et ça te limite à SQL Server et certaines versions d'Oracle. Et quand ça vautre personne ne comprend rien.
    de l'autre tu as la main sur ta transaction, c'est compatible avec n'importe quel moteur, ça ne nécessite pas de configuration spécifique, mais c'est plus limité d'un point de vue dev (pas de distribution inter packages, gestion d'une seule connexion) et c'est mono-moteur.
    François JEHL
    BI Engineer | MVP SQL Server
    http://fjehl.wordpress.com
    Pour me contacter, par MP ou ici, mais pas pour des questions techniques.

    /*
    Avant de poster cherchez dans la FAQ et utilisez la fonction "Rechercher" du forum.
    Au moment de poster, posez votre question dans le bon sous-forum (Débuter, SSAS, SSRS, SSIS), en utilisant les TAGs prédéfinis ([2K], [2K5], [2K8], [2K8R2]).
    */

  7. #7
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Décembre 2011
    Messages : 17
    Points : 22
    Points
    22
    Par défaut
    Merci pour les infos,
    Je vais sûrement adopter cette méthode qui m'évitera de retrouver du "vrac" dans mes datas quand le package plante en plein milieu
    Pour les transactions distribuées, j'avais en effet constaté pas mal de contraintes pour les mettre en oeuvre.

Discussions similaires

  1. blocage (transaction verouillée)
    Par morados dans le forum Développement
    Réponses: 6
    Dernier message: 05/12/2011, 10h45
  2. Transaction et blocage
    Par J0r_x dans le forum Développement
    Réponses: 6
    Dernier message: 21/05/2010, 18h18
  3. Blocage de transaction (NOLOCK ?)
    Par Liloye dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/05/2010, 09h01
  4. blocage d'une transaction
    Par richard038 dans le forum Bases de données
    Réponses: 2
    Dernier message: 16/11/2005, 12h00
  5. Apropos des Transactions au sein d'un Stored Procedure
    Par Sarbacane dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 16/11/2004, 08h21

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