企业绩效管理网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 902|回复: 7

Evaluation stack overflow

[复制链接]

70

主题

437

帖子

587

积分

高级会员

Rank: 4

积分
587
QQ
发表于 2014-3-16 04:01:09 | 显示全部楼层 |阅读模式
I can't run my processes coming out of a Sql server, the error I get says "Evaluation stack overflow". Has anybody ever encountered this before. I checked my feeders and that doesn't seem to be the issue.
回复

使用道具 举报

67

主题

416

帖子

566

积分

高级会员

Rank: 4

积分
566
发表于 2014-3-16 05:43:34 | 显示全部楼层
Hi CD Hodge,
This usually happens because the nesting of feeders blows the feeder stack.  A a single cell can only trigger about 250 other feedersbefore the stack blows.  So if you have say a day dimension you can only feed forward 250 days from Jan 1st.  In this situation you would have a feeder like this

['Today']=> DB( Cube,....Attrs('Day', !Day,'Next')....)

This would normaly break the stack.
What I do is set my next attribute up so that June the 1 st is not populated and the roll forward of the feeder breaks at June 1st and do the same for Dec 31st as well.  You then need two feeders for each year

#Fails on June 1st
['Jan 1st']=>DB( Cube,....Attrs('Day', !Day,'Next')....)
#Fails on Dec 31st
['Jun 2nd']=>DB( Cube,....Attrs('Day', !Day,'Next')....)

This should stop the feeder stack from breaking.

IMO though the feeder stack is too small, we should at least be able to feed a whole year in 1 hit
HTH
回复 支持 反对

使用道具 举报

86

主题

396

帖子

584

积分

高级会员

Rank: 4

积分
584
QQ
发表于 2014-3-16 06:27:06 | 显示全部楼层
I have never encountered this error before, and in fact everything was working and then suddenly it wasn't.  Would this also happen when I have setup a nesting feeder for months?
回复 支持 反对

使用道具 举报

66

主题

378

帖子

540

积分

高级会员

Rank: 4

积分
540
QQ
发表于 2014-3-16 06:49:40 | 显示全部楼层
Yes it might depending on your version (hint you might want to update your profile   ) .  In some releases when the stack blows it can stop any further feeders executing in that cube.  You can also find different behaviour as to what breaks (if anything) when the server starts versus a rule save.

If you have a month dimension that is month and year with a lot of months in it then setting up a monthly feeder could blow the feeder stack and may affect other potentially unrelated areas of the same cube.  If it is just a month dimension with 12 or 13 values then it would be much harder to blow the stack but still possible.  Any cell that feeds over 250 cells has the potential to blow the stack.

Cheers,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

90

主题

419

帖子

614

积分

高级会员

Rank: 4

积分
614
QQ
发表于 2014-3-16 07:26:35 | 显示全部楼层
How nice.  Thanks for your help, got everything working again.
回复 支持 反对

使用道具 举报

87

主题

373

帖子

564

积分

高级会员

Rank: 4

积分
564
QQ
发表于 2014-3-16 07:39:46 | 显示全部楼层
cdhodge2002 wrote:I have never encountered this error before, and in fact everything was working and then suddenly it wasn't.  Would this also happen when I have setup a nesting feeder for months?

Yes!  I wouldn't say this is a common trap, but reasonably common enough.  As data input grows over time nested or recursive feeders can break (due to data being where there was none previously.)  This can be avoided by designing in breakpoints as Steve suggested.  

A practical example of this should really be included in the rules guide, but then so should a lot of things. It seems this is just one of those things you have to learn along the way.
回复 支持 反对

使用道具 举报

85

主题

408

帖子

596

积分

高级会员

Rank: 4

积分
596
QQ
发表于 2014-3-16 08:00:17 | 显示全部楼层
Hi All,

I too now have a stack overflow   

I have added another year into our time dimension and have the error messsage of stackoverflow.

Our model is pretty big, so how can I go about understanding which feeder(s) need splitting up like Steve suggested above, when my error message says:

356792   ERROR   2011-05-10 16:45:15.667   TM1.Server   Stack overflow evaluating feeders. Starting cell: A01_POL[CLOSING BALANCE,FCST01,Poland Home Credit,Agents No,I_2006_W52]. Feeder: 1

Is this message telling me the reference of the cell that isn't being fed, and I need to manually go and find the feeder?

Does this mean this is the only cell that is overflowing the stack?

Thanks in advance.

Kirk

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

73

主题

390

帖子

558

积分

高级会员

Rank: 4

积分
558
QQ
发表于 2014-3-16 08:27:15 | 显示全部楼层
Hi Kirk,

The first thing to check if this is actually breaking anything, depending on the nature of your model it might or it might not.

The number after the word feeder (in your case 1) is the number of the feeder in the rule file, so helpfully the message does tell you where the issue starts, (I'm pretty sure I'm not imagining this!).  The cell reference is the starting cell that is triggering the failure of the feeder stack.  Working on a rough stack size of 250 and starting from a number in 2006 W52, your feeder stack word work for 2007, 2008, 2009, 2010, 2011 assuming you are feeding values forward for a weekly dimension.  It would start failing around the end of 2011 and onwards into 2012, so it makes sense that you are now seeing issues.

I still think the stack is too small!  Shame no was listening in June 2009.

Hope the above makes sense when applied to your model.

Cheers,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|企业绩效管理网 ( 京ICP备14007298号   

GMT+8, 2023-10-2 20:40 , Processed in 0.085054 second(s), 12 queries , Memcache On.

Powered by Discuz! X3.1 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表