comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Array has a corrupted descriptor
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: Array has a corrupted descriptor [message #25154] Mon, 21 May 2001 09:03 Go to next message
R.Bauer is currently offline  R.Bauer
Messages: 1424
Registered: November 1998
Senior Member
Stein Vidar Hagfors Haugan wrote:
>
> Reimar Bauer <r.bauer@fz-juelich.de> writes:
>
>> William Thompson wrote:
>>>
>>> Reimar Bauer <r.bauer@fz-juelich.de> writes:
> [...]
>>>> The error text is:
>>>> % Array has a corrupted descriptor: VAR
> [...]
>
>>> I suspect that the function is calling external code via something like
>>> CALL_EXTERNAL or LINKIMAGE. I've gotten error messages like that in
>>> the past
>>> when mixing IDL with external code.
>
>>
>> In some of the functions is EXECUTE used (it's not easy to change them
>> to
>> call_function at them moement). CALL_EXTERNAL or LINKIMAGE isn't used.
>> Do you believe EXECUTE will be give this error too ?
>
> I seem to remember that there was a bug in HISTOGRAM that could
> occasionally give such error messages.. Don't remember which IDL
> version (nor in what version the problem was fixed).
>
> Are you able to pin down a repeatable case that will trigger the
> error?

I hope I am able to build a smaller example, the one I have at the
moment
uses a lot of routines.

> Does your routine call other routines that have
> call_external/linkimage/dlm code?

If it's possible to exclude dlms by storing only data to sav files
I have excluded already the ncdf dlm.


I am not able to remove the execute on the third or fourth level
routines at the moment. This is planned.


regards

Reimar

>
> --
> ------------------------------------------------------------ --------------
> Stein Vidar Hagfors Haugan
> ESA SOHO SOC/European Space Agency Science Operations Coordinator for SOHO
>
> NASA Goddard Space Flight Center, Email: shaugan@esa.nascom.nasa.gov
> Mail Code 682.3, Bld. 26, Room G-1, Tel.: 1-301-286-9028/240-354-6066
> Greenbelt, Maryland 20771, USA. Fax: 1-301-286-0264
> ------------------------------------------------------------ --------------

--
Reimar Bauer

Institut fuer Stratosphaerische Chemie (ICG-1)
Forschungszentrum Juelich
email: R.Bauer@fz-juelich.de
http://www.fz-juelich.de/icg/icg1/
=============================================
a IDL library at ForschungsZentrum J�lich
http://www.fz-juelich.de/icg/icg1/idl_icglib/idl_lib_intro.h tml

http://www.fz-juelich.de/zb/text/publikation/juel3786.html
Re: Array has a corrupted descriptor [message #25157 is a reply to message #25154] Mon, 21 May 2001 08:15 Go to previous messageGo to next message
Stein Vidar Hagfors H[1] is currently offline  Stein Vidar Hagfors H[1]
Messages: 56
Registered: February 2000
Member
Reimar Bauer <r.bauer@fz-juelich.de> writes:

> William Thompson wrote:
>>
>> Reimar Bauer <r.bauer@fz-juelich.de> writes:
[...]
>>> The error text is:
>>> % Array has a corrupted descriptor: VAR
[...]


>> I suspect that the function is calling external code via something like
>> CALL_EXTERNAL or LINKIMAGE. I've gotten error messages like that in
>> the past
>> when mixing IDL with external code.

>
> In some of the functions is EXECUTE used (it's not easy to change them
> to
> call_function at them moement). CALL_EXTERNAL or LINKIMAGE isn't used.
> Do you believe EXECUTE will be give this error too ?

I seem to remember that there was a bug in HISTOGRAM that could
occasionally give such error messages.. Don't remember which IDL
version (nor in what version the problem was fixed).

Are you able to pin down a repeatable case that will trigger the
error? Does your routine call other routines that have
call_external/linkimage/dlm code?

--
------------------------------------------------------------ --------------
Stein Vidar Hagfors Haugan
ESA SOHO SOC/European Space Agency Science Operations Coordinator for SOHO

NASA Goddard Space Flight Center, Email: shaugan@esa.nascom.nasa.gov
Mail Code 682.3, Bld. 26, Room G-1, Tel.: 1-301-286-9028/240-354-6066
Greenbelt, Maryland 20771, USA. Fax: 1-301-286-0264
------------------------------------------------------------ --------------
Re: Array has a corrupted descriptor [message #25158 is a reply to message #25157] Mon, 21 May 2001 07:58 Go to previous messageGo to next message
R.Bauer is currently offline  R.Bauer
Messages: 1424
Registered: November 1998
Senior Member
William Thompson wrote:
>
> Reimar Bauer <r.bauer@fz-juelich.de> writes:
>
>> Hi,
>
>> I got an error sometimes in one of my routines only on AIX.
>
>> -- IDL> help,!version,/str
>> ** Structure !VERSION, 7 tags, length=44:
>> ARCH STRING 'ibmr2'
>> OS STRING 'AIX'
>> OS_FAMILY STRING 'unix'
>> RELEASE STRING '5.4.1'
>> BUILD_DATE STRING 'Jan 16 2001'
>> MEMORY_BITS INT 32
>> FILE_OFFSET_BITS
>> INT = 32
>
>> The same routine works on linux and windows.
>
>> The error text is:
>> % Array has a corrupted descriptor: VAR
>
>> the calling sequence is something like this
>
>> var=function(x)
>
>> First I like to know what's this error is meaning.
>
>> It seems to me that's the RETURN statement won't work.
>
>> The result value of my function is good.
>
>> If it reachs the calling level of the function I got
>> this error.
>
> I suspect that the function is calling external code via something like
> CALL_EXTERNAL or LINKIMAGE. I've gotten error messages like that in the past
> when mixing IDL with external code.

In some of the functions is EXECUTE used (it's not easy to change them
to
call_function at them moement). CALL_EXTERNAL or LINKIMAGE isn't used.
Do you believe EXECUTE will be give this error too ?

>
> The descriptor is the thing which describes a variable in IDL. It contains the
> datatype, array dimensions, and the physical location of the data in memory.
> When you pass around variables in IDL, you're really passing around the
> descriptors.
>
> William Thompson

--
Reimar Bauer

Institut fuer Stratosphaerische Chemie (ICG-1)
Forschungszentrum Juelich
email: R.Bauer@fz-juelich.de
http://www.fz-juelich.de/icg/icg1/
============================================================ ======
a IDL library at ForschungsZentrum Juelich
http://www.fz-juelich.de/icg/icg1/idl_icglib/idl_lib_intro.h tml

http://www.fz-juelich.de/zb/text/publikation/juel3786.html
============================================================ ======

read something about linux / windows
http://www.suse.de/de/news/hotnews/MS.html
Re: Array has a corrupted descriptor [message #25159 is a reply to message #25158] Mon, 21 May 2001 07:56 Go to previous messageGo to next message
thompson is currently offline  thompson
Messages: 584
Registered: August 1991
Senior Member
Reimar Bauer <r.bauer@fz-juelich.de> writes:

> Hi,

> I got an error sometimes in one of my routines only on AIX.

> -- IDL> help,!version,/str
> ** Structure !VERSION, 7 tags, length=44:
> ARCH STRING 'ibmr2'
> OS STRING 'AIX'
> OS_FAMILY STRING 'unix'
> RELEASE STRING '5.4.1'
> BUILD_DATE STRING 'Jan 16 2001'
> MEMORY_BITS INT 32
> FILE_OFFSET_BITS
> INT = 32

> The same routine works on linux and windows.

> The error text is:
> % Array has a corrupted descriptor: VAR

> the calling sequence is something like this

> var=function(x)

> First I like to know what's this error is meaning.

> It seems to me that's the RETURN statement won't work.

> The result value of my function is good.

> If it reachs the calling level of the function I got
> this error.


I suspect that the function is calling external code via something like
CALL_EXTERNAL or LINKIMAGE. I've gotten error messages like that in the past
when mixing IDL with external code.

The descriptor is the thing which describes a variable in IDL. It contains the
datatype, array dimensions, and the physical location of the data in memory.
When you pass around variables in IDL, you're really passing around the
descriptors.

William Thompson
Re: Array has a corrupted descriptor [message #25230 is a reply to message #25154] Mon, 04 June 2001 10:34 Go to previous message
R.Bauer is currently offline  R.Bauer
Messages: 1424
Registered: November 1998
Senior Member
Reimar Bauer wrote:
>
> Stein Vidar Hagfors Haugan wrote:
>>
>> Reimar Bauer <r.bauer@fz-juelich.de> writes:
>>
>>> William Thompson wrote:
>>>>
>>>> Reimar Bauer <r.bauer@fz-juelich.de> writes:
>> [...]
>>>> >The error text is:
>>>> >% Array has a corrupted descriptor: VAR
>> [...]
>>
>>>> I suspect that the function is calling external code via something like
>>>> CALL_EXTERNAL or LINKIMAGE. I've gotten error messages like that in
>>>> the past
>>>> when mixing IDL with external code.
>>
>>>
>>> In some of the functions is EXECUTE used (it's not easy to change them
>>> to
>>> call_function at them moement). CALL_EXTERNAL or LINKIMAGE isn't used.
>>> Do you believe EXECUTE will be give this error too ?
>>
>> I seem to remember that there was a bug in HISTOGRAM that could
>> occasionally give such error messages.. Don't remember which IDL
>> version (nor in what version the problem was fixed).
>>
>> Are you able to pin down a repeatable case that will trigger the
>> error?
>
> I hope I am able to build a smaller example, the one I have at the
> moment
> uses a lot of routines.
>
>> Does your routine call other routines that have
>> call_external/linkimage/dlm code?
>
> If it's possible to exclude dlms by storing only data to sav files
> I have excluded already the ncdf dlm.
>
> I am not able to remove the execute on the third or fourth level
> routines at the moment. This is planned.
>
> regards
>
> Reimar
>
>>
>> --

Ok, I have a solution for my problem but it sounds a bit stupid.

The original code was:

.
.
.

temp = CREATE_STRUCT(temp, 'FLAG', '')
temp = CREATE_STRUCT(temp, temp.prog_params)
temp = delete_tag(temp $
, ['TIME','CALLING_SEQUENCE','INFO_STRUCT', 'PROG_PARAMS',
'MISSING_VALUE'])

.
.
.

ERROR: ARRAY HAS A CORRUPTED DESCRIPTOR


CHANGED TO:

.
.
.
prog_params=temp.prog_params

temp = delete_tag(temp $
, ['TIME','CALLING_SEQUENCE','INFO_STRUCT', 'PROG_PARAMS',
'MISSING_VALUE'])

temp = CREATE_STRUCT(temp, 'FLAG', '')
temp = CREATE_STRUCT(temp, prog_params)
.
.
.


I have tried to separate the failure into a small routine without
success. All smaller routines
based on data stored to sav files are good. In one of the child routines
is execute used so I believe
this is making trouble on AIX.

The same progam runs good on Linux and Win NT.


Reimar


--
Reimar Bauer

Institut fuer Stratosphaerische Chemie (ICG-1)
Forschungszentrum Juelich
email: R.Bauer@fz-juelich.de
http://www.fz-juelich.de/icg/icg1/
============================================================ ======
a IDL library at ForschungsZentrum Juelich
http://www.fz-juelich.de/icg/icg1/idl_icglib/idl_lib_intro.h tml

http://www.fz-juelich.de/zb/text/publikation/juel3786.html
============================================================ ======

read something about linux / windows
http://www.suse.de/de/news/hotnews/MS.html
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: Peak finding
Next Topic: Re: using SPAWN to work with Windows NT network directories

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 19:13:03 PDT 2025

Total time taken to generate the page: 0.00706 seconds