Custom Function has Memory Error on Server

KevinCourtney

Active Member
Hello,

I’m working in 9.0 for a client and I have created a custom NER function that receives several strings and concatenates them into one string. It is similar to what I’ve used for years at another client in pre-9.0 JDE. I’m calling this function from a UBE in the Initialize event.

When I run the UBE locally it works fine but when I run it on the Enterprise Server it’s failing with this error in the debug log and on the PDF.

--UBE--[4]-- --ER: Line(100): Done Processing Assign
--UBE--[4]-- --ER: Line(101): Loading Data Structure for BSFN
--UBE--[4]-- --ER: Line(101): Processing BSFN : ConcatStringsWithDelimForCSVs
--UBE--[0]-- EventRule : Business Function ConcatStringsWithDelimForCSVs at line 99 for Event 11 in Section DrivingSection has caused a memory violation.

The function is defined to run on both the Client & Server.

We’ve done full builds and it’s failing on the enterprise server in both DV and PY.

One difference we do note is the enterprise server is running 64 bit Windows: “Windows 2003 R2 – Standard X64 Edition – SP2” and my workstation (the local option) is Windows XP 2002 SP2

Other info is we’re using Visual C++ 2005.

I would include the code of the function but it doesn’t seem like it would be a problem with the code because it runs without problems locally. (please correct me if my assumption is wrong)

Do any of you have any hints or ideas on what might be causing this problem?

Thanks in advance,

Kevin Courtney

Platform: Intel
Operating Sys: Windows
Database: SQL Server 2005
Release: OneWorld E900
 
This probably isn't the issue, but do you know what Tools Release you are on? The 32-bit JDE services are only certified to run on 64-bit Windows with TR 8.98.1.x?
 
Hello Ken,

Thanks for the quick reply. I think you are on to something with your answer; my client is on Tools Release 8.98.0.5

They just went live with 9.0 a few weeks ago and didn't want to upgrade the Tools Release because of all the testing involved that would have threatened their go live date.

What I don’t understand is why the standard JDE functions work fine on the 64 bit server but not my custom NER function.

In this UBE I call the B34A1010 WriteOneLIne function and it works fine.

In this 64 bit Tools Release 8.98.1 requirement, is it only NER functions that will fail if it's an older Tools Release?

Thanks again!

Kevin
 
I haven't tried that, so I'm afraid I don't know the answer to that. As I said, I'm not even sure that this is the problem.

However, now that this Tools Release is available, they can try installing it just for DV and/or PY and test it out without affecting PD (multi-foundation).
 
As a follow up... I moved the logic I have in the function that was causing the memory violation into the UBE itself and that resolved the problem.

The odd thing is my biggest custom function was causing the memory error on the enterprise server but a smaller custom function of mine was called in the same section in the UBE and it did NOT cause a memory violation.

I’m not sure what the difference is between the two function but it does tell me that some NER functions will work on the Windows 64 bit enterprise server and others will not when on Tools Release 8.98.05.

Until my client upgrades their Tools Release, I’ll have to avoid custom functions as much as possible.

Kevin Courtney
 
Back
Top