fix: close write object stream always by chandra-siri · Pull Request #1661 · googleapis/python-storage · GitHub
Skip to content
This repository was archived by the owner on Mar 31, 2026. It is now read-only.

fix: close write object stream always#1661

Merged
chandra-siri merged 1 commit into
mainfrom
close_stream
Dec 11, 2025
Merged

fix: close write object stream always#1661
chandra-siri merged 1 commit into
mainfrom
close_stream

Conversation

@chandra-siri

@chandra-siri chandra-siri commented Dec 10, 2025

Copy link
Copy Markdown
Collaborator

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!"

@chandra-siri chandra-siri requested review from a team December 10, 2025 17:59
@chandra-siri chandra-siri requested a review from a team as a code owner December 10, 2025 17:59
@product-auto-label product-auto-label Bot added size: xs Pull request size is extra small. api: storage Issues related to the googleapis/python-storage API. labels Dec 10, 2025
@gemini-code-assist

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request correctly fixes a bug where the write object stream was not closed when finalize_on_close=True. The change ensures the stream is closed in both finalize and flush scenarios on close(). I've added a suggestion to make the close method more robust by using a try...finally block to guarantee that stream closure and state cleanup happen even if finalize() or flush() raises an exception.

@chandra-siri chandra-siri merged commit 4a609a4 into main Dec 11, 2025
15 checks passed
@chandra-siri chandra-siri deleted the close_stream branch December 11, 2025 06:11
This was referenced Dec 11, 2025
vchudnov-g added a commit that referenced this pull request Jan 13, 2026
PR created by the Librarian CLI to initialize a release. Merging this PR
will auto trigger a release.

Librarian Version: v0.7.0
Language Image:
us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:8e2c32496077054105bd06c54a59d6a6694287bc053588e24debe6da6920ad91
<details><summary>google-cloud-storage: 3.8.0</summary>

##
[3.8.0](v3.7.0...v3.8.0)
(2026-01-13)

### Features

* expose persisted size in mrd (#1671)
([0e2961b](0e2961be))

* implement &#34;append_from_file&#34; (#1686)
([1333c95](1333c956))

* compute chunk wise checksum for bidi_writes (#1675)
([139390c](139390cb))

* flush the last chunk in append method (#1699)
([89bfe7a](89bfe7a5))

* add write resumption strategy (#1663)
([a57ea0e](a57ea0ec))

* add bidi stream retry manager. (#1632)
([d90f0ee](d90f0ee0))

* make flush size configurable (#1677)
([f7095fa](f7095faf))

### Bug Fixes

* no state lookup while opening bidi-write stream
([2d5a7b1](2d5a7b16))

* no state lookup while opening bidi-write stream (#1636)
([2d5a7b1](2d5a7b16))

* close write object stream always (#1661)
([4a609a4](4a609a4b))

* add system test for opening with read_handle (#1672)
([6dc711d](6dc711da))

</details>

---------

Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

api: storage Issues related to the googleapis/python-storage API. size: xs Pull request size is extra small.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants