Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#3996 closed enhancement (fixed)

Defer RPC/IMD loading for GeoTiff

Reported by: kellison Owned by: Even Rouault
Priority: normal Milestone: 1.9.0
Component: GDAL_Raster Version: 1.8.0
Severity: normal Keywords: RPC IMD Network Metadata
Cc:

Description

Need better performance opening GeoTiff files when there are thousands of files on a network share. In a previous version of GDAL (1.6.0), setting GDAL_DISABLE_READDIR_ON_OPEN resulted in very good performance for this scenario. In 1.8.0 setting this variable made matters worse. It was determined that searching for the various metadata files on Open was causing the slow-down. Even Rouault provided a patch that deferred loading of RPC and IMD until necessary (that is to say when GetMetadata() or GetMetadataItem() is called with "RPC" or "IMD" metadata domain, or when GetFileList() is called. I tested this patch in 1.8.0 and got satisfactory results. Please add this patch to the 1.8.0 tree and future versions of GDAL. I will try to attach the patch. Thanks.

Attachments (1)

differ_reading_rpc_and_imd.patch (6.4 KB ) - added by kellison 13 years ago.
geotiff.cpp patch that fixed the problem.

Download all attachments as: .zip

Change History (5)

by kellison, 13 years ago

geotiff.cpp patch that fixed the problem.

comment:1 by kellison, 13 years ago

Keywords: Metadata added

comment:2 by Even Rouault, 13 years ago

Milestone: 1.8.11.9.0
Owner: changed from warmerdam to Even Rouault
Priority: highnormal

comment:3 by Even Rouault, 13 years ago

Resolution: fixed
Status: newclosed

r21963 /trunk/ (autotest/gcore/tiff_write.py gdal/frmts/gtiff/geotiff.cpp): GTiff: defer loading of RPC/RPB/IMD files (#3996)

I'm not sure this is really material for the 1.8.x series. More an improvement than anything else : RPC and IMD files were loaded at opening time in 1.6.

in reply to:  3 comment:4 by kellison, 13 years ago

Thanks Even for putting this in. Not sure what to say about the file loading on previous versions since I was working with binaries only at that time. But, it's fast again with this change. Thanks again. Kyle Replying to rouault:

r21963 /trunk/ (autotest/gcore/tiff_write.py gdal/frmts/gtiff/geotiff.cpp): GTiff: defer loading of RPC/RPB/IMD files (#3996)

I'm not sure this is really material for the 1.8.x series. More an improvement than anything else : RPC and IMD files were loaded at opening time in 1.6.

Note: See TracTickets for help on using tickets.