[ https://issues.apache.org/jira/browse/VELOCITY-886?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16195205#comment-16195205 ]
ventsy velev commented on VELOCITY-886: --------------------------------------- I looked at the source code - ASTIntegerRange does exactly what the name suggests - returns a range of integers. In this case it allocates 67 million ints and loops over them initializing them with values 0 - 67million. It appears that the out of memory exception is not handled correctly. > Loop causes OutOfMemoryError exception > -------------------------------------- > > Key: VELOCITY-886 > URL: https://issues.apache.org/jira/browse/VELOCITY-886 > Project: Velocity > Issue Type: Bug > Components: Engine > Affects Versions: 1.7 > Environment: Windows 7 OS. Java -Xms1024m -Xmx1024m > Reporter: ventsy velev > Labels: exception-handling, perfomance > Attachments: velocityError.png > > > The following template will cause an out of memory exception. > #foreach($i in [0..67000000]) > #if($i == 0) > hi > #end > #end > I'm not sure why this happens as it's only a loop that only produces output > on the first iteration. > The same loop works fine if I reduce the number of iterations by 1 order of > magnitude. > The engine fails hard and no output is produced. -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@velocity.apache.org For additional commands, e-mail: dev-h...@velocity.apache.org