Uploaded image for project: 'Apache RocketMQ'
  1. Apache RocketMQ
  2. ROCKETMQ-301

Async callback timeout

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Feedback Received
    • Affects Version/s: 4.0.0-incubating, 4.1.0-incubating
    • Fix Version/s: 4.2.0
    • Component/s: rocketmq-remoting
    • Labels:
      None
    • Flags:
      Important

      Description

      Motivation:
      I found that ResponseFuture used some tips to keep future callback from being called multiple and keep semaphoreAsync from being released multiple, I think it was not elegant, and scanResponseTable would scan the on-going request list, it was too heavy.

      Modification:

      • ScheduleExecutor replaces Timer, to issue per callback timeout. when timeout, check future is done? if not , clear responseTable item and invoke callback, if done, just clear responseTable item.
      • ResponseFuture add isDone method, to check if future is done.

        Attachments

          Activity

            People

            • Assignee:
              vongosling Von Gosling
              Reporter:
              fucongchan fucongwang
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: