Skip to Content
0

HANA Allocation Limit error

Jan 16 at 03:23 PM

279

avatar image

Hello community,

I have encountered a strange issue.

I have a procedure which is called by a job with a crontrigger. This job fails almost every time because memory allocation limit. But if I invoke the procedure manually it's working perfectly fine every time.

When I look into the performance monitor there is no sign that the memory allocation limit is reached. Maybe I'm reading it the wrong way, but I think it should be ok.

What could be the matter?

Thanks in advance

BR

Jo

mem-alloc.png (16.9 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

2 Answers

Best Answer
Michael Healy
Jan 18 at 05:23 PM
0

I looked at the oom dump file.

So the top allocator is consuming 5GBs which is:

Pool/JoinEvaluator/JECreateNTuple

So within your procedure, you could consider setting the hint USE_OLAP_PLAN (SAP Note 2142945) for testing purposes in order to check if a switch from join engine to OLAP engine works and results in a reduced memory consumption.

As a workaround the NO_GROUPING_SIMPLIFICATION hint (SAP Note 2142945) can be used. If triggered by BW / MDX, you can also disable the RSADMIN parameter MDX_F4_USE_SQL (SAP Note 1865554).

Is this the call that you are making at time of the dump:

SQL: Insert Into "SCC"."SCC.Development.model::data.SccData_Union" SELECT * FROM "_SYS_BIC"."SCC.Development.view/CV_SccData_Union_comp"

BR

Michael

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Hello Michael,

I'm writing late, sorry for that, I was pretty much caught in work lately.

I found the error, when I tried to transport the packages. They throw a error that some objects couldn't be activitated. So I looked into it more deeply and it was because of another call that writes a calc view into a table where the output attributes of the cv were in different order than in the table definintion in the hdbdd file.

Now its working like a charm again.

Thanks a lot for your help and valuable inputs.

BR

Jo

1
Michael Healy
Jan 16 at 03:46 PM
0

Are you seeing an OOM dump in the DB?

Show 8 Share
10 |10000 characters needed characters left characters exceeded

Hello Michael,

I had a few dumps because OOM but for the jobs that failed the last 12 hours there is no dump file created/dumps noted.

0

I would guess that is because your config is set to generate only one OOM dump every 12 or so hours.

Can you upload the last OOM you saw when the procedure ran and failed.

1

The error occuring is:

  • Application Error: SQL exception 2048: column store error: "Schema"."Path::Procedure": line 13 col 3 (at pos 379): [2048] (range 3): column store error: search table error: [9] Memory allocation failed at /sapmnt/ld7272/a/HDB/jenkins_prod/workspace/8uyiojyvla/s/ptime/session/eapi/jdbc/ExternalStatement.cc:912
0

I should have been more specific.

Go to your HANA Studio > Traces > Find the relevant indexserver.oom dump that occurred at the same time as the procedure failed.

Upload it here:

https://mdocs.sap.com/mcm/public/v1/open?shr=N6r0Af2Fe_raO8MD2ssTlJ8a_jXbXmXPG8KApNu6UmA

Or better again, generate a full system dump from HANA and upload to the above link.

0

Hello Michael,

I uploaded the file, thanks for your help.

How can I generate a full system dump?

0
0

Yes it is.

I'm irritated because calling this manually works perfectly fine. How is this possible?

Thanks for your detailled answers.

0

My guess would be the way the procedure is written/optimised, so as I suggested, addthe HINT above to the procedure and check if this reduces the consumption.

0