madExcept and NexusMM issues.

delphi package - automated exception handling
Post Reply
Bassrat
Posts: 6
Joined: Mon Aug 16, 2004 9:21 pm

madExcept and NexusMM issues.

Post by Bassrat »

In our load testing on one box we are experiencing about 1 or 2 unexplained cases per day where our HTTP server just "disappears". In the code all unexpected exceptions and know exit points are (at least theoritically) logged but nothing appears in the logs when this happens. On the Nexus site, we found a post by someone experiencing something similar and upgrading from NMM 2.x to NMM3.04 fixed the issue for them. We are doing the same but I also wanted to check the MES settings and see if I might be missing other gotchas. This is a compiled server, and only CreateBugReport is used. No exception trapping. madExcept (2.7e) is only mad unit being explicitly referenced. The madExceptPatch is used to put things together.

I basically have everything in the MES file set to 0 (or assume its a don't care) except the following lines:

[GeneralSettings]
AppendMapFileToBinary=1
MesVersion=2
[UnitInitOrder]
PatchUnitInitOrder=1
UnitInitOrder=ShareMem, HPMM, MultiMM, nxllFastCpuDetect, nxllFastFillChar, nxllFastMove, nxllMemoryManagerImpl, nxllMemoryManager, nxReplacementMemoryManager

Does this seem correct or am I missing something. Got the unit order from another post, but ShareMem, HPMM, MultiMM seem superfluous in my case. Should I have them anyway? What trap may I be missing that would at least give me a log entry when this occurs, or are there OS aborts that can truely make a process just diappear without a trace.

Thanks,
--Greg
madshi
Site Admin
Posts: 10754
Joined: Sun Mar 21, 2004 5:25 pm

Post by madshi »

When not using exception trapping you should turn unit init order patching off, too, since it won't help you any bit, but only potentially harm.
What trap may I be missing that would at least give me a log entry when this occurs, or are there OS aborts that can truely make a process just diappear without a trace.
Well, you could let madExcept try to handle such situations (by letting it catch exceptions for you). It might be able to trap such a case. Or maybe not. Hard to say.
Post Reply