Timepo de Espera II

23/12/2005 - 22:57 por Ricardo Uribe Zegarra | Informe spam
Parece la segunda parte de una pelicula de terror.

Es que ahora otra de mis consultas que no demoraba
mas de 2 segundos, sale se agoto el tiempo de espera,
no se lo que puedo haber pasado, lo ultimo que hice fue crear
algunas relaciones y aumentar a un campo a una tabla X.

No entiendo, porque pruebo en una base de prueba en mi PC
y ahi todo va de lo mas normal.

Muchas gracias por su ayuda.

Preguntas similare

Leer las respuestas

#1 Maxi [MVP]
24/12/2005 - 14:07 | Informe spam
Hola, primero habria que ver si tu pc de prueba es igual al server de
produccion.
Segundo, porque no nos pasas los planes de ejecucion de tu pc de prueba y la
del servidor.

Estas usando el service pack4 en el servidor por casualidad? de ser asi yo
te diria que pruebes de poner el 3a


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org



"Ricardo Uribe Zegarra" escribió en el mensaje
news:
Parece la segunda parte de una pelicula de terror.

Es que ahora otra de mis consultas que no demoraba
mas de 2 segundos, sale se agoto el tiempo de espera,
no se lo que puedo haber pasado, lo ultimo que hice fue crear
algunas relaciones y aumentar a un campo a una tabla X.

No entiendo, porque pruebo en una base de prueba en mi PC
y ahi todo va de lo mas normal.

Muchas gracias por su ayuda.


Respuesta Responder a este mensaje
#2 Ricardo Uribe Zegarra
26/12/2005 - 16:22 | Informe spam
Hola maxi, gracias por responder, ante todo espero hayas
tenido una feliz navidad, este es el plan
de ejecucion del que me devuelve el servidor.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0 else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Sort(ORDER BY:([Union1043] ASC))
|--Merge Join(Right Outer Join,
MERGE:([Movimientos].[CodigoArticulo])=([Union1042]),
RESIDUAL:([Union1042]=[Movimientos].[CodigoArticulo]))
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1102]=0) then
NULL else [Expr1103]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo])
DEFINE:([Expr1102]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1103]=SUM([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006])))
| |--Nested Loops(Left Outer Join, OUTER
REFERENCES:([Movimientos].[CodigoArticulo], [FichaObra].[Serie],
[FichaObra].[Numero]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo],
[PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Docu
| | |--Sort(ORDER
BY:([Movimientos].[CodigoArticulo] ASC,
[PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] A
| | |--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[Expr1078])=([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[Codigo
| | |--Compute
Scalar(DEFINE:([Expr1078]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |--Sort(DISTINCT ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC))
| | | |--Hash Match(Inner
Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]), RESIDUAL:([FichaO
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Table
Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |--Hash Match(Inner Join,
HASH:([Documento].[NumeroMovimiento])=([Movimientos].[NumeroMovimiento]))
| | |--Hash Match(Inner
Join, HASH:([Expr1079], [Expr1081])=([Expr1080], [Expr1082]),
RESIDUAL:([Expr1080]=[Expr1079] AND [Expr1082]=[Expr1081]))
| | | |--Compute
Scalar(DEFINE:([Expr1079]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1081]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Compute
Scalar(DEFINE:([Expr1080]=Convert([Documento].[SerieCotizacion]),
[Expr1082]=Convert([Documento].[CodigoCotizacion])))
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]))
| |--Table Spool
| |--Stream Aggregate(GROUP
BY:([Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER
BY:([Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join,
OUTER REFERENCES:([Documento].[NumeroMovimiento]))
| |--Nested Loops(Inner
Join,
WHERE:(Convert([Documento].[SerieCotizacion])=right('000'+Convert([FichaObra
].[Serie]), 3) AND
Convert([Documento].[CodigoCotizacion])=right('0000000'+Convert([FichaObra].
[Nume
| | |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObra].[Serie] AND
[FichaObra].[Numero]=[FichaObra].[Numero]), WHERE:([FichaObra].[CodigoE
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento] AND
[Movimientos].[CodigoArticulo]=[Movimientos].[Cod
|--Nested Loops(Inner Join, OUTER REFERENCES:([Union1042])
WITH PREFETCH)
|--Compute Scalar(DEFINE:([Expr1045]=If ([Expr1108]=0)
then NULL else [Expr1109]))
| |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1108]=COUNT_BIG([Union1044]),
[Expr1109]=SUM([Union1044])))
| |--Sort(ORDER BY:([Union1042] ASC,
[Union1043] ASC))
| |--Concatenation
| |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1104]=0) then NULL else [Expr1105]))
| | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1083])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| |
|--Sort(ORDER BY:([Expr1083] ASC))
| | |
|--Compute
Scalar(DEFINE:([Expr1083]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | |
|--Clustered Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |
|--Table Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| |
|--Clustered Index Scan(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
ORDERED FORWARD)
| |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1106]=0) then NULL else [Expr1107]))
| |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1106]=COUNT_BIG([FichaObraInstal
| |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]))
| |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | |--Nested
Loops(Inner Join, OUTER REFERENCES:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]))
| |
|--Merge Join(Inner Join,
MERGE:([FichaObraInstalador].[SerieFichaObraInstalador],
[FichaObraInstalador].[NumeroFichaObraInstalador])=([FichaObraInstaladorDeta
lles].[SerieFichaObraInst
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstaladors]
), ORDERED FORWARD)
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObraInst
aladorsDetalles]), ORDERED FORWARD)
| |
|--Clustered Index Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObraInstalador].[SerieFichaObra] AND
[FichaObra].[Numero]=[FichaObraInstala
| |--Clustered
Index Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[Union1042]) ORDERED FORWARD)

Una cosa mas que no les habia comentado es que tambien instale un dominio
secundario, lo cual en la pc me sale el icono del administrador de
servicios ahi solo pongo el nombre del servidor y aparece activado.

y este es el que me devuelve mi PC de prueba.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0 else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Nested Loops(Left Outer Join,
WHERE:([Union1042]=Convert([Movimientos].[CodigoArticulo])))
|--Sort(ORDER BY:([Union1043] ASC))
| |--Merge Join(Inner Join, MANY-TO-MANY
MERGE:([Union1042])=([Articulo].[CodigoArticulo]),
RESIDUAL:([Union1042]=[Articulo].[CodigoArticulo]))
| |--Compute Scalar(DEFINE:([Expr1045]=If ([Expr1103]=0)
then NULL else [Expr1104]))
| | |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1103]=COUNT_BIG([Union1044]),
[Expr1104]=SUM([Union1044])))
| | |--Merge Join(Concatenation)
| | |--Sort(ORDER BY:([Expr1036] ASC,
[Articulo].[Descripcion] ASC, [Expr1037] ASC))
| | | |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1099]=0) then NULL else [Expr1100]))
| | | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1079])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| | |
|--Sort(ORDER BY:([Expr1079] ASC))
| | | |
|--Compute
Scalar(DEFINE:([Expr1079]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |
|--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
| | |--Sort(ORDER BY:([Expr1038] ASC,
[Articulo].[Descripcion] ASC, [Expr1035] ASC))
| | |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| | |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1101]=0) then NULL else [Expr1102]))
| | |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1101]=COUNT_BIG([FichaObraInstal
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]) WITH PREFETCH)
| | |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[NumeroFichaObraInstalador],
[FichaObraInstalador].[SerieFichaObraInstalador]))
| | |
|--Merge Join(Inner Join, MERGE:([FichaObra].[Serie],
[FichaObra].[Numero])=([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]), RESIDUAL:([FichaObraInsta
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1) ORDERED FORWARD)
| | | |
|--Sort(ORDER BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC))
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstala
dors]))
| | |
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObr
aInstaladorsDetalles]),
SEEK:([FichaObraInstaladorDetalles].[SerieFichaObraInstalador]=[F
| | |--Clustered
Index Seek(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
|--Table Spool
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1105]=0) then
NULL else [Expr1106]))
|--Hash Match(Aggregate,
HASH:([Movimientos].[CodigoArticulo]),
RESIDUAL:([Movimientos].[CodigoArticulo]=[Movimientos].[CodigoArticulo])
DEFINE:([Expr1105]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1106] |--Hash Match(Right Outer Join,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo])=([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo]), RESIDUAL:(([FichaObra].[Serie]=[FichaOb
|--Stream Aggregate(GROUP
BY:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER BY:([FichaObra].[Serie]
ASC, [FichaObra].[Numero] ASC, [Movimientos].[CodigoArticulo] ASC,
[Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join, OUTER
REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
| |--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| | |--Hash Match(Inner
Join, HASH:([Expr1071], [Expr1073])=([Expr1072], [Expr1074]),
RESIDUAL:([Expr1072]=[Expr1071] AND [Expr1074]=[Expr1073]))
| | |--Compute
Scalar(DEFINE:([Expr1071]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1073]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |--Compute
Scalar(DEFINE:([Expr1072]=Convert([Documento].[SerieCotizacion]),
[Expr1074]=Convert([Documento].[CodigoCotizacion])))
| | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)
|--Sort(DISTINCT ORDER BY:([Rank1070] ASC))
|--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo])=([FichaObra].[Serie],
[FichaOb
|--Hash Match(Inner Join,
HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]),
RESIDUAL:([FichaObra].[Serie]=[P
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| |--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
|--Rank
|--Hash Match(Aggregate,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente]),
RESIDUAL:((([FichaObra].[Serie]=[FichaObra].[Serie] AND [FichaObra].[Nume
|--Nested Loops(Inner
Join, OUTER REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
|--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| |--Hash
Match(Inner Join, HASH:([Expr1075], [Expr1077])=([Expr1076], [Expr1078]),
RESIDUAL:([Expr1076]=[Expr1075] AND [Expr1078]=[Expr1077]))
|
|--Compute
Scalar(DEFINE:([Expr1075]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1077]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
|
|--Compute Scalar(DEFINE:([Expr1076]=Convert([Documento].[SerieCotizacion]),
[Expr1078]=Convert([Documento].[CodigoCotizacion])))
|
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)

Muchas gracias por tu ayuda.



"Maxi [MVP]" escribió en el mensaje
news:
Hola, primero habria que ver si tu pc de prueba es igual al server de
produccion.
Segundo, porque no nos pasas los planes de ejecucion de tu pc de prueba y


la
del servidor.

Estas usando el service pack4 en el servidor por casualidad? de ser asi yo
te diria que pruebes de poner el 3a


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org



"Ricardo Uribe Zegarra" escribió en el mensaje
news:
> Parece la segunda parte de una pelicula de terror.
>
> Es que ahora otra de mis consultas que no demoraba
> mas de 2 segundos, sale se agoto el tiempo de espera,
> no se lo que puedo haber pasado, lo ultimo que hice fue crear
> algunas relaciones y aumentar a un campo a una tabla X.
>
> No entiendo, porque pruebo en una base de prueba en mi PC
> y ahi todo va de lo mas normal.
>
> Muchas gracias por su ayuda.
>
>


Respuesta Responder a este mensaje
#3 qwalgrande
26/12/2005 - 20:03 | Informe spam
Hola.

Siento no disponer del tiempo suficiente como para revisar y comparar ambos
planes de ejecución. Lo que sí te puedo aconsejar es que intentes comparar
los planes de ejecución en modo gráfico (mucho más intuitivo). Localiza las
diferencias y presta especial atención a los recorridos de índices (scan).
Y, contrariamente a lo que Maxi opina, yo no enfocaría el problema en una
pérdida de rendimiento causada por la instalación del Service Pack 4 de SQL
Server, si no en todo caso, en lo contrario.

[Maxi, es el segundo hilo en que te leo malas experiencias con el Service
Pack 4 hasta el punto de recomendar su no instalación, incluso su
desinstalación, con la complejidad que ello comporta. Yo lo he subido a
varios entornos y, hasta la fecha, no he tenido problemas más allá de la
instalación. Estoy pendiente de actualizar algún entorno aún. ¿Qué problemas
has encontrado? ¿Qué te han aconsejado desde el soporte de Microsoft (al que
supongo habrás reportado los problemas surgidos)? Muchas gracias.]

Alberto López Grande (qwalgrande)
"Ricardo Uribe Zegarra" escribió en el mensaje
news:
Hola maxi, gracias por responder, ante todo espero hayas
tenido una feliz navidad, este es el plan
de ejecucion del que me devuelve el servidor.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0 else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Sort(ORDER BY:([Union1043] ASC))
|--Merge Join(Right Outer Join,
MERGE:([Movimientos].[CodigoArticulo])=([Union1042]),
RESIDUAL:([Union1042]=[Movimientos].[CodigoArticulo]))
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1102]=0)
then
NULL else [Expr1103]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo])
DEFINE:([Expr1102]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1103]=SUM([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006])))
| |--Nested Loops(Left Outer Join, OUTER
REFERENCES:([Movimientos].[CodigoArticulo], [FichaObra].[Serie],
[FichaObra].[Numero]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo],
[PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Docu
| | |--Sort(ORDER
BY:([Movimientos].[CodigoArticulo] ASC,
[PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] A
| | |--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[Expr1078])=([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[Codigo
| | |--Compute
Scalar(DEFINE:([Expr1078]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |--Sort(DISTINCT ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC))
| | | |--Hash
Match(Inner
Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]), RESIDUAL:([FichaO
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Table
Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |--Hash Match(Inner Join,
HASH:([Documento].[NumeroMovimiento])=([Movimientos].[NumeroMovimiento]))
| | |--Hash Match(Inner
Join, HASH:([Expr1079], [Expr1081])=([Expr1080], [Expr1082]),
RESIDUAL:([Expr1080]=[Expr1079] AND [Expr1082]=[Expr1081]))
| | | |--Compute
Scalar(DEFINE:([Expr1079]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1081]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Compute
Scalar(DEFINE:([Expr1080]=Convert([Documento].[SerieCotizacion]),
[Expr1082]=Convert([Documento].[CodigoCotizacion])))
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]))
| |--Table Spool
| |--Stream Aggregate(GROUP
BY:([Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER
BY:([Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join,
OUTER REFERENCES:([Documento].[NumeroMovimiento]))
| |--Nested Loops(Inner
Join,
WHERE:(Convert([Documento].[SerieCotizacion])=right('000'+Convert([FichaObra
].[Serie]), 3) AND
Convert([Documento].[CodigoCotizacion])=right('0000000'+Convert([FichaObra].
[Nume
| | |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObra].[Serie] AND
[FichaObra].[Numero]=[FichaObra].[Numero]), WHERE:([FichaObra].[CodigoE
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento] AND
[Movimientos].[CodigoArticulo]=[Movimientos].[Cod
|--Nested Loops(Inner Join, OUTER REFERENCES:([Union1042])
WITH PREFETCH)
|--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1108]=0)
then NULL else [Expr1109]))
| |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1108]=COUNT_BIG([Union1044]),
[Expr1109]=SUM([Union1044])))
| |--Sort(ORDER BY:([Union1042] ASC,
[Union1043] ASC))
| |--Concatenation
| |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1104]=0) then NULL else [Expr1105]))
| | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1083])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| |
|--Sort(ORDER BY:([Expr1083] ASC))
| | |
|--Compute
Scalar(DEFINE:([Expr1083]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |
|--Table Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| |
|--Clustered Index Scan(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
ORDERED FORWARD)
| |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1106]=0) then NULL else [Expr1107]))
| |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1106]=COUNT_BIG([FichaObraInstal
| |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]))
| |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| |
|--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]))
| |
|--Merge Join(Inner Join,
MERGE:([FichaObraInstalador].[SerieFichaObraInstalador],
[FichaObraInstalador].[NumeroFichaObraInstalador])=([FichaObraInstaladorDeta
lles].[SerieFichaObraInst
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstaladors]
), ORDERED FORWARD)
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObraInst
aladorsDetalles]), ORDERED FORWARD)
| |
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObraInstalador].[SerieFichaObra] AND
[FichaObra].[Numero]=[FichaObraInstala
| |--Clustered
Index Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[Union1042]) ORDERED FORWARD)

Una cosa mas que no les habia comentado es que tambien instale un dominio
secundario, lo cual en la pc me sale el icono del administrador de
servicios ahi solo pongo el nombre del servidor y aparece activado.

y este es el que me devuelve mi PC de prueba.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0 else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Nested Loops(Left Outer Join,
WHERE:([Union1042]=Convert([Movimientos].[CodigoArticulo])))
|--Sort(ORDER BY:([Union1043] ASC))
| |--Merge Join(Inner Join, MANY-TO-MANY
MERGE:([Union1042])=([Articulo].[CodigoArticulo]),
RESIDUAL:([Union1042]=[Articulo].[CodigoArticulo]))
| |--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1103]=0)
then NULL else [Expr1104]))
| | |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1103]=COUNT_BIG([Union1044]),
[Expr1104]=SUM([Union1044])))
| | |--Merge Join(Concatenation)
| | |--Sort(ORDER BY:([Expr1036] ASC,
[Articulo].[Descripcion] ASC, [Expr1037] ASC))
| | | |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1099]=0) then NULL else [Expr1100]))
| | | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1079])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| | |
|--Sort(ORDER BY:([Expr1079] ASC))
| | | |
|--Compute
Scalar(DEFINE:([Expr1079]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |
|--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
| | |--Sort(ORDER BY:([Expr1038] ASC,
[Articulo].[Descripcion] ASC, [Expr1035] ASC))
| | |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| | |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1101]=0) then NULL else [Expr1102]))
| | |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1101]=COUNT_BIG([FichaObraInstal
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]) WITH PREFETCH)
| | |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | |
|--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[NumeroFichaObraInstalador],
[FichaObraInstalador].[SerieFichaObraInstalador]))
| | |
|--Merge Join(Inner Join, MERGE:([FichaObra].[Serie],
[FichaObra].[Numero])=([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]), RESIDUAL:([FichaObraInsta
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1) ORDERED FORWARD)
| | | |
|--Sort(ORDER BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC))
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstala
dors]))
| | |
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObr
aInstaladorsDetalles]),
SEEK:([FichaObraInstaladorDetalles].[SerieFichaObraInstalador]=[F
| | |--Clustered
Index Seek(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
|--Table Spool
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1105]=0)
then
NULL else [Expr1106]))
|--Hash Match(Aggregate,
HASH:([Movimientos].[CodigoArticulo]),
RESIDUAL:([Movimientos].[CodigoArticulo]=[Movimientos].[CodigoArticulo])
DEFINE:([Expr1105]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1106]> |--Hash Match(Right Outer Join,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo])=([FichaObra].[Serie],
[FichaObra].[Numero],
[Movimientos].[CodigoArticulo]), RESIDUAL:(([FichaObra].[Serie]=[FichaOb
|--Stream Aggregate(GROUP
BY:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER BY:([FichaObra].[Serie]
ASC, [FichaObra].[Numero] ASC, [Movimientos].[CodigoArticulo] ASC,
[Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join, OUTER
REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
| |--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| | |--Hash Match(Inner
Join, HASH:([Expr1071], [Expr1073])=([Expr1072], [Expr1074]),
RESIDUAL:([Expr1072]=[Expr1071] AND [Expr1074]=[Expr1073]))
| | |--Compute
Scalar(DEFINE:([Expr1071]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1073]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |--Compute
Scalar(DEFINE:([Expr1072]=Convert([Documento].[SerieCotizacion]),
[Expr1074]=Convert([Documento].[CodigoCotizacion])))
| | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)
|--Sort(DISTINCT ORDER BY:([Rank1070] ASC))
|--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo])=([FichaObra].[Serie],
[FichaOb
|--Hash Match(Inner Join,
HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]),
RESIDUAL:([FichaObra].[Serie]=[P
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| |--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
|--Rank
|--Hash Match(Aggregate,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente]),
RESIDUAL:((([FichaObra].[Serie]=[FichaObra].[Serie] AND [FichaObra].[Nume
|--Nested Loops(Inner
Join, OUTER REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
|--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| |--Hash
Match(Inner Join, HASH:([Expr1075], [Expr1077])=([Expr1076], [Expr1078]),
RESIDUAL:([Expr1076]=[Expr1075] AND [Expr1078]=[Expr1077]))
|
|--Compute
Scalar(DEFINE:([Expr1075]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1077]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
|
|--Compute
Scalar(DEFINE:([Expr1076]=Convert([Documento].[SerieCotizacion]),
[Expr1078]=Convert([Documento].[CodigoCotizacion])))
|
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)

Muchas gracias por tu ayuda.



"Maxi [MVP]" escribió en el mensaje
news:
Hola, primero habria que ver si tu pc de prueba es igual al server de
produccion.
Segundo, porque no nos pasas los planes de ejecucion de tu pc de prueba y


la
del servidor.

Estas usando el service pack4 en el servidor por casualidad? de ser asi
yo
te diria que pruebes de poner el 3a


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org



"Ricardo Uribe Zegarra" escribió en el mensaje
news:
> Parece la segunda parte de una pelicula de terror.
>
> Es que ahora otra de mis consultas que no demoraba
> mas de 2 segundos, sale se agoto el tiempo de espera,
> no se lo que puedo haber pasado, lo ultimo que hice fue crear
> algunas relaciones y aumentar a un campo a una tabla X.
>
> No entiendo, porque pruebo en una base de prueba en mi PC
> y ahi todo va de lo mas normal.
>
> Muchas gracias por su ayuda.
>
>






Respuesta Responder a este mensaje
#4 Maxi
26/12/2005 - 20:57 | Informe spam
Hola, los problemas que he detectado (sin causa fija aun) es que en varios
servidores una query que se tardaba 10s pasa a tardar minutos. La semana
pasada una persona le paso lo mismo, le recomende que saque el sp4 y volvio
todo a la normalidad. Aum no puedo seguir porque pasa esto, pero ya me ha
sucedido varias veces :(


Salu2
Maxi [MVP SQL SERVER]


"qwalgrande" escribió en el mensaje
news:
Hola.

Siento no disponer del tiempo suficiente como para revisar y comparar
ambos planes de ejecución. Lo que sí te puedo aconsejar es que intentes
comparar los planes de ejecución en modo gráfico (mucho más intuitivo).
Localiza las diferencias y presta especial atención a los recorridos de
índices (scan).
Y, contrariamente a lo que Maxi opina, yo no enfocaría el problema en una
pérdida de rendimiento causada por la instalación del Service Pack 4 de
SQL Server, si no en todo caso, en lo contrario.

[Maxi, es el segundo hilo en que te leo malas experiencias con el Service
Pack 4 hasta el punto de recomendar su no instalación, incluso su
desinstalación, con la complejidad que ello comporta. Yo lo he subido a
varios entornos y, hasta la fecha, no he tenido problemas más allá de la
instalación. Estoy pendiente de actualizar algún entorno aún. ¿Qué
problemas has encontrado? ¿Qué te han aconsejado desde el soporte de
Microsoft (al que supongo habrás reportado los problemas surgidos)? Muchas
gracias.]

Alberto López Grande (qwalgrande)
"Ricardo Uribe Zegarra" escribió en el mensaje
news:
Hola maxi, gracias por responder, ante todo espero hayas
tenido una feliz navidad, este es el plan
de ejecucion del que me devuelve el servidor.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0
else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Sort(ORDER BY:([Union1043] ASC))
|--Merge Join(Right Outer Join,
MERGE:([Movimientos].[CodigoArticulo])=([Union1042]),
RESIDUAL:([Union1042]=[Movimientos].[CodigoArticulo]))
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1102]=0)
then
NULL else [Expr1103]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo])
DEFINE:([Expr1102]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1103]=SUM([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006])))
| |--Nested Loops(Left Outer Join, OUTER
REFERENCES:([Movimientos].[CodigoArticulo], [FichaObra].[Serie],
[FichaObra].[Numero]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo],
[PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Docu
| | |--Sort(ORDER
BY:([Movimientos].[CodigoArticulo] ASC,
[PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] A
| | |--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[Expr1078])=([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[Codigo
| | |--Compute
Scalar(DEFINE:([Expr1078]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |--Sort(DISTINCT ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC))
| | | |--Hash
Match(Inner
Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]), RESIDUAL:([FichaO
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Table
Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |--Hash Match(Inner Join,
HASH:([Documento].[NumeroMovimiento])=([Movimientos].[NumeroMovimiento]))
| | |--Hash Match(Inner
Join, HASH:([Expr1079], [Expr1081])=([Expr1080], [Expr1082]),
RESIDUAL:([Expr1080]=[Expr1079] AND [Expr1082]=[Expr1081]))
| | | |--Compute
Scalar(DEFINE:([Expr1079]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1081]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Compute
Scalar(DEFINE:([Expr1080]=Convert([Documento].[SerieCotizacion]),
[Expr1082]=Convert([Documento].[CodigoCotizacion])))
| | | |--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]))
| |--Table Spool
| |--Stream Aggregate(GROUP
BY:([Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER
BY:([Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join,
OUTER REFERENCES:([Documento].[NumeroMovimiento]))
| |--Nested Loops(Inner
Join,
WHERE:(Convert([Documento].[SerieCotizacion])=right('000'+Convert([FichaObra
].[Serie]), 3) AND
Convert([Documento].[CodigoCotizacion])=right('0000000'+Convert([FichaObra].
[Nume
| | |--Clustered
Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObra].[Serie] AND
[FichaObra].[Numero]=[FichaObra].[Numero]), WHERE:([FichaObra].[CodigoE
| | |--Clustered
Index
Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento] AND
[Movimientos].[CodigoArticulo]=[Movimientos].[Cod
|--Nested Loops(Inner Join, OUTER
REFERENCES:([Union1042])
WITH PREFETCH)
|--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1108]=0)
then NULL else [Expr1109]))
| |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1108]=COUNT_BIG([Union1044]),
[Expr1109]=SUM([Union1044])))
| |--Sort(ORDER BY:([Union1042] ASC,
[Union1043] ASC))
| |--Concatenation
| |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1104]=0) then NULL else [Expr1105]))
| | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1083])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| |
|--Sort(ORDER BY:([Expr1083] ASC))
| | |
|--Compute
Scalar(DEFINE:([Expr1083]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |
|--Table Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
ORDERED FORWARD)
| |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1106]=0) then NULL else [Expr1107]))
| |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1106]=COUNT_BIG([FichaObraInstal
| |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]))
|
|--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]))
| |
|--Merge Join(Inner Join,
MERGE:([FichaObraInstalador].[SerieFichaObraInstalador],
[FichaObraInstalador].[NumeroFichaObraInstalador])=([FichaObraInstaladorDeta
lles].[SerieFichaObraInst
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstaladors]
), ORDERED FORWARD)
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObraInst
aladorsDetalles]), ORDERED FORWARD)
| |
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObraInstalador].[SerieFichaObra] AND
[FichaObra].[Numero]=[FichaObraInstala
| |--Clustered
Index Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[Union1042]) ORDERED FORWARD)

Una cosa mas que no les habia comentado es que tambien instale un dominio
secundario, lo cual en la pc me sale el icono del administrador de
servicios ahi solo pongo el nombre del servidor y aparece activado.

y este es el que me devuelve mi PC de prueba.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0
else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Nested Loops(Left Outer Join,
WHERE:([Union1042]=Convert([Movimientos].[CodigoArticulo])))
|--Sort(ORDER BY:([Union1043] ASC))
| |--Merge Join(Inner Join, MANY-TO-MANY
MERGE:([Union1042])=([Articulo].[CodigoArticulo]),
RESIDUAL:([Union1042]=[Articulo].[CodigoArticulo]))
| |--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1103]=0)
then NULL else [Expr1104]))
| | |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1103]=COUNT_BIG([Union1044]),
[Expr1104]=SUM([Union1044])))
| | |--Merge Join(Concatenation)
| | |--Sort(ORDER BY:([Expr1036] ASC,
[Articulo].[Descripcion] ASC, [Expr1037] ASC))
| | | |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1099]=0) then NULL else [Expr1100]))
| | | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1079])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| | |
|--Sort(ORDER BY:([Expr1079] ASC))
| | | |
|--Compute
Scalar(DEFINE:([Expr1079]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |
|--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
| | |--Sort(ORDER BY:([Expr1038] ASC,
[Articulo].[Descripcion] ASC, [Expr1035] ASC))
| | |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| | |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1101]=0) then NULL else [Expr1102]))
| | |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1101]=COUNT_BIG([FichaObraInstal
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]) WITH
PREFETCH)
| |
|--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[NumeroFichaObraInstalador],
[FichaObraInstalador].[SerieFichaObraInstalador]))
| | |
|--Merge Join(Inner Join, MERGE:([FichaObra].[Serie],
[FichaObra].[Numero])=([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]), RESIDUAL:([FichaObraInsta
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1) ORDERED FORWARD)
| | | |
|--Sort(ORDER BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC))
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstala
dors]))
| | |
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObr
aInstaladorsDetalles]),
SEEK:([FichaObraInstaladorDetalles].[SerieFichaObraInstalador]=[F
| | |--Clustered
Index Seek(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
|--Table Spool
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1105]=0)
then
NULL else [Expr1106]))
|--Hash Match(Aggregate,
HASH:([Movimientos].[CodigoArticulo]),
RESIDUAL:([Movimientos].[CodigoArticulo]=[Movimientos].[CodigoArticulo])
DEFINE:([Expr1105]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1106]>> |--Hash Match(Right Outer Join,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo])=([FichaObra].[Serie],
[FichaObra].[Numero],
[Movimientos].[CodigoArticulo]), RESIDUAL:(([FichaObra].[Serie]=[FichaOb
|--Stream Aggregate(GROUP
BY:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER BY:([FichaObra].[Serie]
ASC, [FichaObra].[Numero] ASC, [Movimientos].[CodigoArticulo] ASC,
[Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join,
OUTER
REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
| |--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| | |--Hash Match(Inner
Join, HASH:([Expr1071], [Expr1073])=([Expr1072], [Expr1074]),
RESIDUAL:([Expr1072]=[Expr1071] AND [Expr1074]=[Expr1073]))
| | |--Compute
Scalar(DEFINE:([Expr1071]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1073]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |--Compute
Scalar(DEFINE:([Expr1072]=Convert([Documento].[SerieCotizacion]),
[Expr1074]=Convert([Documento].[CodigoCotizacion])))
| | |--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)
|--Sort(DISTINCT ORDER BY:([Rank1070]
ASC))
|--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo])=([FichaObra].[Serie],
[FichaOb
|--Hash Match(Inner Join,
HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]),
RESIDUAL:([FichaObra].[Serie]=[P
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| |--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
|--Rank
|--Hash Match(Aggregate,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente]),
RESIDUAL:((([FichaObra].[Serie]=[FichaObra].[Serie] AND [FichaObra].[Nume
|--Nested Loops(Inner
Join, OUTER REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
|--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| |--Hash
Match(Inner Join, HASH:([Expr1075], [Expr1077])=([Expr1076], [Expr1078]),
RESIDUAL:([Expr1076]=[Expr1075] AND [Expr1078]=[Expr1077]))
|
|--Compute
Scalar(DEFINE:([Expr1075]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1077]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
|
|--Compute
Scalar(DEFINE:([Expr1076]=Convert([Documento].[SerieCotizacion]),
[Expr1078]=Convert([Documento].[CodigoCotizacion])))
|
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
|--Clustered
Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)

Muchas gracias por tu ayuda.



"Maxi [MVP]" escribió en el mensaje
news:
Hola, primero habria que ver si tu pc de prueba es igual al server de
produccion.
Segundo, porque no nos pasas los planes de ejecucion de tu pc de prueba
y


la
del servidor.

Estas usando el service pack4 en el servidor por casualidad? de ser asi
yo
te diria que pruebes de poner el 3a


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org



"Ricardo Uribe Zegarra" escribió en el mensaje
news:
> Parece la segunda parte de una pelicula de terror.
>
> Es que ahora otra de mis consultas que no demoraba
> mas de 2 segundos, sale se agoto el tiempo de espera,
> no se lo que puedo haber pasado, lo ultimo que hice fue crear
> algunas relaciones y aumentar a un campo a una tabla X.
>
> No entiendo, porque pruebo en una base de prueba en mi PC
> y ahi todo va de lo mas normal.
>
> Muchas gracias por su ayuda.
>
>










Respuesta Responder a este mensaje
#5 qwalgrande
26/12/2005 - 21:16 | Informe spam
Hola,

¿Y comparaste planes de ejecución, lecturas, etc? ¿No reportaste el caso a
MS? ¿Alguna particularidad del servidor (tipo de procesador, versión de SQL
Server)?


Alberto López Grande (qwalgrande)
"Maxi" escribió en el mensaje
news:
Hola, los problemas que he detectado (sin causa fija aun) es que en varios
servidores una query que se tardaba 10s pasa a tardar minutos. La semana
pasada una persona le paso lo mismo, le recomende que saque el sp4 y
volvio todo a la normalidad. Aum no puedo seguir porque pasa esto, pero ya
me ha sucedido varias veces :(


Salu2
Maxi [MVP SQL SERVER]


"qwalgrande" escribió en el mensaje
news:
Hola.

Siento no disponer del tiempo suficiente como para revisar y comparar
ambos planes de ejecución. Lo que sí te puedo aconsejar es que intentes
comparar los planes de ejecución en modo gráfico (mucho más intuitivo).
Localiza las diferencias y presta especial atención a los recorridos de
índices (scan).
Y, contrariamente a lo que Maxi opina, yo no enfocaría el problema en una
pérdida de rendimiento causada por la instalación del Service Pack 4 de
SQL Server, si no en todo caso, en lo contrario.

[Maxi, es el segundo hilo en que te leo malas experiencias con el Service
Pack 4 hasta el punto de recomendar su no instalación, incluso su
desinstalación, con la complejidad que ello comporta. Yo lo he subido a
varios entornos y, hasta la fecha, no he tenido problemas más allá de la
instalación. Estoy pendiente de actualizar algún entorno aún. ¿Qué
problemas has encontrado? ¿Qué te han aconsejado desde el soporte de
Microsoft (al que supongo habrás reportado los problemas surgidos)?
Muchas gracias.]

Alberto López Grande (qwalgrande)
"Ricardo Uribe Zegarra" escribió en el mensaje
news:
Hola maxi, gracias por responder, ante todo espero hayas
tenido una feliz navidad, este es el plan
de ejecucion del que me devuelve el servidor.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0
else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Sort(ORDER BY:([Union1043] ASC))
|--Merge Join(Right Outer Join,
MERGE:([Movimientos].[CodigoArticulo])=([Union1042]),
RESIDUAL:([Union1042]=[Movimientos].[CodigoArticulo]))
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1102]=0)
then
NULL else [Expr1103]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo])
DEFINE:([Expr1102]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1103]=SUM([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006])))
| |--Nested Loops(Left Outer Join, OUTER
REFERENCES:([Movimientos].[CodigoArticulo], [FichaObra].[Serie],
[FichaObra].[Numero]))
| |--Stream Aggregate(GROUP
BY:([Movimientos].[CodigoArticulo],
[PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Docu
| | |--Sort(ORDER
BY:([Movimientos].[CodigoArticulo] ASC,
[PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] A
| | |--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[Expr1078])=([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[Codigo
| | |--Compute
Scalar(DEFINE:([Expr1078]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |--Sort(DISTINCT
ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC))
| | | |--Hash
Match(Inner
Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]), RESIDUAL:([FichaO
| | |
|--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Table
Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |--Hash Match(Inner Join,
HASH:([Documento].[NumeroMovimiento])=([Movimientos].[NumeroMovimiento]))
| | |--Hash Match(Inner
Join, HASH:([Expr1079], [Expr1081])=([Expr1080], [Expr1082]),
RESIDUAL:([Expr1080]=[Expr1079] AND [Expr1082]=[Expr1081]))
| | | |--Compute
Scalar(DEFINE:([Expr1079]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1081]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | | |
|--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |--Compute
Scalar(DEFINE:([Expr1080]=Convert([Documento].[SerieCotizacion]),
[Expr1082]=Convert([Documento].[CodigoCotizacion])))
| | |
|--Clustered
Index Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
| | |--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]))
| |--Table Spool
| |--Stream Aggregate(GROUP
BY:([Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER
BY:([Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner
Join,
OUTER REFERENCES:([Documento].[NumeroMovimiento]))
| |--Nested Loops(Inner
Join,
WHERE:(Convert([Documento].[SerieCotizacion])=right('000'+Convert([FichaObra
].[Serie]), 3) AND
Convert([Documento].[CodigoCotizacion])=right('0000000'+Convert([FichaObra].
[Nume
| | |--Clustered
Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObra].[Serie] AND
[FichaObra].[Numero]=[FichaObra].[Numero]), WHERE:([FichaObra].[CodigoE
| | |--Clustered
Index
Scan(OBJECT:([NTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento]
AND
[Movimientos].[CodigoArticulo]=[Movimientos].[Cod
|--Nested Loops(Inner Join, OUTER
REFERENCES:([Union1042])
WITH PREFETCH)
|--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1108]=0)
then NULL else [Expr1109]))
| |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1108]=COUNT_BIG([Union1044]),
[Expr1109]=SUM([Union1044])))
| |--Sort(ORDER BY:([Union1042] ASC,
[Union1043] ASC))
| |--Concatenation
| |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1104]=0) then NULL else [Expr1105]))
| | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1083])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| |
|--Sort(ORDER BY:([Expr1083] ASC))
| | |
|--Compute
Scalar(DEFINE:([Expr1083]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |
|--Table
Scan(OBJECT:([NTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
ORDERED FORWARD)
| |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1106]=0) then NULL else [Expr1107]))
| |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1106]=COUNT_BIG([FichaObraInstal
| |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]))
| |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]))
| |
|--Merge Join(Inner Join,
MERGE:([FichaObraInstalador].[SerieFichaObraInstalador],
[FichaObraInstalador].[NumeroFichaObraInstalador])=([FichaObraInstaladorDeta
lles].[SerieFichaObraInst
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstaladors]
), ORDERED FORWARD)
| | |
|--Clustered Index
Scan(OBJECT:([NTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObraInst
aladorsDetalles]), ORDERED FORWARD)
| |
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
SEEK:([FichaObra].[Serie]=[FichaObraInstalador].[SerieFichaObra] AND
[FichaObra].[Numero]=[FichaObraInstala
|
|--Clustered
Index Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
|--Clustered Index
Seek(OBJECT:([NTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[Union1042]) ORDERED FORWARD)

Una cosa mas que no les habia comentado es que tambien instale un
dominio
secundario, lo cual en la pc me sale el icono del administrador de
servicios ahi solo pongo el nombre del servidor y aparece activado.

y este es el que me devuelve mi PC de prueba.

|--Compute Scalar(DEFINE:([Expr1048]=If ([Expr1019]=NULL) then 0 else
[Expr1019], [Expr1049]=[Expr1045]-Convert(If ([Expr1019]=NULL) then 0
else
[Expr1019]), [Expr1050]=[Articulo].[Stock]+[Articulo].[StockDeposito],
[Expr1051]=[Articulo].[Stock]+[Articul
|--Nested Loops(Left Outer Join,
WHERE:([Union1042]=Convert([Movimientos].[CodigoArticulo])))
|--Sort(ORDER BY:([Union1043] ASC))
| |--Merge Join(Inner Join, MANY-TO-MANY
MERGE:([Union1042])=([Articulo].[CodigoArticulo]),
RESIDUAL:([Union1042]=[Articulo].[CodigoArticulo]))
| |--Compute Scalar(DEFINE:([Expr1045]=If
([Expr1103]=0)
then NULL else [Expr1104]))
| | |--Stream Aggregate(GROUP BY:([Union1042],
[Union1043]) DEFINE:([Expr1103]=COUNT_BIG([Union1044]),
[Expr1104]=SUM([Union1044])))
| | |--Merge Join(Concatenation)
| | |--Sort(ORDER BY:([Expr1036] ASC,
[Articulo].[Descripcion] ASC, [Expr1037] ASC))
| | | |--Compute
Scalar(DEFINE:([Expr1036]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo]), [Expr1037]=Convert([Expr1026])))
| | | |--Compute
Scalar(DEFINE:([Expr1026]=If ([Expr1099]=0) then NULL else [Expr1100]))
| | | |--Stream
Aggregate(GROUP BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo], [Articulo].[Descr
| | | |--Sort(ORDER
BY:([PedidoDetallesArticuloCompuesto].[SerieFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra] ASC,
[PedidoDetallesArticuloCompuesto].[CodigoArticulo] ASC, [Articulo].[
| | | |--Merge
Join(Inner Join, MANY-TO-MANY
MERGE:([Expr1079])=([Articulo].[CodigoArticulo]),
RESIDUAL:(Convert([PedidoDetallesArticuloCompuesto].[CodigoArticulo])=[Artic
ulo].[CodigoArticulo]))
| | |
|--Sort(ORDER BY:([Expr1079] ASC))
| | | |
|--Compute
Scalar(DEFINE:([Expr1079]=Convert([PedidoDetallesArticuloCompuesto].[CodigoA
rticulo])))
| | | |
|--Hash Match(Inner Join, HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | | |
|--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
| | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
| | |--Sort(ORDER BY:([Expr1038] ASC,
[Articulo].[Descripcion] ASC, [Expr1035] ASC))
| | |--Compute
Scalar(DEFINE:([Expr1038]=Convert([FichaObraInstaladorDetalles].[CodigoArtic
ulo])))
| | |--Compute
Scalar(DEFINE:([Expr1035]=If ([Expr1101]=0) then NULL else [Expr1102]))
| | |--Stream
Aggregate(GROUP BY:([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra],
[FichaObraInstaladorDetalles].[CodigoArticulo])
DEFINE:([Expr1101]=COUNT_BIG([FichaObraInstal
| | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstaladorDetalles].[CodigoArticulo]) WITH
PREFETCH)
| | |--Sort(ORDER
BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC,
[FichaObraInstaladorDetalles].[CodigoArticulo] ASC))
| | | |--Nested
Loops(Inner Join, OUTER
REFERENCES:([FichaObraInstalador].[NumeroFichaObraInstalador],
[FichaObraInstalador].[SerieFichaObraInstalador]))
| | |
|--Merge Join(Inner Join, MERGE:([FichaObra].[Serie],
[FichaObra].[Numero])=([FichaObraInstalador].[SerieFichaObra],
[FichaObraInstalador].[NumeroFichaObra]), RESIDUAL:([FichaObraInsta
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1) ORDERED FORWARD)
| | | |
|--Sort(ORDER BY:([FichaObraInstalador].[SerieFichaObra] ASC,
[FichaObraInstalador].[NumeroFichaObra] ASC))
| | | |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstalador].[PK_FichaObraInstala
dors]))
| | |
|--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[FichaObraInstaladorDetalles].[PK_FichaObr
aInstaladorsDetalles]),
SEEK:([FichaObraInstaladorDetalles].[SerieFichaObraInstalador]=[F
| |
|--Clustered
Index Seek(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]),
SEEK:([Articulo].[CodigoArticulo]=[FichaObraInstaladorDetalles].[CodigoArtic
ulo]) ORDERED FORWARD)
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Articulo].[PK_Articulo]), ORDERED
FORWARD)
|--Table Spool
|--Compute Scalar(DEFINE:([Expr1019]=If ([Expr1105]=0)
then
NULL else [Expr1106]))
|--Hash Match(Aggregate,
HASH:([Movimientos].[CodigoArticulo]),
RESIDUAL:([Movimientos].[CodigoArticulo]=[Movimientos].[CodigoArticulo])
DEFINE:([Expr1105]=COUNT_BIG([Expr1018]-If ([Expr1006]=NULL) then 0 else
[Expr1006]), [Expr1106]>>> |--Hash Match(Right Outer Join,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo])=([FichaObra].[Serie],
[FichaObra].[Numero],
[Movimientos].[CodigoArticulo]), RESIDUAL:(([FichaObra].[Serie]=[FichaOb
|--Stream Aggregate(GROUP
BY:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente])
DEFINE:([Expr1006]=SUM([Movimientos].[Cantidad])))
| |--Sort(ORDER
BY:([FichaObra].[Serie]
ASC, [FichaObra].[Numero] ASC, [Movimientos].[CodigoArticulo] ASC,
[Documento].[CodigoCliente] ASC))
| |--Nested Loops(Inner Join,
OUTER
REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
| |--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| | |--Hash Match(Inner
Join, HASH:([Expr1071], [Expr1073])=([Expr1072], [Expr1074]),
RESIDUAL:([Expr1072]=[Expr1071] AND [Expr1074]=[Expr1073]))
| | |--Compute
Scalar(DEFINE:([Expr1071]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1073]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| | |
|--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| | |--Compute
Scalar(DEFINE:([Expr1072]=Convert([Documento].[SerieCotizacion]),
[Expr1074]=Convert([Documento].[CodigoCotizacion])))
| |
|--Clustered
Index Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='D'))
| |--Clustered Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)
|--Sort(DISTINCT ORDER BY:([Rank1070]
ASC))
|--Hash Match(Inner Join,
HASH:([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra],
[PedidoDetallesArticuloCompuesto].[CodigoArticulo])=([FichaObra].[Serie],
[FichaOb
|--Hash Match(Inner Join,
HASH:([FichaObra].[Serie],
[FichaObra].[Numero])=([PedidoDetallesArticuloCompuesto].[SerieFichaObra],
[PedidoDetallesArticuloCompuesto].[NumeroFichaObra]),
RESIDUAL:([FichaObra].[Serie]=[P
| |--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
| |--Table
Scan(OBJECT:([CopiaNTrazzo].[dbo].[PedidoDetallesArticuloCompuesto]))
|--Rank
|--Hash Match(Aggregate,
HASH:([FichaObra].[Serie], [FichaObra].[Numero],
[Movimientos].[CodigoArticulo], [Documento].[CodigoCliente]),
RESIDUAL:((([FichaObra].[Serie]=[FichaObra].[Serie] AND
[FichaObra].[Nume
|--Nested Loops(Inner
Join, OUTER REFERENCES:([Documento].[NumeroMovimiento]) WITH PREFETCH)
|--Sort(ORDER
BY:([Documento].[NumeroMovimiento] ASC))
| |--Hash
Match(Inner Join, HASH:([Expr1075], [Expr1077])=([Expr1076],
[Expr1078]),
RESIDUAL:([Expr1076]=[Expr1075] AND [Expr1078]=[Expr1077]))
|
|--Compute
Scalar(DEFINE:([Expr1075]=right('000'+Convert([FichaObra].[Serie]), 3),
[Expr1077]=right('0000000'+Convert([FichaObra].[Numero]), 7)))
| |
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[FichaObra].[PK_FichaObra]),
WHERE:([FichaObra].[CodigoEstado]=1))
|
|--Compute
Scalar(DEFINE:([Expr1076]=Convert([Documento].[SerieCotizacion]),
[Expr1078]=Convert([Documento].[CodigoCotizacion])))
|
|--Clustered Index
Scan(OBJECT:([CopiaNTrazzo].[dbo].[Documento].[PK_Documento]),
WHERE:([Documento].[TipoMovimiento]='S'))
|--Clustered
Index
Seek(OBJECT:([CopiaNTrazzo].[dbo].[Movimientos].[PK_Movimientos]),
SEEK:([Movimientos].[NumeroMovimiento]=[Documento].[NumeroMovimiento])
ORDERED FORWARD)

Muchas gracias por tu ayuda.



"Maxi [MVP]" escribió en el mensaje
news:
Hola, primero habria que ver si tu pc de prueba es igual al server de
produccion.
Segundo, porque no nos pasas los planes de ejecucion de tu pc de prueba
y


la
del servidor.

Estas usando el service pack4 en el servidor por casualidad? de ser asi
yo
te diria que pruebes de poner el 3a


Salu2
-
[MVP] SQL Server
Orador para Culminis Latam
www.sqlgurus.org



"Ricardo Uribe Zegarra" escribió en el mensaje
news:
> Parece la segunda parte de una pelicula de terror.
>
> Es que ahora otra de mis consultas que no demoraba
> mas de 2 segundos, sale se agoto el tiempo de espera,
> no se lo que puedo haber pasado, lo ultimo que hice fue crear
> algunas relaciones y aumentar a un campo a una tabla X.
>
> No entiendo, porque pruebo en una base de prueba en mi PC
> y ahi todo va de lo mas normal.
>
> Muchas gracias por su ayuda.
>
>














Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida