Skip to content

Commit 23fbc55

Browse files
committed
Revert to original MergingShardBuilder (if/else not needed with faster buffer)
1 parent 1a9158a commit 23fbc55

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

src/zarr/codecs/sharding.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ def create_empty(
202202
buffer_prototype = default_buffer_prototype()
203203
index = _ShardIndex.create_empty(chunks_per_shard)
204204
obj = cls()
205-
obj.buf = buffer_prototype.buffer.create_zero_length()
205+
obj.buf = buffer_prototype.buffer.Delayed.create_zero_length()
206206
obj.index = index
207207
return obj
208208

@@ -585,16 +585,15 @@ async def _encode_partial_single(
585585
chunks_per_shard = self._get_chunks_per_shard(shard_spec)
586586
chunk_spec = self._get_chunk_spec(shard_spec)
587587

588-
shard_read = await self._load_full_shard_maybe(
589-
byte_getter=byte_setter,
590-
prototype=chunk_spec.prototype,
591-
chunks_per_shard=chunks_per_shard,
588+
shard_dict = _MergingShardBuilder(
589+
await self._load_full_shard_maybe(
590+
byte_getter=byte_setter,
591+
prototype=chunk_spec.prototype,
592+
chunks_per_shard=chunks_per_shard,
593+
)
594+
or _ShardReader.create_empty(chunks_per_shard),
595+
_ShardBuilder.create_empty(chunks_per_shard),
592596
)
593-
shard_build = _ShardBuilder.create_empty(chunks_per_shard)
594-
if shard_read:
595-
shard_dict = _MergingShardBuilder(shard_read, shard_build)
596-
else:
597-
shard_dict = shard_build
598597

599598
indexer = list(
600599
get_indexer(

0 commit comments

Comments
 (0)