Ver Mensaje Individual
  #1  
Antiguo 05-05-2014
ARPE1 ARPE1 is offline
Miembro
 
Registrado: nov 2012
Posts: 43
Reputación: 0
ARPE1 Va por buen camino
Desconexión FBServer

Hola a tod@s, un cliente a cambiado de servidor y desde entonces tiene muchas desconexiones del Firebird, lo que provoca que todos los puestos conectados a veces caigan poco a poco y otras veces todos de golpe.

La versión del firebird es la 2.1.4. La base de datos pesa unos 2.5GB, está en Windows Server 2012 estándar 64bits y sobre discos SDD en raid 1. La ruta de ficheros temporales (TempDirectories) apunta a otro disco (mecánicos SAS en raid 5). La máquina tiene 16GB de RAM y un xeon a 2GHz.

Examinando el log de firebird me encuentro con muchísimos registros de este tipo

Cita:
SERVIDOR (Server) Mon May 05 16:37:06 2014
Database: unknown, SERVER/process_packet
unable to allocate memory from operating system

SERVIDOR (Server) Mon May 05 15:54:07 2014
INET/inet_error: read errno = 10054

SERVIDOR (Server) Mon May 05 15:09:26 2014
Database: ThreadData::start() failed:
operating system directive _beginthreadex failed
Espacio de almacenamiento insuficiente para procesar este comando.
La red del cliente debe estar certificada (eso dice), aún así ha cambiado uno de los switch que tenía un poco antiguo. Por mi parte se ha modificado los parámetros de LanmanServer del registro de Windows para modificar el IRPStackSize (actualmente a 24). También se ha enredado con los parámetros de configuración del firebird probando bastantes valores, desde como aparecen por defecto a como están actualmente siguiendo recomendaciones de distintos foros y blogs:

Cita:
DefaultDbCachePages = 20480
TempBlockSize = 2097152
TempCacheLimit=134217728
TcpRemoteBufferSize = 16384
Y por último, perdón por todo el rollo, os dejo un volcado de memoria del error por si os puede servir de pista:

Cita:
FAULTING_IP:
fbserver!REMOTE_reset_statement+2b [e:\fb21_dev_svn\b2_1_release_r2_1_4\firebird2\src\remote\remote.cpp @ 621]
0054413b 8b5108 mov edx,dword ptr [ecx+8]

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0054413b (fbserver!REMOTE_reset_statement+0x0000002b)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: a1f6f461
Attempt to read from address a1f6f461

CONTEXT: 00000000 -- (.cxr 0x0;r)
eax=00000000 ebx=017f768c ecx=00000000 edx=00000000 esi=017f75fc edi=00000000
eip=77aae1a4 esp=017f74d4 ebp=017f7654 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000206
ntdll!NtWaitForMultipleObjects+0xc:
77aae1a4 c21400 ret 14h

DEFAULT_BUCKET_ID: INVALID_POINTER_READ

PROCESS_NAME: fbserver.exe

ERROR_CODE: (NTSTATUS) 0xc0000005 - La instrucci n en 0x%08lx hace referencia a la memoria en 0x%08lx. La memoria no se pudo %s.

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - La instrucci n en 0x%08lx hace referencia a la memoria en 0x%08lx. La memoria no se pudo %s.

EXCEPTION_PARAMETER1: 00000000

EXCEPTION_PARAMETER2: a1f6f461

READ_ADDRESS: a1f6f461

FOLLOWUP_IP:
fbserver!REMOTE_reset_statement+2b [e:\fb21_dev_svn\b2_1_release_r2_1_4\firebird2\src\remote\remote.cpp @ 621]
0054413b 8b5108 mov edx,dword ptr [ecx+8]

NTGLOBALFLAG: 0

APPLICATION_VERIFIER_FLAGS: 0

APP: fbserver.exe

ANALYSIS_VERSION: 6.3.9600.17029 (debuggers(dbg).140219-1702) x86fre

FAULTING_THREAD: 00001a98

PRIMARY_PROBLEM_CLASS: INVALID_POINTER_READ

BUGCHECK_STR: APPLICATION_FAULT_INVALID_POINTER_READ

LAST_CONTROL_TRANSFER: from 00546d1d to 0054413b

STACK_TEXT:
017f7da4 00546d1d 57a1f2dc 76563b84 154adbec fbserver!REMOTE_reset_statement+0x2b
017f7dcc 0053f037 76563c00 154adbec 00000000 fbserver!xdr_protocol+0x71d
017f7de4 0054429b 76563b84 154adbec 005b433a fbserver!receive+0x17
017f7df0 005b433a 154adbec 887c883e 002de044 fbserver!rem_port::receive+0xb
017ffea8 005ad0b0 002d5f24 0000003a 002de088 fbserver!SRVR_multi_thread+0x21a
017fff0c 0041d0c0 00000000 00000000 004040d3 fbserver!inet_connect_wait_thread+0xb0
017fff18 004040d3 887c09de 00000000 00000000 fbserver!ThreadPriorityScheduler::run+0x10
017fff44 74ab29bb 002de088 fcafae69 00000000 fbserver!`anonymous namespace'::threadStart+0x53
017fff7c 74ab2a47 00000000 7603850d 00892b48 msvcr80!_callthreadstartex+0x1b
017fff84 7603850d 00892b48 017fffd4 77adbf39 msvcr80!_threadstartex+0x66
017fff90 77adbf39 00892b48 ffa33a9b 00000000 kernel32!BaseThreadInitThunk+0xe
017fffd4 77adbf0c 74ab29e1 00892b48 ffffffff ntdll!__RtlUserThreadStart+0x72
017fffec 00000000 74ab29e1 00892b48 00000000 ntdll!_RtlUserThreadStart+0x1b


STACK_COMMAND: ~3s; .ecxr ; kb

FAULTING_SOURCE_LINE: e:\fb21_dev_svn\b2_1_release_r2_1_4\firebird2\src\remote\remote.cpp

FAULTING_SOURCE_FILE: e:\fb21_dev_svn\b2_1_release_r2_1_4\firebird2\src\remote\remote.cpp

FAULTING_SOURCE_LINE_NUMBER: 621

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: fbserver!REMOTE_reset_statement+2b

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: fbserver

IMAGE_NAME: fbserver.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 4d47b640

FAILURE_BUCKET_ID: INVALID_POINTER_READ_c0000005_fbserver.exe!REMOTE_reset_statement

BUCKET_ID: APPLICATION_FAULT_INVALID_POINTER_READ_fbserver!REMOTE_reset_statement+2b

ANALYSIS_SOURCE: UM

FAILURE_ID_HASH_STRING: um:invalid_pointer_read_c0000005_fbserver.exe!remote_reset_statement

FAILURE_ID_HASH: {994dcbc6-c72d-26b6-3dd5-2143d14fc12b}

Followup: MachineOwner
---------
Si alguien puede encaminarme un poco, ya no sé que hacer más.
Un saludo y gracias de antemano.
Responder Con Cita