Should H5Pset_obj_track_times() survive file re-open?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Should H5Pset_obj_track_times() survive file re-open?

Alex Cobb
Hi All,

I am using H5Pset_obj_track_times to turn off setting ctime in output
files.  This is great, it makes it easy to detect changes in output
using a simple file hash!

I noticed that H5Pget_obj_track_times() gives me the expected value in
a newly created dataset (false if set to false by
H5Pset_obj_track_times(), true if unset or set to true by
H5Pset_obj_track_times()).  However, the flag does not seem to be
recoverable after file close / re-open.  If I close the file, re-open,
get the dataset creation property list with H5Dget_create_plist(),
then call H5Pget_obj_track_times() again, it always gives me "true".
Is this expected?

IIUC, this does not matter much in HDF as currently implemented
because only ctime is ever set, so it doesn't matter if the dataset
remembers that it is not supposed to track times (because the only
time fields are modified is at creation anyway).  Am I thinking about
this right?

Happy to provide a MWE if helpful.

Thanks!

Alex

_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
Reply | Threaded
Open this post in threaded view
|

Re: Should H5Pset_obj_track_times() survive file re-open?

Quincey Koziol-3
Hi Alex,
This seems like a bug.  Please let the helpdesk ([hidden email]) know about it.

Quincey

On Aug 22, 2017, at 9:04 PM, Alex Cobb <[hidden email]> wrote:

Hi All,

I am using H5Pset_obj_track_times to turn off setting ctime in output
files.  This is great, it makes it easy to detect changes in output
using a simple file hash!

I noticed that H5Pget_obj_track_times() gives me the expected value in
a newly created dataset (false if set to false by
H5Pset_obj_track_times(), true if unset or set to true by
H5Pset_obj_track_times()).  However, the flag does not seem to be
recoverable after file close / re-open.  If I close the file, re-open,
get the dataset creation property list with H5Dget_create_plist(),
then call H5Pget_obj_track_times() again, it always gives me "true".
Is this expected?

IIUC, this does not matter much in HDF as currently implemented
because only ctime is ever set, so it doesn't matter if the dataset
remembers that it is not supposed to track times (because the only
time fields are modified is at creation anyway).  Am I thinking about
this right?

Happy to provide a MWE if helpful.

Thanks!

Alex

_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
Reply | Threaded
Open this post in threaded view
|

Re: Should H5Pset_obj_track_times() survive file re-open?

Alex Cobb
Thanks Quincey, will do.

Alex

On 23 Aug 2017 11:07 pm, "Quincey Koziol" <[hidden email]> wrote:
Hi Alex,
This seems like a bug.  Please let the helpdesk ([hidden email]) know about it.

Quincey

On Aug 22, 2017, at 9:04 PM, Alex Cobb <[hidden email]> wrote:

Hi All,

I am using H5Pset_obj_track_times to turn off setting ctime in output
files.  This is great, it makes it easy to detect changes in output
using a simple file hash!

I noticed that H5Pget_obj_track_times() gives me the expected value in
a newly created dataset (false if set to false by
H5Pset_obj_track_times(), true if unset or set to true by
H5Pset_obj_track_times()).  However, the flag does not seem to be
recoverable after file close / re-open.  If I close the file, re-open,
get the dataset creation property list with H5Dget_create_plist(),
then call H5Pget_obj_track_times() again, it always gives me "true".
Is this expected?

IIUC, this does not matter much in HDF as currently implemented
because only ctime is ever set, so it doesn't matter if the dataset
remembers that it is not supposed to track times (because the only
time fields are modified is at creation anyway).  Am I thinking about
this right?

Happy to provide a MWE if helpful.

Thanks!

Alex

_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
Reply | Threaded
Open this post in threaded view
|

Re: Should H5Pset_obj_track_times() survive file re-open?

bljones
In reply to this post by Quincey Koziol-3

Thank you, Quincey and Alex!  I entered bug HDFFV-10281 for this issue.

An example program to reproduce this with would be very helpful!

 

-Barbara

[hidden email]

 

 

From: Hdf-forum [mailto:[hidden email]] On Behalf Of Quincey Koziol
Sent: Wednesday, August 23, 2017 10:06 AM
To: HDF Users Discussion List
Subject: Re: [Hdf-forum] Should H5Pset_obj_track_times() survive file re-open?

 

Hi Alex,

            This seems like a bug.  Please let the helpdesk ([hidden email]) know about it.

 

                        Quincey

 

On Aug 22, 2017, at 9:04 PM, Alex Cobb <[hidden email]> wrote:

 

Hi All,

I am using H5Pset_obj_track_times to turn off setting ctime in output
files.  This is great, it makes it easy to detect changes in output
using a simple file hash!

I noticed that H5Pget_obj_track_times() gives me the expected value in
a newly created dataset (false if set to false by
H5Pset_obj_track_times(), true if unset or set to true by
H5Pset_obj_track_times()).  However, the flag does not seem to be
recoverable after file close / re-open.  If I close the file, re-open,
get the dataset creation property list with H5Dget_create_plist(),
then call H5Pget_obj_track_times() again, it always gives me "true".
Is this expected?

IIUC, this does not matter much in HDF as currently implemented
because only ctime is ever set, so it doesn't matter if the dataset
remembers that it is not supposed to track times (because the only
time fields are modified is at creation anyway).  Am I thinking about
this right?

Happy to provide a MWE if helpful.

Thanks!

Alex

_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

 


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5
Reply | Threaded
Open this post in threaded view
|

Re: Should H5Pset_obj_track_times() survive file re-open?

Alex Cobb
Thank you, Barbara! I will follow up to the help desk with a minimal working example.

Alex


On 23 Aug 2017 11:43 pm, "Barbara Jones" <[hidden email]> wrote:

Thank you, Quincey and Alex!  I entered bug HDFFV-10281 for this issue.

An example program to reproduce this with would be very helpful!

 

-Barbara

[hidden email]

 

 

From: Hdf-forum [mailto:[hidden email]] On Behalf Of Quincey Koziol
Sent: Wednesday, August 23, 2017 10:06 AM
To: HDF Users Discussion List
Subject: Re: [Hdf-forum] Should H5Pset_obj_track_times() survive file re-open?

 

Hi Alex,

            This seems like a bug.  Please let the helpdesk ([hidden email]) know about it.

 

                        Quincey

 

On Aug 22, 2017, at 9:04 PM, Alex Cobb <[hidden email]> wrote:

 

Hi All,

I am using H5Pset_obj_track_times to turn off setting ctime in output
files.  This is great, it makes it easy to detect changes in output
using a simple file hash!

I noticed that H5Pget_obj_track_times() gives me the expected value in
a newly created dataset (false if set to false by
H5Pset_obj_track_times(), true if unset or set to true by
H5Pset_obj_track_times()).  However, the flag does not seem to be
recoverable after file close / re-open.  If I close the file, re-open,
get the dataset creation property list with H5Dget_create_plist(),
then call H5Pget_obj_track_times() again, it always gives me "true".
Is this expected?

IIUC, this does not matter much in HDF as currently implemented
because only ctime is ever set, so it doesn't matter if the dataset
remembers that it is not supposed to track times (because the only
time fields are modified is at creation anyway).  Am I thinking about
this right?

Happy to provide a MWE if helpful.

Thanks!

Alex

_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

 


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5


_______________________________________________
Hdf-forum is for HDF software users discussion.
[hidden email]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5