• First I've heard of it

      By Julian Robichaux 2 decades ago

      Thanks for the heads up John. That's the first I've heard of it (the problem and the LDD post). Amazing that the database is over 2 years old and in very wide use, and no one has ever brought that up before.



      But I'm certainly going to look into it. I just asked for comments on my blog too:



      http://www.nsftools.com/blog/blog-03-2006.htm#03-13-06

    • More on LSI_Info()

      By Leo St-Jacques 2 decades ago



      Below is the response I received from the IBM/Lotus L2 support concerning LSI_Info():



      LSI_Info() is an undocumented LotusScript call and is not thread safe. It is not for public use, although some segments of the public are aware that it exists.



      "Not thread safe" means that this call cannot be used safely in a multi-threaded processing environment. Calls that are not thread safe can cause memory corruption if they are accessed by more than one thread. When memory corruption is detected, Operating Systems terminate themselves, which is a nice way of saying they crash.



      The thread safe function to use is GetThreadInfo().



      … Leo

    • OpenLog's use of LSIStackTrace was crashing the server.

      By John Smart 1 decade ago

      Just wanted to document this in case anyone comes searching. No idea why this bit me now vs before, but I'm pretty sure OpenLog was crashing an ND7.0.3 server (that had with multiple custom fixpacks, if that matters).



      The server kept crashing unpredictably, but it was running one specific agent every time it crashed.



      Strangely, it didn't crash in the same spot on that agent, nor every time. The agent never ran more than once at a time. Not sure if it's related or not, but the agent happens to be using the now-unsupported mqlsx library, too. (Don't ask.)



      Setting NoLSIStackTrace to True seems to have solved it. No more crashes.



      Even stranger, several other agents in the same database use OpenLog, and none of them have NoLSIStackTrace set to True. It appears specific to this one agent.



      Then again, it could all be a red herring! I'm unwilling to ask our administrator to let me change that agent back to see if that crashes the server some more. :-) I'm pretty sure that the LSIStackTrace calls were the culprit, though.



      For anyone new to OpenLog: Use it anyway! It saves a lot of time. Just be aware that if a server does go down, try checking the nsd file and change NoLSIStackTrace to True on any agents that may have been involved.