Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#5298 closed enhancement (fixed)

Improvements to the Rasdaman Driver

Reported by: fschindler Owned by: warmerdam
Priority: normal Milestone: 1.11.0
Component: GDAL_Raster Version: unspecified
Severity: normal Keywords: rasdaman driver
Cc: ilucena

Description

The improvements are:

  • caching of tiles for datasets with more than one band
  • reading is now done through the dataset IRasterIO method, to benefit from the caching mechanisms
  • connections are now kept for a whole session (as long as the dataset is kept open)
  • bugfixes:
    • fixing connection-string regex (server and database params had typos)
    • fixing possible memory leaks

Attachments (2)

gdal_svn_trunk_rasdaman_improvements.patch (25.6 KB) - added by fschindler 3 years ago.
gdal_svn_trunk_rasdaman_improvements_2.patch (25.6 KB) - added by fschindler 3 years ago.
Newer version. removed DEBUG makro and directly use CPLDebug

Download all attachments as: .zip

Change History (9)

Changed 3 years ago by fschindler

comment:1 Changed 3 years ago by Even Rouault

Cc: ilucena added

Ivan, I see you've committed the initial implementation of the Rasdaman driver, so perhaps you have interest in reviewing this patch ?

Fabian, did you have a chance to make the initial author of the Rasdaman driver, Constantin Jucovschi, to review your patch ? Did you check that the autotest/gdrivers/rasdaman.py still passes after your patch. If possible, it could be interesting to enhance it to test some of your additions.

I've no particular knowledge of the rasdaman driver, so cannot really review the patch deeply. I'm just wondering if "#define DEBUG(...) CPLDebug("rasdaman", VA_ARGS)" is portable, particularly on Microsoft compilers (if Rasdaman compiles on Windows of course!)

Changed 3 years ago by fschindler

Newer version. removed DEBUG makro and directly use CPLDebug

comment:2 Changed 3 years ago by fschindler

Even,

I did not try to contact Constantin Jucovschi, as I don't think that he is still affiliated with GDAL/Rasdaman.

The python tests in the autotest still work as expected, but are quite short. I see what I can do to improve those tests.

You are right, __VA_ARGS__ is gcc-specific. I uploaded a new patch which should remove any windows-incompatibilities by directly calling CPLDebug.

comment:3 Changed 3 years ago by ilucena

Howard, I committed the initial code when I was a GDAL maintainer years ago but I can't do that now. Sorry.

comment:4 Changed 3 years ago by Even Rouault

Ivan, the question actually came from me (Even) and not Howard ;-)

Fabian, I've applied the patch in trunk r26638 "Rasdaman: caching of tiles for datasets with more than one band; connections are now kept for a whole session; fixing connection-string regex; fixing possible memory leaks (patch by Fabian Schindler, #5298)"

I'm a bit shy in applying in 1.10 branch as well since it is not only bugfixing, although that Rasdaman must be (I think) rather a niche driver, so that could probably OK if you feel confident about the patch

comment:5 Changed 3 years ago by fschindler

Resolution: fixed
Status: newclosed

Even,

Thank you very much!

For me it is perfectly fine if the patch is just applied on the trunk. I'll add some additional testing later on.

comment:6 Changed 3 years ago by Even Rouault

Milestone: 1.10.22.0

comment:7 Changed 3 years ago by Even Rouault

Milestone: 2.01.11.0
Note: See TracTickets for help on using tickets.