performance sur serveur lié
bonjour
sql server 2005
server lié sql server 2005 (provider SQLNCLI)
j'ai des temps assez long depuis des procédures stockées qui synchronisent des données
avec ou sans transaction le temps est le même (msdtc pour les transactions distribuées)
une requete qui prend plus d'une minute :
Code:
1 2
| UPDATE serveurlié.base.dbo.table SET FlagTransfert = 1
WHERE IDServer = 13 AND SrcTable = '_histoarticle' AND FlagTransfert = 0 |
la meme requete hors procédure stockée prend moins d'une seconde
DDL de la table :
Code:
1 2 3 4 5 6 7 8 9 10 11
| CREATE TABLE [dbo].[SYNCPubLogs](
[IDPubLog] [bigint] IDENTITY(1,1) NOT NULL,
[IDServer] [bigint] NOT NULL,
[SrcTable] [nvarchar](80) NOT NULL,
[SrcIDLine] [bigint] NOT NULL,
[FlagTransfert] [bit] NOT NULL CONSTRAINT [DF_SYNCPubLogs__FlagTransfert] DEFAULT ((0)),
CONSTRAINT [PK_PubLogs] PRIMARY KEY CLUSTERED
(
[IDPubLog] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] |
(précision : server=> serverlié 100ko/s serverlié=>server 1,5Mo/s)
pourquoi c'est si long dans la procédure stockée ??
merci ...