Heap allocation failed w/ looping

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
greggknight
Premium Member
Premium Member
Posts: 120
Joined: Thu Oct 28, 2004 4:24 pm

Heap allocation failed w/ looping

Post by greggknight »

I am running 8.5 on 32 bit and 64bit Windows 2008R2
We are using the looping and these new functions

SaveInputRecord()
GetSavedInputRecord()

When we run the job for a small amount of records I can watch memory consumption climb continuosly almost to peek then the job finishes success.

When we add more records the climb is all the way to max memory and we get
APT_CombinedOperatorController,1: Caught exception from runLocally(): APT_BadAlloc: Heap allocation failed

The job just stalls and does not abort
The process tree is still alive and all the OSH processes are still alive but not active.
"Don't let the bull between you and the fence"

Thanks
Gregg J Knight

"Never Never Never Quit"
Winston Churchill
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

FYI, split this off from an old discussion of the 8.5 Beta in the General forum and moved it here.
-craig

"You can never have too many knives" -- Logan Nine Fingers
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Seems to me they've managed to introduce a memory leak into these functions. Definitely needed is a bug report through your official support provider.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
greggknight
Premium Member
Premium Member
Posts: 120
Joined: Thu Oct 28, 2004 4:24 pm

Post by greggknight »

Yes I have a call in with IBM for a PMR on this issue. I placed it here because my search only found the one artical that was written containing the new function.There are a couple of other bugs I have found as well. In case anyone is interested.The surrogate key generator produces a warning which contains EOF .They have built and sent me two patchs one for the 32bit and one for the 64bit.Also the surrogate key generator when using a STATE file starts of with eronious numbers. So if you take the MAX KEy from a dimension and update a STATE file and your running a 2 node config for example the STATE file contains two starting values. So Lets say that your MAYKEY is a Dimension is 7000000
then you would get two lines
1-6999999
7000001-7000001
so when you run your jobs node0 starts at 2 and goes to 6999998 and node1 starts at 7000002. You get dup key issues for 1 - 6999999
They are working on this one.
"Don't let the bull between you and the fence"

Thanks
Gregg J Knight

"Never Never Never Quit"
Winston Churchill
greggknight
Premium Member
Premium Member
Posts: 120
Joined: Thu Oct 28, 2004 4:24 pm

Post by greggknight »

[UPDATE]I have two patches coming from IBM
One to fix the Heap allocation when using the two new functions GetSavedInputRecord and SavedInputRecord these functions cause memory consumption to soar till it runs out and the job aborts.
They have found the issue and are unit testing it now.

The surrogate key generation issue is also a bug and they are putting together a 32bit and 64bit patch as well.

Things are looking up. :lol:
"Don't let the bull between you and the fence"

Thanks
Gregg J Knight

"Never Never Never Quit"
Winston Churchill
Post Reply