Skip to content

Conversation

@alexyao2015
Copy link
Contributor

Summary

The loop in the read_resource method will lock self.extensions and the same loop within the read_resource_from_extension method also locks the same variable causing a deadlock when the is ran. This patch fixes this by first collecting the names before calling into
read_resource_from_extension.

Type of Change

  • Feature
  • Bug fix
  • Refactor / Code quality
  • Performance improvement
  • Documentation
  • Tests
  • Security fix
  • Build / Release
  • Other (specify below)

Testing

This was manually tested and observed that the deadlock no longer occurs

The loop in the read_resource method will lock self.extensions and the
same loop within the read_resource_from_extension method also locks the
same variable causing a deadlock when the is ran. This patch fixes this
by first collecting the names before calling into
read_resource_from_extension.

Signed-off-by: alexyao2015 <[email protected]>
@alexyao2015 alexyao2015 force-pushed the fix/resource-deadlock branch from 17f5ff3 to 1af56dd Compare October 8, 2025 14:36
Copy link
Collaborator

@DOsinga DOsinga left a comment

Choose a reason for hiding this comment

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

thanks - this should help as we move to multi agent goosed

@jamadeo jamadeo merged commit 2b32cad into block:main Oct 20, 2025
10 checks passed
michaelneale added a commit that referenced this pull request Oct 21, 2025
* main:
  Fix extension manager resource deadlock (#5066)
  add new prompt for memory extension (#4945)
  feat: Stable system prompt and tool ordering for more cache hits (#5192)
  Remove gtag analytics error (#5268)
  Feat/smart task organizer recipe (#5032)
  docs: `goose recipe open` command (#5264)
  docs: provide more clarity in tagging step of releases (#5269)
  docs: add GOOSE_DEBUG environment variable (#5265)
michaelneale added a commit that referenced this pull request Oct 21, 2025
* main: (40 commits)
  Fix extension manager resource deadlock (#5066)
  add new prompt for memory extension (#4945)
  feat: Stable system prompt and tool ordering for more cache hits (#5192)
  Remove gtag analytics error (#5268)
  Feat/smart task organizer recipe (#5032)
  docs: `goose recipe open` command (#5264)
  docs: provide more clarity in tagging step of releases (#5269)
  docs: add GOOSE_DEBUG environment variable (#5265)
  Lifei/UI parameter input (#5222)
  turn off WAL (#5203)
  Skip subagents for gemini (#5257)
  Revert "Standardize Session Name Attribute" (#5250)
  improve provider request logging a bit (#5236)
  Fix OpenAI empty choices panic (#5248)
  Revert "Rewrite extension management tools" (#5243)
  Standardize Session Name Attribute (#5085)
  Docs: Include step-by-step model configuration instructions for first… (#5239)
  Delete message visibility filter (#5216)
  delete flaky pricing integration tests (#5207)
  chore: upgrade most npm packages to latest (#5185)
  ...
michaelneale added a commit that referenced this pull request Oct 21, 2025
* main:
  live testing script (#5263)
  Fix extension manager resource deadlock (#5066)
  add new prompt for memory extension (#4945)
  feat: Stable system prompt and tool ordering for more cache hits (#5192)
  Remove gtag analytics error (#5268)
  Feat/smart task organizer recipe (#5032)
  docs: `goose recipe open` command (#5264)
  docs: provide more clarity in tagging step of releases (#5269)
  docs: add GOOSE_DEBUG environment variable (#5265)
katzdave added a commit that referenced this pull request Oct 21, 2025
* 'main' of github.com:block/goose:
  fix: include Windows GNU CLI artifact in releases (#5276)
  Fix bedrock tool call error response (#5067)
  fix: do not load active extensions when no extensions in the recipe (#5282)
  Fix pagination - fetch all open issues, not just first 100
  Fix label case sensitivity - use lowercase labels
  Add GitHub Health Dashboard workflow (#5286)
  live testing script (#5263)
  escaping markdown
  fixing syntax
  Add GitHub Health Dashboard workflow
  Fix extension manager resource deadlock (#5066)
  add new prompt for memory extension (#4945)
  feat: Stable system prompt and tool ordering for more cache hits (#5192)
  Remove gtag analytics error (#5268)
BlairAllan pushed a commit to BlairAllan/goose that referenced this pull request Oct 25, 2025
BlairAllan pushed a commit to BlairAllan/goose that referenced this pull request Nov 29, 2025
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.

3 participants