Balaji Ganesan wrote:
Hi,
We are having squid crash a few times and creating Watson dumps when
user clears cache. We do stop the squid ( using Terminate Process),
clean the cache and restart it. This happens on field and we don't have
much info. The crash however seems to point to the squid source.. We are
using Squid version 2.5 STABLE 9. Is this a known issue on this version?
It's a known issue on all versions that starting Squid without correct
cache directories is fatal.
Please:
* use a newer release from http://squid.acmeconsulting.it/
* do not manually erase cache files.
Squid performs cache data updates live on demand. Reverse proxy
accelerators are the only confirmed case needing cache deletion. If you
are using one such reverse-proxy I would suggest that a windows build
with its FD limits is not the best option.
* use "squid -z" to reconstruct cache directories before starting
squid if they are lost or erased.
http://wiki.squid-cache.org/SquidFaq/ClearingTheCache
Amos
I tried searching on the release notes for this version and also on
Squid version 2.6 release notes but couldn't find any reference to this.
Can anyone please help us out on what might be the cause and help
resolve it.
Details of the crash is as below:
FAULTING_IP:
ventcsquid!ipc_thread_1+21e7 [\squid-2.5.STABLE9-NT-CVS\src\ipc.c @ 801]
0044c145 ?? ???
EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0044c145 (ventcsquid!ipc_thread_1+0x000021e7)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 2af1b8a8
Attempt to read from address 2af1b8a8
PROCESS_NAME: ventcsquid.exe
ADDITIONAL_DEBUG_TEXT:
Use '!findthebuild' command to search for the target build information.
If the build information is available, run '!findthebuild -s ; .reload'
to set symbol path and load symbols.
FAULTING_MODULE: 7c900000 ntdll
DEBUG_FLR_IMAGE_TIMESTAMP: 49a64ee1
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
referenced memory at "0x%08lx". The memory could not be "%s".
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
referenced memory at "0x%08lx". The memory could not be "%s".
EXCEPTION_PARAMETER1: 00000000
EXCEPTION_PARAMETER2: 2af1b8a8
READ_ADDRESS: 2af1b8a8
FOLLOWUP_IP:
ventcsquid!ipc_thread_1+21e7
[C:\VClient_4.5.1_9thFeb\vent2\squid\client\squid-2.5.STABLE9-NT-CVS\src
\ipc.c @ 801]
0044c145 ?? ???
FAULTING_THREAD: 00001030
BUGCHECK_STR: APPLICATION_FAULT_INVALID_POINTER_READ_WRONG_SYMBOLS
PRIMARY_PROBLEM_CLASS: INVALID_POINTER_READ
DEFAULT_BUCKET_ID: INVALID_POINTER_READ
IP_ON_HEAP: 00b30650
FRAME_ONE_INVALID: 1
LAST_CONTROL_TRANSFER: from 00b30650 to 0044c145
STACK_TEXT:
00ecfbd0 00b30650 00000001 00000009 00000001
ventcsquid!ipc_thread_1+0x21e7
[C:\VClient_4.5.1_9thFeb\vent2\squid\client\squid-2.5.STABLE9-NT-CVS\src
\ipc.c @ 801]
WARNING: Frame IP not in any known module. Following frames may be
wrong.
00ecff7c 00493957 0012fd14 0000007c 00000000 0xb30650
00ecffb4 7c80b713 00b30650 0000007c 00000000
ventcsquid!_beginthreadex+0xf4
00ecffec 00000000 004938ce 00b30650 00000000
kernel32!GetModuleFileNameA+0x1b4
STACK_COMMAND: ~3s; .ecxr ; kb
FAULTING_SOURCE_CODE:
797:
798: cleanup:
799: if (c2p[1] != -1)
800: close(c2p[1]);
801: if (fd_table[crfd].flags.open)
802: ipcCloseAllFD(-1, -1, crfd, cwfd);
803: if (prfd_ipc != -1) {
804: send(crfd_ipc, shutdown_string, strlen(shutdown_string), 0);
805: shutdown(crfd_ipc, SD_BOTH);
806: shutdown(prfd_ipc, SD_BOTH);
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: ventcsquid!ipc_thread_1+21e7
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: ventcsquid
IMAGE_NAME: ventcsquid.exe
BUCKET_ID: WRONG_SYMBOLS
WATSON_IBUCKET: 360931898
WATSON_IBUCKETTABLE: 1
FAILURE_BUCKET_ID:
INVALID_POINTER_READ_c0000005_ventcsquid.exe!ipc_thread_1
Thanks
Balaji
--
Please be using
Current Stable Squid 2.7.STABLE6 or 3.0.STABLE16
Current Beta Squid 3.1.0.8