[SciPy-dev] Check reading the nested fields of a nested array

Nils Wagner nwagner at iam.uni-stuttgart.de
Tue Apr 25 04:02:37 CDT 2006


Travis Oliphant wrote:
> Nils Wagner wrote:
>   
>> Travis Oliphant wrote:
>>   
>>     
>>> Nils Wagner wrote:
>>>   
>>>     
>>>       
>>>> Travis Oliphant wrote:
>>>>   
>>>>     
>>>>       
>>>>         
>>>>> Nils Wagner wrote:
>>>>>   
>>>>>     
>>>>>       
>>>>>         
>>>>>           
>>>>>> Nils Wagner wrote:
>>>>>>   
>>>>>>     
>>>>>>       
>>>>>>         
>>>>>>           
>>>>>>             
>>>>>>> Travis Oliphant wrote:
>>>>>>>   
>>>>>>>     
>>>>>>>       
>>>>>>>         
>>>>>>>           
>>>>>>>             
>>>>>>>               
>>>>>>>> Nils Wagner wrote:
>>>>>>>>   
>>>>>>>>     
>>>>>>>>       
>>>>>>>>         
>>>>>>>>           
>>>>>>>>             
>>>>>>>>               
>>>>>>>>                 
>>>>>>>>> 0.9.7.2404 on a 64 bit system
>>>>>>>>>
>>>>>>>>> numpy.test(1,10) results in
>>>>>>>>>   
>>>>>>>>> Check reading the nested fields of a nested array (1st level)*** glibc 
>>>>>>>>> detected *** malloc(): memory corruption (fast): 0x00000000007dee40 ***
>>>>>>>>>   
>>>>>>>>>     
>>>>>>>>>       
>>>>>>>>>         
>>>>>>>>>           
>>>>>>>>>             
>>>>>>>>>               
>>>>>>>>>                 
>>>>>>>>>                   
>>>>>>>> Can you check to see which check-in caused the problem.  Go back to 
>>>>>>>> revision 2403, 2402, and so forth.
>>>>>>>>
>>>>>>>> Also, please remove the build directory and the installed numpy to be 
>>>>>>>> sure changes to the C-API are not causing problems.
>>>>>>>>
>>>>>>>> The trace-back is not really giving a clue.  Perhaps if you ran under 
>>>>>>>> valgrind better help could be given.  Are there any warnings emmitted 
>>>>>>>> during compilation?
>>>>>>>>
>>>>>>>>
>>>>>>>> Could somebody else with a 64-bit system verify?
>>>>>>>>
>>>>>>>>     
>>>>>>>>       
>>>>>>>>         
>>>>>>>>           
>>>>>>>>             
>>>>>>>>               
>>>>>>>>                 
>>>>>> BTW, the problem is not restricted to 64-bit systems. I just installed 
>>>>>> the latest svn version of numpy
>>>>>> on a 32-bit system and got
>>>>>> Check reading the nested fields of a nested array (1st level)*** glibc 
>>>>>> detected *** free(): invalid next size (fast): 0x081d5870 ***
>>>>>> Abort
>>>>>>
>>>>>>   
>>>>>>     
>>>>>>       
>>>>>>         
>>>>>>           
>>>>>>             
>>>>> Please remove your installation of numpy and your build directory and 
>>>>> try again.  I do not get these errors.  
>>>>>
>>>>> The copyswap function changed arguments and appears to be at the root of 
>>>>> these problems.
>>>>>
>>>>> -Travis
>>>>>
>>>>> _______________________________________________
>>>>> Scipy-dev mailing list
>>>>> Scipy-dev at scipy.net
>>>>> http://www.scipy.net/mailman/listinfo/scipy-dev
>>>>>   
>>>>>     
>>>>>       
>>>>>         
>>>>>           
>>>> Hi Travis,
>>>>
>>>> I installed numpy from scratch but the problem persists. Any idea ?
>>>>
>>>>   
>>>>     
>>>>       
>>>>         
>>> Did you remove your numpy from <site-packages> and the build directory 
>>> before building?
>>>
>>>   
>>>     
>>>       
>> Yes.
>>   
>>     
>>> If so, please isolate the test that is failing into a short Python 
>>> snippet that exhibits the error.   I've just double-checked all uses of 
>>> copyswap to make sure they have all been changed.   All tests are 
>>> passing for me as well (also all SciPy tests pass).
>>>
>>> So, I can't reproduce the problem and it smells a lot like an 
>>> installation problem.  Are you picking up  include files from some other 
>>> location?  
>>>   
>>>     
>>>       
>> How can I check that ?
>>   
>>     
>>> Can somebody else verify to see if current SVN of numpy builds and 
>>> passes tests?
>>>
>>> -Travis
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Scipy-dev mailing list
>>> Scipy-dev at scipy.net
>>> http://www.scipy.net/mailman/listinfo/scipy-dev
>>>   
>>>     
>>>       
>> I found the test in test_numerictypes.py
>>
>>     def check_nested1_acessors(self):
>>         """Check reading the nested fields of a nested array (1st level)"""
>>         h = array(self._buffer, dtype=self._descr)
>>         if not self.multiple_rows:
>>             assert_equal(h['Info']['value'],
>>                          array(self._buffer[1][0], dtype='c16'))
>>             assert_equal(h['Info']['y2'],
>>                          array(self._buffer[1][1], dtype='f8'))
>>             assert_equal(h['info']['Name'],
>>                          array(self._buffer[3][0], dtype='U2'))
>>             assert_equal(h['info']['Value'],
>>                          array(self._buffer[3][1], dtype='c16'))
>>         else:
>>             assert_equal(h['Info']['value'],
>>                          array([self._buffer[0][1][0],
>>                                 self._buffer[1][1][0]],
>>                                 dtype='c16'))
>>             assert_equal(h['Info']['y2'],
>>                          array([self._buffer[0][1][1],
>>                                 self._buffer[1][1][1]],
>>                                 dtype='f8'))
>>             assert_equal(h['info']['Name'],
>>                          array([self._buffer[0][3][0],
>>                                 self._buffer[1][3][0]],
>>                                dtype='U2'))
>>             assert_equal(h['info']['Value'],
>>                          array([self._buffer[0][3][1],
>>                                 self._buffer[1][3][1]],
>>                                dtype='c16'))
>>
>>
>>   
>>     
>
> Please copy this code into a short Python file that when run i.e.
>
> python myfile.py
>
> exhibits the problem.
>
>
> You need to adapt the support code to do it.
>
>
> -Travis
>
> _______________________________________________
> Scipy-dev mailing list
> Scipy-dev at scipy.net
> http://www.scipy.net/mailman/listinfo/scipy-dev
>   
 Hi Travis,

I started to isolate the code. But to be honest, I don't know how to 
proceed.
Please find attached my first try of myfile.py.

Nils

-------------- next part --------------
A non-text attachment was scrubbed...
Name: myfile.py
Type: text/x-python
Size: 3664 bytes
Desc: not available
Url : http://projects.scipy.org/pipermail/scipy-dev/attachments/20060425/07cc2541/attachment.py 


More information about the Scipy-dev mailing list