twisted / twisted/twisted

It should be possible to cancel the deferred returned from a PB callRemote and have the cancellation propagate to the remote and

Open
#6,753 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement new pb priority-normal
Dominant language
Python
Stars
6k
Forks
1.2k
Avg merge
2d 10h
Merged PRs (30d)
10

Description

philmayers's avatar @philmayers reported
Trac ID trac#6753
Type enhancement
Created 2013-09-18 13:05:59Z

At the moment, callRemote dispatches to broker._sendMessage, which generates its own deferred with no canceller.

We should have a canceller which sends a message to the remote end, and a corresponding message handler that cancels the remote deferred, allowing for long-running callRemote's to be stopped.

Searchable metadata
trac-id__6753 6753
type__enhancement enhancement
reporter__philmayers philmayers
priority__normal normal
milestone__ 
branch__ 
branch_author__ 
status__new new
resolution__None None
component__pb pb
keywords__cancel cancel
time__1379509559000000 1379509559000000
changetime__1379509561000000 1379509561000000
version__None None
owner__ 
cc__warner

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at broker._sendMessage and trace how callRemote creates its Deferred and how the remote message is handled. Define the cancellation message flow so the local canceller reaches the remote end and cancels the corresponding deferred; done means long-running callRemote operations can be stopped remotely.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.