Skip to content

Commit c0728dc

Browse files
committed
Merge branch 'ts-todo' into merge
2 parents 1f1a550 + 6056c8a commit c0728dc

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

docs/protocol/core/v3.0.rst

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1477,16 +1477,6 @@ Let "+" be the string concatenation operator.
14771477
perform ``erase_prefix("meta/root" + P + "/")`` and
14781478
``erase_prefix("data/root" + P + "/")``.
14791479

1480-
Note that store implementation may decide to reify implicit groups
1481-
and thus protocol implementation should attempt to erase the
1482-
group metadata file if they really wish to erase an empty
1483-
implicit group. @@TODO clarify this
1484-
1485-
Store implementation are also allowed to erase any implicit parent of an
1486-
erased implicit group, so a protocol implementation should make sure to
1487-
reify a parent group if they need to keep it. @@TODO clarify this
1488-
1489-
14901480
**Determine if a node exists**
14911481

14921482
To determine if a node exists at path ``P``, try in the following
@@ -1514,6 +1504,26 @@ There are no group extensions in Zarr v3.0.
15141504

15151505
See https://github.com/zarr-developers/zarr-specs/issues/49 for a list of potential extensions
15161506

1507+
Implementation Notes
1508+
====================
1509+
1510+
This section is non-normative and is present notes from implementers about case
1511+
that need to be carefully thought about, but do not strictly fall into the spec.
1512+
1513+
Explicit vs implicit group
1514+
--------------------------
1515+
1516+
While the zarr spec v3 defined implicit and explicit group, implementation may
1517+
decide to create an explicit group for all implicit group they encounter; in
1518+
particular when using a hierarchical storage.
1519+
1520+
Erasure of an implicit group may automatically erase any empty parent. For
1521+
example on a S3 store where the namespace is flat, erasure of the last key with
1522+
a prefix will erase all the implicit group in the prefix.
1523+
1524+
Care must thus be taken when erasing a array or a group if the parent needs to
1525+
be converted into an explicit group.
1526+
15171527

15181528
Comparison with Zarr v2
15191529
=======================

0 commit comments

Comments
 (0)