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

Home » Public Forums » archive » Re: ncdf + x-connection + many files = crazy.
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: ncdf + x-connection + many files = crazy. [message #74918 is a reply to message #74917] Wed, 09 February 2011 00:39 Go to previous messageGo to previous message
R.Bauer is currently offline  R.Bauer
Messages: 1424
Registered: November 1998
Senior Member
Am 08.02.2011 21:37, schrieb Matt:
> Hey all,
>
> I've got a great riddle for you today. (Long story short, can you run
> the test code included below to completion on your machine?) I've
> already filed a bug report, but I want to see if other people can
> reproduce these errors.

Hi Matt

I got it too, and I remember a similiar test case for a old fixed bug.
I'll search for that. May be it is a regression.


crash_ncdf
% Loaded DLM: NCDF.
i = 819132
ncdf_fid = 65536
% CRASH_NCDF: NCDF_OPEN: Unable to open the file "./sample.nc".
(NC_ERROR=-31)
% Execution halted at: CRASH_NCDF 41


** NCDF - IDL NetCDF support (loaded)
Version: 4.1.1, Build Date: JUN 18 2010, Source: ITT Visual
Information Solutions

IDL> help, !version,/str
** Structure !VERSION, 8 tags, length=104, data length=100:
ARCH STRING 'x86_64'
OS STRING 'linux'
OS_FAMILY STRING 'unix'
OS_NAME STRING 'linux'
RELEASE STRING '8.0'
BUILD_DATE STRING 'Jun 18 2010'
MEMORY_BITS INT 64
FILE_OFFSET_BITS
INT 64


Linux sunshine 2.6.32-28-generic #55-Ubuntu SMP Mon Jan 10 23:42:43 UTC
2011 x86_64 GNU/Linux

Reimar

>
> I'm experiencing machine/version-dependent, non-deterministic behavior
> that seems to present itself orthogonal to the triggering mechanism.
> In other words, I've got a crazy-making problem.
>
> I experienced this in working code, but through patient debugging,
> I've pared this down my until I've got a relatively small program that
> demonstrates the problem behavior.
>
> The undesirable behavior is a NCDF_OPEN error (NC_ERROR=-31) after
> some *random* number of open/close iterations on a netcdf file that
> was created with IDL (or possibly a segfault core dump on other
> machines.). The second feature is that I don't see this behavior
> until I make an x-connection of some sort (window, /free, or even a
> "device, depth=depth" will cause errors)
>
> Machine 1: (only has idl 7.0.1 64bit installed)
> savoie@snow:~/tmp> uname -a
> Linux snow 2.6.27.54-0.2-default #1 SMP 2010-10-19 18:40:07 +0200
> x86_64 x86_64 x86_64 GNU/Linux
>
> Machine 2 (fails with 32 bit idl7.0.1 & idl6.4):
> savoie@snowblower:~/tmp> uname -a
> Linux snowblower 2.6.34.7-0.5-default #1 SMP 2010-10-25 08:40:12 +0200
> i686 i686 i386 GNux
>
>
> All the code does is open and close a netcdf file, many, many times.
> But after an x-connection (via "window, /free"), the code errors out
> at a different spot in the iteration.
>
>
> Below is the output I get on the problem machines and below that, the
> source code for you to try at home. For extra credit, modify the code
> to open a netcdf file created with a different program than IDL, NCO
> for example.
>
>
> --OUTPUT--------------------------------------
> savoie@snow:~/tmp> idl70
> IDL Version 7.0.1 (linux x86_64 m64). (c) 2008, ITT Visual Information
> Solutions
> Installation number: 100-431.
> Licensed for use by: University of Colorado
>
> IDL> .run ./crash_ncdf.pro
> % Compiled module: CREATE_HAND_SAMPLE.
> % Compiled module: CRASH_NCDF.
> IDL> crash_ncdf
> % Loaded DLM: NCDF.
> Successfully completed first iterations
> i = 143017
> ncdf_fid = 5
> % CRASH_NCDF: NCDF_OPEN: Unable to open the file "/projects/NRTSI-G/
> tmp_crashing_ncdf/sample_h
> and.nc".
> (NC_ERROR=-31)
> % Execution halted at: CRASH_NCDF 44 /homes/snowblower/savoie/
> tmp/crash_ncdf.pro
> % $MAIN$
>
> ----------------------------------------
> Sample Test Code:
> ----------------------------------------
> ;+============================================
> ; :Author: Matt Savoie <savoie@nsidc.org>
> ; :Copyright: (C) <2011> University of Colorado.
> ; :Version: $Id:$
> ;
> ; Created 02/03/2011
> ; National Snow & Ice Data Center, University of Colorado, Boulder
> ;-============================================*/
>
> ;+
> ; Generate a very simple netcdf file.
> ;-
> pro create_hand_sample, file
> compile_opt idl2, logical_predicate
>
> sample_var = dindgen( 4, 3 )
> ncid = ncdf_create( file, /CLOBBER )
> dimidx = ncdf_dimdef( ncid, 'x', 4 )
> dimidy = ncdf_dimdef( ncid, 'y', 3 )
> varid = ncdf_vardef( ncid, 'variable', /double )
> ncdf_control, ncid, /ENDEF
> ncdf_varput, ncid, varid, sample_var
> ncdf_close, ncid
>
> end
>
>
> ;+
> ; This is just a sample looping program that shows a problem
> ; Opening and Closing a single netcdf file many times.
> ;-
> pro crash_ncdf
> compile_opt idl2, logical_predicate
>
> catch, theError
> if theError ne 0 then begin
> Catch, /cancel
> print, "i = ", i
> print, "ncdf_fid = ", ncdf_fid
> message, !ERROR_STATE.msg
> endif
>
>
> file = './sample.nc'
> create_hand_sample, file
>
> long_iteration = 1900000L
>
> for i = 0l, long_iteration do begin
> ncdf_fid = ncdf_open( file, write = 0 )
> ncdf_close, ncdf_fid
> endfor
>
> print, 'Successfully completed first iterations'
> window, /free
> wdelete
>
> for i = 0l, long_iteration do begin
> ncdf_fid = ncdf_open( file, write = 0 )
> ncdf_close, ncdf_fid
> endfor
>
> print, 'Successfully completed second iterations'
>
> end
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: More cgplot, ps_start, ps_end problems
Next Topic: save axis

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

Current Time: Sat Oct 11 02:08:12 PDT 2025

Total time taken to generate the page: 1.19435 seconds