Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-11-2010
sur-se sur-se is offline
Miembro
 
Registrado: may 2003
Posts: 212
Poder: 22
sur-se Va por buen camino
Servidor linux con CPU al 100%

Hola
Tengo un servidor linux ejecutando firebird 1.5.6 SS . He revisado los parámetros del fichero firebird.conf para optimizar el DefaultDBCahePage a 10240 para tomar algunas páginas más de las 2048 por que trae por defecto.

El tema es que el servidor al ejecutar determinadas consultas se pone al 100% y deja al resto de los equipos inoperativos.
He revisado dichas consultas y están optimizadas. De hecho los analizadores marcan que todas las consultas se realizan mediante índices.
En cualquier caso, con independencia de que la consulta tarde más o menos, lo que no entiendo es porque se quedan bloqueados el resto de los equipos, poniéndose el servidor al 100% de la cpu. ¿No debería ir más lento pero no bloquearse?
La cuestión es que me pasa en servidores diferentes así que pienso que es un problema del Firebird. He buscado el error en ibphoenix pero no he conseguido solucionarlo con las indicaciones: http://www.firebirdfaq.org/faq312/
ya que la instrucción que ejecuto es un select con joins entre tablas.

La consulta que ejecuto desde el IBExpers:
Código:
select cabalbcli.ncentro, linalbcli.carticulo, linalbcli.ncod_albaran, linalbcli.ccod_serie, 
linalbcli.ncod_orden,cabalbcli.npuntoventa, cabalbcli.ncliente, cabalbcli.dfecha, 
linalbcli.ncantidad1, linalbcli.ncantidad2, linalbcli.ncantidadvalor, cabalbcli.ntipoop
from cabalbcli, linalbcli, articulos, artifabr, multipuntosventa 
where
 cabalbcli.ncod_albaran = linalbcli.ncod_albaran and cabalbcli.ccod_serie = linalbcli.ccod_serie and
 linalbcli.carticulo = articulos.ccod_articulo and  artifabr.ccod_articulo=articulos.ccod_articulo and
 artifabr.ncod_fabricante = 1 and artifabr.lprincipal=1
 and multipuntosventa.ncod_puntoventa=cabalbcli.npuntoventa  
 and multipuntosventa.ncod_fabricante=1 and
 cabalbcli.lfacturable=0  and cabalbcli.ntipoop=2 and
 linalbcli.lenvase=0 and linalbcli.ncantidadvalor < 0  and artifabr.csureferencia is not null
 and multipuntosventa.nptovtaserv is null  
 and (linalbcli.ctipolinea='V' or linalbcli.ctipolinea='P' or linalbcli.ctipolinea='R')
 and linalbcli.nenlacefab is null  and (cabalbcli.dfecha >= '10/01/10' and cabalbcli.dfecha <= '10/31/10')
 order by linalbcli.carticulo, linalbcli.ncod_orden, linalbcli.ccod_serie, linalbcli.ncod_albaran
El plan que me propone son todas las consultas indexadas:
PLAN SORT (SORT (JOIN (CABALBCLI INDEX (FK_CALCLI_TIPOPE,IDX_CALCLI_FECHA),LINALBCLI INDEX (FL_LINALBCLI_ENLACEFAB,FK_LALCLI_CALCLI),ARTIFABR INDEX (PK_ARTIFABR),ARTICULOS INDEX (PK_ARTICULOS),MULTIPUNTOSVENTA INDEX (FK_MULPTOVTA_SERPTOVTA,PK_MULTIPUNTOSVENTA))))

No sé que más puedo mirar.
Gracias.

Última edición por sur-se fecha: 12-11-2010 a las 12:20:53.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
PHP-Barcode en un servidor Linux maro PHP 7 07-11-2007 20:01:54
intraweb y servidor linux jgutti Internet 3 25-04-2005 23:09:38
Servidor de Correo en Linux COCOL Linux 1 22-04-2005 16:13:33
Como hacer un shares en un Servidos Linux para que otro Servidor Linux .... FernandoFAI Linux 0 15-04-2004 09:33:07
Servidor Unix Linux Omar Alejandro Varios 1 25-09-2003 04:13:45


La franja horaria es GMT +2. Ahora son las 21:10:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi