Обсуждение: Re: [PERFORM] Hanging queries on dual CPU windows
> > > Looking a my system while testing this it still loooked > like it was > > > hanging on that plac ein the code, even though I saw no > problems. So > > > I'm not convinced we can actually trust the stacktrace from the > > > non-default threads. So I don't think this patch will > actually work > > > :-( But it's worth a try. > > > > I'm afraid you're right. Hangs again :( > > I now have the toolchain set up, so if you want me to try > stuff, please let me know. Resolving this is important to us. Great. That'll certainly help - now you don't have to wait for binaries from me. What I'd be interested in seeing is new stackdumps from a version where you: 1) Do *not* have the patch for mutexes applied 2) Have removed "static" from all the function devlarations in signal.c and socket.c, bnoth in src/backend/port/win32. If you can, it'd be interesting to see it from the pre-SP1 install as well - once it hangs. > On a whim, I replaced InitializeCriticalSection with > InitializeCriticalSectionAndSpinCount, since MSDN told me > that would be better for SMP. No joy. No, that should make no difference - except possibly a tiny difference in speed. Do you have the ability to test 8.0 on the same machine? We did some extensive modifications to the signal stuff between 8.0 and 8.1, it'd be interesting to see if that changed things. //Magnus
> Do you have the ability to test 8.0 on the same machine? We did some > extensive modifications to the signal stuff between 8.0 and 8.1, it'd be > interesting to see if that changed things. I had very similar behavior some weeks back on a machine that had not been upgraded to 8.1. It was a dual opteron on win2k server. Some simple queries (select 1 + 2) would work ok but anything that did real work on tables would hang and the backend would not respond to signals. Only recourse was to end task from task mgr which cycled the entire server with no data loss. This may or may not be the same problem but it sounds similar. Unfortunately the problem was extremely time sensitive and I could not play with it much. However, since this is pre-8.1 this argues against Qingqing's signal changes (maybe). I've since moved on to a linux environment so my win32 contributions will diminish greatly :) merlin
On Monday 13 March 2006 12:27, Magnus Hagander wrote: > Great. That'll certainly help - now you don't have to wait for binaries > from me. > > What I'd be interested in seeing is new stackdumps from a version where > you: > 1) Do *not* have the patch for mutexes applied > 2) Have removed "static" from all the function devlarations in signal.c > and socket.c, bnoth in src/backend/port/win32. I did that, and the interesting thing is that: 1. It takes much longer to hang. 2. Once it hangs, the stacktraces are the same. 3 (and this is the kicker). The thing starts working again after a couple (+/- 5) minutes ????????? 1. can probably be explained by the fact that I didn't compile with any optimization. Can you tell me what CFLAGS the binary distro uses? 2. I don't know (are there other tools I can use?), and 3. I frankly don't understand. I know for sure that with the stock 8.1.3 it would not revive itself (I let it running for a *long* time). > > If you can, it'd be interesting to see it from the pre-SP1 install as > well - once it hangs. I've never seen a pre-SP1 install hang. > > > On a whim, I replaced InitializeCriticalSection with > > InitializeCriticalSectionAndSpinCount, since MSDN told me > > that would be better for SMP. No joy. > > No, that should make no difference - except possibly a tiny difference > in speed. > > > Do you have the ability to test 8.0 on the same machine? We did some > extensive modifications to the signal stuff between 8.0 and 8.1, it'd be > interesting to see if that changed things. I seem to remember we made ourselves dependend on 8.1 somehow, but will check. jan -- -------------------------------------------------------------- Jan de Visser jdevisser@digitalfairway.com Baruk Khazad! Khazad ai-menu! --------------------------------------------------------------