Bug 1031927 - Stop DocBuilder from queuing too many requests to server
Stop DocBuilder from queuing too many requests to server
Status: ON_QA
Product: PressGang CCMS
Classification: Community
Component: DocBook-builder (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: pressgang-ccms-dev
Depends On:
  Show dependency treegraph
Reported: 2013-11-19 02:07 EST by Matthew Casperson
Modified: 2014-08-04 18:28 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Matthew Casperson 2013-11-19 02:07:19 EST
Docbuilder has expanded its reporting capabilities, but this has lead to it filling the browser HTTP request queue to the PressGang server.

This means that the web UI in another tab won't be able to send requests to the PG server.

The REST calls need to be streamlined and done in a more synchronous way to prevent this queuing.
Comment 1 Matthew Casperson 2013-11-19 02:08:13 EST
DocBuilder Next now makes a number of serial requests to the REST server. This is slower, but also means that the web ui is free to make whatever calls it needs to make.
Comment 2 Matthew Casperson 2013-11-19 02:17:08 EST
I'll need to get the topic details in batches, and single requests take far too long in complicated specs.
Comment 3 Matthew Casperson 2013-12-08 15:31:30 EST
DocBuilder now does three passes for information:

1. Get the specific topic revisions referenced by the spec. This is for spellchecking. Each request is done one at a time because the API doesn't allow us to return specific revisions in a bulk call.
2. Get the duplicate topics for each topic in the spec. Again, this is done one call at a time.
3. Get the info on the latest revision of the topics. This is used to populate the popovers. This is done in batches.

At any time only one REST call is in the queue though. This means that other tabs are free to call the REST server when they need to, and not when a queue of requests made by DocBuilder have finished.

Note You need to log in before you can comment on or make changes to this bug.