H5PL* and HDF5_PLUGIN_PATH

Hello!

I'm trying HDF5 1.10.1, and new H5PL* routines are of particular interest for me -- thanks for adding those!

H5PLappend/H5PLprepend seem to work fine. However, I'm puzzled by the following. In my Windows system I have
>set HDF5_PLUGIN_PATH
HDF5_PLUGIN_PATH=E:\ACD\utils\lcuvms
but both
H5PLsize and H5PLget(0, ...) return zero.
It is expected that the contents of HDF5_PLUGIN_PATH loaded during library initialization are exposed through H5PLsize/H5PLget. Is it (hopefully) a temporary bug?

Best wishes,
Andrey Paramonov

···

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

I added a check for initial paths in the plugin.c test and verfied that the table is initialized with the settings from the HDF5_PLUGIN_PATH env var.

Allen

···

On Wednesday, July 26, 2017 3:54:14 AM CDT Андрей Парамонов wrote:

Hello!

I'm trying HDF5 1.10.1, and new H5PL* routines are of particular
interest for me -- thanks for adding those!

H5PLappend/H5PLprepend seem to work fine. However, I'm puzzled by the
following. In my Windows system I have
>set HDF5_PLUGIN_PATH
HDF5_PLUGIN_PATH=E:\ACD\utils\lcuvms
but both
H5PLsize and H5PLget(0, ...) return zero.
It is expected that the contents of HDF5_PLUGIN_PATH loaded during
library initialization are exposed through H5PLsize/H5PLget. Is it
(hopefully) a temporary bug?

Best wishes,
Andrey Paramonov

Hi Allen!

27.07.2017 17:08, Allen Byrne пишет:

I added a check for initial paths in the plugin.c test and verfied that the table is initialized with the settings from the HDF5_PLUGIN_PATH env var.

Maybe the problem is in my OS (Windows 10)?
However I do not completely dismiss the possibility of my erroneous code. Is there a minimal test program I could run to check?

Best wishes,
Andrey Paramonov

···

On Wednesday, July 26, 2017 3:54:14 AM CDT Андрей Парамонов wrote:

Hello!

I'm trying HDF5 1.10.1, and new H5PL* routines are of particular
interest for me -- thanks for adding those!

H5PLappend/H5PLprepend seem to work fine. However, I'm puzzled by the
following. In my Windows system I have
  >set HDF5_PLUGIN_PATH
HDF5_PLUGIN_PATH=E:\ACD\utils\lcuvms
but both
H5PLsize and H5PLget(0, ...) return zero.
It is expected that the contents of HDF5_PLUGIN_PATH loaded during
library initialization are exposed through H5PLsize/H5PLget. Is it
(hopefully) a temporary bug?

Best wishes,
Andrey Paramonov

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

in the test/plugin.c file I added a check at the beginning of the test_filter_path_apis function:

...
test_filter_path_apis(void)
{
    herr_t ret_value = -1;
    unsigned int i;
    unsigned int ndx;
    herr_t ret;
    ssize_t pathlen = -1;
    char pathname[256];
    char tempname[256];

    HDputs("Testing access to the filter path table");

    if(H5Zfilter_avail(H5Z_FILTER_DYNLIB1) != TRUE) TEST_ERROR

···

-------------------------------------------------------
    TESTING(" initialize");
    H5PLsize(&ndx);
    if(ndx!=2) TEST_ERROR
    PASSED();
-------------------------------------------------------

    TESTING(" remove");
...

Allen
On Thursday, July 27, 2017 9:45:48 AM CDT Андрей Парамонов wrote:

Hi Allen!

27.07.2017 17:08, Allen Byrne пишет:
> I added a check for initial paths in the plugin.c test and verfied that the table is initialized with the settings from the HDF5_PLUGIN_PATH env var.

Maybe the problem is in my OS (Windows 10)?
However I do not completely dismiss the possibility of my erroneous
code. Is there a minimal test program I could run to check?

Best wishes,
Andrey Paramonov

> On Wednesday, July 26, 2017 3:54:14 AM CDT Андрей Парамонов wrote:
>> Hello!
>>
>> I'm trying HDF5 1.10.1, and new H5PL* routines are of particular
>> interest for me -- thanks for adding those!
>>
>> H5PLappend/H5PLprepend seem to work fine. However, I'm puzzled by the
>> following. In my Windows system I have
>> >set HDF5_PLUGIN_PATH
>> HDF5_PLUGIN_PATH=E:\ACD\utils\lcuvms
>> but both
>> H5PLsize and H5PLget(0, ...) return zero.
>> It is expected that the contents of HDF5_PLUGIN_PATH loaded during
>> library initialization are exposed through H5PLsize/H5PLget. Is it
>> (hopefully) a temporary bug?
>>
>> Best wishes,
>> Andrey Paramonov
>>
>>
>
>
>

Hi Allen!

27.07.2017 18:40, Allen Byrne пишет:

in the test/plugin.c file I added a check at the beginning of the test_filter_path_apis function:

It's strange! What values does the plugin path list has in your case?
My minimal program

#include "hdf5.h"
#include <stdio.h>
int main() {
   unsigned int n;
   H5open();
   H5PLsize(&n);
   printf("Total paths: %u\n", n);
   printf("Adding path...\n");
   H5PLappend("test");
   H5PLsize(&n);
   printf("Total paths: %u\n", n);
}

prints the following output:

$ HDF5_PLUGIN_PATH=/usr/local/hdf5plugins:plugins ./H5PLtest
Total paths: 0
Adding path...
Total paths: 1

(checked on Windows 10 and Ubuntu)

Am I using H5PL* routines incorrectly?

Best wishes,
Andrey Paramonov

···

test_filter_path_apis(void)
{
     herr_t ret_value = -1;
     unsigned int i;
     unsigned int ndx;
     herr_t ret;
     ssize_t pathlen = -1;
     char pathname[256];
     char tempname[256];

     HDputs("Testing access to the filter path table");

     if(H5Zfilter_avail(H5Z_FILTER_DYNLIB1) != TRUE) TEST_ERROR

-------------------------------------------------------
     TESTING(" initialize");
     H5PLsize(&ndx);
     if(ndx!=2) TEST_ERROR
     PASSED();
-------------------------------------------------------

     TESTING(" remove");
...

Allen
On Thursday, July 27, 2017 9:45:48 AM CDT Андрей Парамонов wrote:

Hi Allen!

27.07.2017 17:08, Allen Byrne пишет:

I added a check for initial paths in the plugin.c test and verfied that the table is initialized with the settings from the HDF5_PLUGIN_PATH env var.

Maybe the problem is in my OS (Windows 10)?
However I do not completely dismiss the possibility of my erroneous
code. Is there a minimal test program I could run to check?

Best wishes,
Andrey Paramonov

On Wednesday, July 26, 2017 3:54:14 AM CDT Андрей Парамонов wrote:

Hello!

I'm trying HDF5 1.10.1, and new H5PL* routines are of particular
interest for me -- thanks for adding those!

H5PLappend/H5PLprepend seem to work fine. However, I'm puzzled by the
following. In my Windows system I have
   >set HDF5_PLUGIN_PATH
HDF5_PLUGIN_PATH=E:\ACD\utils\lcuvms
but both
H5PLsize and H5PLget(0, ...) return zero.
It is expected that the contents of HDF5_PLUGIN_PATH loaded during
library initialization are exposed through H5PLsize/H5PLget. Is it
(hopefully) a temporary bug?

Best wishes,
Andrey Paramonov

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.