Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: use ExecutionGuard to ensure notifiers released when futures got cancelled #1200

Merged
merged 5 commits into from
Sep 11, 2023

Conversation

tanruixiang
Copy link
Member

@tanruixiang tanruixiang commented Sep 7, 2023

Rationale

Add ExecutionGuard to ensure notifiers go released when future got cancelled during get_bytes, otherwise all ranges belonging to this notifiers will never receive response.

Detailed Changes

  1. Add a fast path when no need_fetch_block is found
  2. Use ExecutionGuard to ensure notifier released.

Test Plan

Old UT.

@tanruixiang tanruixiang force-pushed the fix_disk_cache_cancel branch from 82d1581 to 758f4e6 Compare September 7, 2023 09:08
@jiacai2050 jiacai2050 force-pushed the fix_disk_cache_cancel branch 2 times, most recently from 837796c to 76b533e Compare September 11, 2023 11:52
@jiacai2050 jiacai2050 changed the title fix: use ExecutionGuard in disk_cache fix: use ExecutionGuard to ensure notifiers released when futures got cancelled Sep 11, 2023
@jiacai2050 jiacai2050 force-pushed the fix_disk_cache_cancel branch from 76b533e to 787ed29 Compare September 11, 2023 12:09
@jiacai2050 jiacai2050 force-pushed the fix_disk_cache_cancel branch from 787ed29 to be2d5ba Compare September 11, 2023 12:10
@jiacai2050 jiacai2050 merged commit d762e36 into apache:main Sep 11, 2023
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.

2 participants