Bonjour,

Je suis en train de ma battre avec une procédure qui ne se termine jamais.
Cette procédure a une requête qui pose problème uniquement lorsque je l'exécute via un package SSIS. En procédant par élimination j'ai trouvé quelle ligne pose problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
SELECT ...
INTO #tmp
FROM Table1 t1
	LEFT JOIN Table2 t2
	...
	LEFT JOIN 
	...
	INNER JOIN tn
	...
WHERE	t2.ID IS NULL
	AND	t1.DAT_DEB >= @date_ref -- cette ligne pose problème
Lorsque je commente cette ligne la procédure s'exécute normalement.

CE qui est aussi étonnant c'est que lorsque j'exécute la procédure dans management studio (EXEC proc_toto) cette ligne ne pose pas de problèmes.

Le problème se pose uniquement lorsque je l'exécute via un package SSIS.

En faisant des investigations j'ai remarqué que la requête pose plein de verrous visibles dans l'Activity Monitor. J'ai essayé de rajouter WITH (TABLOCK) sur Table1, j'ai vu moins de verrous mais ça ne règle pas le problème. J'ai également essayé d'ajouter OPTION (KEEP PLAN) - pareil.

Autre remarque importante: la valeur de @date_ref n'a aucun impact sur la requête, même si on rentre une valeur qui doit ramener 0 résultats, par contre si on remplace la variable par une valeur en dur - aucun problème.

Quelqu'un a une idée de ce que ça peut être?