8.12 on Linux - threading problem

Hans

Member
Hi List,
I have run into a really weird problem.
We have a 8.12 project on Linux Enterprise Server and business functions sent to server crash quite regularly. Analyzing the logs (manually - Debug Browser did not help with 200 mega multithread logs) I found that several business functions did not run in a single thread or call object kernel.
To be more accurate the first business function ran in one thread then the one it called ran in another and the third level in a third one. This worked fine as long as normal jde data was transferred between the threads. But the moment a pointer (Branch/Plant pointer) was returned and referenced the calling thread tried to read the data of another thread and crashed because of memory protection.
What I experienced on earlier (windows) server bsfns was that they always ran in one single thread.
Our CNC guy said there was no setting to influence this.
Anybody seen anything like this???
Has anybody got some experience with E1 on Linux???

Any help is highly appreciated!

Regards:
Hans

Current System is E1 8.12 on Linux/Oracle
 
BSFN guideline are not to send pointers back and forth in the BSFN data structs thru the jdeCallobject apis. You are supposed to use jdecache apis to store and retrieve these pointers. This is especially obvious on iSeries, where it wouldn't have worked to begin with as pointers are 16 bytes on that platform.
 
Segfault,
Thanks for the quick response but you must have misunderstood me.
This is a set of standard jde business functions installed and set up the standard way. They use naturally the store data pointer and retrieve data pointer functions.
The problem is that the retrieved value is still a POINTER pointing to the memory of a different thread.
Regards
Hans
 
Back
Top