Skip to content
This repository was archived by the owner on Mar 31, 2026. It is now read-only.

Commit 4a609a4

Browse files
authored
fix: close write object stream always (#1661)
fix: close write object stream always. otherwise Task will remain for long time until GC kills it and it'll throw this `"Task was destroyed but it is pending!"`
1 parent de2c8e9 commit 4a609a4

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

‎google/cloud/storage/_experimental/asyncio/async_appendable_object_writer.py‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,8 @@ async def close(self, finalize_on_close=False) -> Union[int, _storage_v2.Object]
267267
awaitself.finalize()
268268
else:
269269
awaitself.flush()
270-
awaitself.write_obj_stream.close()
270+
271+
awaitself.write_obj_stream.close()
271272

272273
self._is_stream_open=False
273274
self.offset=None

‎tests/unit/asyncio/test_async_appendable_object_writer.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ async def test_finalize_on_close(mock_write_object_stream, mock_client):
313313
result=awaitwriter.close(finalize_on_close=True)
314314

315315
# Assert
316-
mock_stream.close.assert_not_awaited() # Based on new implementation
316+
mock_stream.close.assert_awaited_once()
317317
assertnotwriter._is_stream_open
318318
assertwriter.offsetisNone
319319
assertwriter.object_resource==mock_resource

0 commit comments

Comments
 (0)