Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-2955

Async marshalling executor retry when queue fills

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Obsolete
    • Major
    • 8.0.0.Final
    • 5.2.5.Final
    • Marshalling
    • None
    • Low

    Description

      When using an async transport and async marshalling, an executor is used to process the marshalling task in a separate thread and the caller's thread is allowed to return immediately.

      When the executor's queue fills and the queue cannot accept any more tasks, it throws a RejectedExecutionException, causing a very bad user/developer experience. A more correct approach to this is to catch the RejectedExecutionException, block and retry the task submission.

      The end result is that, in the degenerate case (when the executor queue is full) instead of throwing exceptions, those invocations will perform slightly slower.

      Attachments

        Activity

          People

            Unassigned Unassigned
            manik_jira Manik Surtani (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: