Skip to content

Conflict resolution for #2206#2238

Merged
WardF merged 5 commits intoUnidata:mainfrom
WardF:gh2206.wif
Mar 1, 2022
Merged

Conflict resolution for #2206#2238
WardF merged 5 commits intoUnidata:mainfrom
WardF:gh2206.wif

Conversation

@WardF
Copy link
Copy Markdown
Member

@WardF WardF commented Mar 1, 2022

This is #2206 with a couple of conflicts manually resolved.

DennisHeimbigner and others added 5 commits January 29, 2022 15:27
re: Unidata#2177
re: Unidata#2178

Provide get/set functions to store global data alignment
information and apply it when a file is created.

The api is as follows:
````
int nc_set_alignment(int threshold, int alignment);
int nc_get_alignment(int* thresholdp, int* alignmentp);
````

If defined, then for every file created opened after the call to
nc_set_alignment, for every new variable added to the file, the
most recently set threshold and alignment values will be applied
to that variable.

The nc_get_alignment function return the last values set by
nc_set_alignment.  If nc_set_alignment has not been called, then
it returns the value 0 for both threshold and alignment.

The alignment parameters are stored in the NCglobalstate object
(see below) for use as needed. Repeated calls to nc_set_alignment
will overwrite any existing values in NCglobalstate.

The alignment parameters are applied in libhdf5/hdf5create.c
and libhdf5/hdf5open.c

The set/get alignment functions are defined in libsrc4/nc4internal.c.

A test program was added as nc_test4/tst_alignment.c.

## Misc. Changes Unrelated to Alignment

* The NCRCglobalstate type was renamed to NCglobalstate to
  indicate that it represented more general global state than
  just .rc data.  It was also moved to nc4internal.h.  This led
  to a large number of small changes: mostly renaming. The
  global state management functions were moved to nc4internal.c.

* The global chunk cache variables have been moved into
  NCglobalstate.  As warranted, other global state will be moved
  as well.

* Some misc. problems with the nczarr performance tests were corrected.
@WardF WardF added this to the 4.8.2 milestone Mar 1, 2022
@WardF WardF self-assigned this Mar 1, 2022
@WardF WardF merged commit c30801f into Unidata:main Mar 1, 2022
@WardF WardF deleted the gh2206.wif branch March 1, 2022 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants