[Ironpython-users] Fwd: weakref random "SystemError" and "ValueError" exception (affecting _weakrefset.py and abc.py)

Andres Sommerhoff sommerhoff at gmail.com
Tue Apr 14 18:04:48 CEST 2015


Thank you Pawel, good to know you can reproduce the weakref error in two
Ironpython releases as well.

Just for your reference, I add -X:ShowClrExceptions -X:ExceptionDetail and
got the reports for each exception (txt atached).

Any clue?

Regards, Andres

>>> Rest of the email thread in:
https://mail.python.org/pipermail/ironpython-users/2015-April/017447.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20150414/e747067e/attachment.html>
-------------- next part --------------

################################################
Case 1: Random Exception "SystemError" in WeakSet
            Tested on IronPython 2.7.4   32bits Windows 7 64
################################################
Traceback (most recent call last):
  File "<string>", line 29, in <module>
  File "D:\IronPython\Lib\_weakrefset.py", line 73, in __contains__
SystemError: Handle is not initialized.
--------------------------

Handle is not initialized.
   at System.Runtime.InteropServices.GCHandle.get_Target()
   at IronPython.Modules.PythonWeakRef.ref.EqualsWorker(Object other, IEqualityComparer comparer)
   at IronPython.Modules.PythonWeakRef.ref.System.Collections.IStructuralEquatable.Equals(Object other, IEqualityComparer comparer)
   at IronPython.Runtime.Operations.InstanceOps.StructuralEqualityMethod[T](CodeContext context, T x, T y)
   at CallSite.Target(Closure , CallSite , Object , Object )
   at IronPython.Runtime.SetStorage.<>c__DisplayClassd.<AssignSiteDelegates>b__c(Object o0, Object o1)
   at IronPython.Runtime.SetStorage.ContainsWorker(Bucket[] buckets, Object item, Int32 hashCode, Func`3 eqFunc)
   at IronPython.Runtime.SetStorage.ContainsAlwaysHash(Object item)
   at IronPython.Runtime.SetCollection.__contains__(Object item)
   at IronPython.Runtime.Binding.PythonOperationBinder.SetContains(CallSite site, Object other, Object value)
   at __contains__$11(Closure , PythonFunction , Object , Object )
   at IronPython.Runtime.FunctionCaller`2.Call2(CallSite site, CodeContext context, Object func, T0 arg0, T1 arg1)
   at IronPython.Runtime.Method.MethodBinding`1.SelfTarget(CallSite site, CodeContext context, Object target, T0 arg0)
   at CallSite.Target(Closure , CallSite , Object , Object )
   at __main__$15.__main__(CodeContext $globalContext, FunctionCode $functionCode)
   at IronPython.Compiler.PythonScriptCode.RunWorker(CodeContext ctx)
   at IronPython.Compiler.PythonScriptCode.Run(Scope scope)
   at IronPython.Compiler.RuntimeScriptCode.InvokeTarget(Scope scope)
   at IronPython.Compiler.RuntimeScriptCode.Run(Scope scope)
   at IronPython.Hosting.PythonCommandLine.RunFileWorker(String fileName)
   at IronPython.Hosting.PythonCommandLine.RunFile(String fileName)
SystemError: Handle is not initialized.
CLR Exception:
    InvalidOperationException: Handle is not initialized.
-------------- next part --------------
################################################
Case 2: Random Exception "ValueError" in WeakSet
            Tested on IronPython 2.7.4   32bits Windows 7 64
################################################
Traceback (most recent call last):
  File "<string>", line 29, in <module>
  File "D:\IronPython\Lib\_weakrefset.py", line 70, in __contains__
ValueError: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
---------------------------
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
ThrowArgumentOutOfRangeException at offset 72 in file:line:column <filename unknown>:0:0

__new__ at offset 306 in file:line:column <filename unknown>:0:0

CallSite.Target at offset 117 in file:line:column <filename unknown>:0:0

__contains__$11 at offset 169 in file:line:column <filename unknown>:0:0

   at Microsoft.Scripting.Runtime.LightExceptions.CheckAndThrow(Object value)
   at __contains__$11(Closure , PythonFunction , Object , Object )
   at IronPython.Runtime.FunctionCaller`2.Call2(CallSite site, CodeContext context, Object func, T0 arg0, T1 arg1)
   at IronPython.Runtime.Method.MethodBinding`1.SelfTarget(CallSite site, CodeContext context, Object target, T0 arg0)
   at CallSite.Target(Closure , CallSite , Object , Object )
   at lambda_method(Closure , Object[] , StrongBox`1[] , InterpretedFrame )
   at Microsoft.Scripting.Interpreter.CompiledLoopInstruction.Run(InterpretedFrame frame)
   at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
   at Microsoft.Scripting.Interpreter.LightLambda.Run1[T0,TRet](T0 arg0)
   at IronPython.Compiler.RuntimeScriptCode.InvokeTarget(Scope scope)
   at IronPython.Compiler.RuntimeScriptCode.Run(Scope scope)
   at IronPython.Hosting.PythonCommandLine.RunFileWorker(String fileName)
   at IronPython.Hosting.PythonCommandLine.RunFile(String fileName)
ValueError: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
CLR Exception:
    ArgumentOutOfRangeException:Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index


More information about the Ironpython-users mailing list