Re: [IronPython] Very strange problem with ExecuteFile
Thanks, that makes sense. The code we have that was showing the problem is auto-generated, so we should be able to get our generator to split it up into smaller chunks and execute them separately. Regards, Giles Martin Maly wrote: Exactly. In console, each statement is compiled into its own CLR method so you won't hit this problem. Martin -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas Sent: Wednesday, November 22, 2006 8:12 AM To: Discussion of IronPython Subject: Re: [IronPython] Very strange problem with ExecuteFile Martin, We don't see the same problem in the IronPython console; is this because it is executing the file somehow differently - perhaps line-by-line, maintaining a context dictionary? Regards, Giles Martin Maly wrote: I believe in this case the exception is result of what seems to be a CLR limitation. The code (in this case one static method) IronPython needs to generate to handle this input is too big and CLR/Jit then throws invalid program exception. The only workaround I am aware of is to split the code up to multiple functions. Martin -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas Sent: Wednesday, November 22, 2006 6:07 AM To: Discussion of IronPython Subject: [IronPython] Very strange problem with ExecuteFile When the attached test.py is executed using ExecuteFile (sample .cs file also attached), we get the following exception: System.InvalidProgramException: Common Language Runtime detected an invalid program. The problem does not occur under the IP Console (which I guess doesn't use ExecuteFile). My best guess is that the problem occurs when the complexity of the parse tree exceeds some particular limit. Does anyone have any ideas for a workaround or a fix? This one is causing us serious problems, so any thoughts would be much appreciated. Regards, Giles -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Re: [IronPython] Very strange problem with ExecuteFile
Exactly. In console, each statement is compiled into its own CLR method so you won't hit this problem. Martin -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas Sent: Wednesday, November 22, 2006 8:12 AM To: Discussion of IronPython Subject: Re: [IronPython] Very strange problem with ExecuteFile Martin, We don't see the same problem in the IronPython console; is this because it is executing the file somehow differently - perhaps line-by-line, maintaining a context dictionary? Regards, Giles Martin Maly wrote: > I believe in this case the exception is result of what seems to be a CLR > limitation. The code (in this case one static method) IronPython needs to > generate to handle this input is too big and CLR/Jit then throws invalid > program exception. > > The only workaround I am aware of is to split the code up to multiple > functions. > > Martin > > -Original Message- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas > Sent: Wednesday, November 22, 2006 6:07 AM > To: Discussion of IronPython > Subject: [IronPython] Very strange problem with ExecuteFile > > When the attached test.py is executed using ExecuteFile (sample .cs file also > attached), we get the following exception: > > System.InvalidProgramException: Common Language Runtime detected an > invalid program. > > The problem does not occur under the IP Console (which I guess doesn't use > ExecuteFile). My best guess is that the problem occurs when the complexity > of the parse tree exceeds some particular limit. > > Does anyone have any ideas for a workaround or a fix? This one is causing us > serious problems, so any thoughts would be much appreciated. > > > Regards, > > Giles > > -- > Giles Thomas > Resolver Systems > [EMAIL PROTECTED] > > ___ > users mailing list > users@lists.ironpython.com > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Re: [IronPython] Very strange problem with ExecuteFile
Martin, We don't see the same problem in the IronPython console; is this because it is executing the file somehow differently - perhaps line-by-line, maintaining a context dictionary? Regards, Giles Martin Maly wrote: > I believe in this case the exception is result of what seems to be a CLR > limitation. The code (in this case one static method) IronPython needs to > generate to handle this input is too big and CLR/Jit then throws invalid > program exception. > > The only workaround I am aware of is to split the code up to multiple > functions. > > Martin > > -Original Message- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas > Sent: Wednesday, November 22, 2006 6:07 AM > To: Discussion of IronPython > Subject: [IronPython] Very strange problem with ExecuteFile > > When the attached test.py is executed using ExecuteFile (sample .cs file also > attached), we get the following exception: > > System.InvalidProgramException: Common Language Runtime detected an > invalid program. > > The problem does not occur under the IP Console (which I guess doesn't use > ExecuteFile). My best guess is that the problem occurs when the complexity > of the parse tree exceeds some particular limit. > > Does anyone have any ideas for a workaround or a fix? This one is causing us > serious problems, so any thoughts would be much appreciated. > > > Regards, > > Giles > > -- > Giles Thomas > Resolver Systems > [EMAIL PROTECTED] > > ___ > users mailing list > users@lists.ironpython.com > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Re: [IronPython] Very strange problem with ExecuteFile
I believe in this case the exception is result of what seems to be a CLR limitation. The code (in this case one static method) IronPython needs to generate to handle this input is too big and CLR/Jit then throws invalid program exception. The only workaround I am aware of is to split the code up to multiple functions. Martin -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Giles Thomas Sent: Wednesday, November 22, 2006 6:07 AM To: Discussion of IronPython Subject: [IronPython] Very strange problem with ExecuteFile When the attached test.py is executed using ExecuteFile (sample .cs file also attached), we get the following exception: System.InvalidProgramException: Common Language Runtime detected an invalid program. The problem does not occur under the IP Console (which I guess doesn't use ExecuteFile). My best guess is that the problem occurs when the complexity of the parse tree exceeds some particular limit. Does anyone have any ideas for a workaround or a fix? This one is causing us serious problems, so any thoughts would be much appreciated. Regards, Giles -- Giles Thomas Resolver Systems [EMAIL PROTECTED] ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
[IronPython] Very strange problem with ExecuteFile
When the attached test.py is executed using ExecuteFile (sample .cs file also attached), we get the following exception: System.InvalidProgramException: Common Language Runtime detected an invalid program. The problem does not occur under the IP Console (which I guess doesn't use ExecuteFile). My best guess is that the problem occurs when the complexity of the parse tree exceeds some particular limit. Does anyone have any ideas for a workaround or a fix? This one is causing us serious problems, so any thoughts would be much appreciated. Regards, Giles -- Giles Thomas Resolver Systems [EMAIL PROTECTED] a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c = d a.b.c =