On 28.10.2021 16:11, Rony G. Flatscher wrote:
>
> Tried for some time now to duplicate the error without Java in the picture by
> duplicating some of
> the code patterns that get applied there in c++ and an ooRexx program.
>
> However so far I was not able to recreate that crash.
>
Today I had again some free time and after editing the test program further I
let it run for an
hour, however it crashed (after 52,400 Rexx interpreter instances created,
around minute nine or
ten). (Please note: most of the time the program runs without a crash,
sometimes it crashes, it is
for the first time that it crashed with a DEBUG 32-bit version from trunk.)
Microsoft Visual Studio is not able to attach:
Looking at the process through Process Explorer shows the following two entries:
It is 32-bit ooRexx on a 64-bit system so 2 GB seems to be stressing some limit
in the 32-bit process.
Here the rxapi daemon:
---
The "testInterpreterInstances.cpp/exe" tries to mimic what happens in the Java
server when Rexx
scripts get run, by looping for a given number of seconds (in this case one
hour was planned, but
the program crashed within ten minutes):
* a Rexx interpreter instance (rii) gets created,
* a package gets dynamically required and its package used in that rii to add
it to other Rexx
scripts that get created with NewRoutine(),
* a Rexx routine from the dynamically required package will redirect .input,
.output, .error,
* a Rexx routine from the dynamically required package will be called that
causes with a reply to
have two calls run on a separate thread:
o one call causes a native method to run two Rexx programs in the passed
rii to be created and run
o the second call will then terminate that particular rii
This was with a DEBUG version of 32-bit ooRexx from trunk ( r12308), in case an
attachable crash
occurs to be able to see where in ooRexx this happens. (Again, the crash occurs
rarely, I have not
yet found a combination that would reliably crash, so still work to do.)
One more observation: the longer the program runs (it reports every 100 new
rii) the creation of rii
becomes noticeably slower.
Not sure, whether this is helpful. If there is anything I can do or supply in
addition, please let
me know.
---rony
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel