Mozilla/Firefox no longer supports multipart mixed/replace messages
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evergreen |
Fix Released
|
High
|
Unassigned | ||
2.5 |
Fix Released
|
High
|
Unassigned | ||
OpenSRF |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Multipart mixed/replace XHR messages is the underlying technology which allows the OpenSRF translator to send streams of responses to (certain) web clients. Streaming allows clients to provide incremental updates to users and allows for long-running processes which would timeout in a non-streaming environment.
As of Firefox version 22, Mozilla has removed support for multipart mixed/replace messages:
https:/
https:/
NOTE: the problems listed here will not affect Evergreen until we adopt to a new version of XULRrunner.
This means that interfaces which rely on streaming for incremental updates and long-running processes will no longer function. The main interfaces that come to mind are Vandelay (very long-running actions), Acquisitions, Serials (I think), Link Checker (I think), most of the conify interfaces, etc. In short, most of the web-based UIs and a few native XUL UIs and anything that uses the translator, which is used a lot.
In most of these cases, we can simply disable streaming and the interfaces will continue to work. Clients will receive one chunk of responses instead of a stream of response. It will be slower, but it should continue to function.
There is another class of interface which relies on streaming for long-running processes, which will not work when streaming is disabled. The main examples are Vandelay and (I think) the Link Checker, and bucket/batch Z39 lookup. There are probably more.
We either need to move to a technology which does support streaming (Mozilla suggests WebSockets and Server-Sent Events) or we need to redesign these interfaces and API calls so that they do not require streaming to the client.
Also, for those of us that use web-accessible UIs from a browser, they will no longer work from Firefox. I'll post a patch shortly which disables streaming for Firefox (but not XULRunner) so that most of the UIs will continue to work. Long-running processes like Vandelay, etc. are now officially unusable from Firefox, though. We may be able to use Chromium as a temporary crutch for browser access, but we should of course devise a long-term plan of action as soon as possible to address the overall problem.
Changed in opensrf: | |
milestone: | 2.2.0 → 2.2.1 |
Changed in opensrf: | |
status: | Fix Committed → Fix Released |
Changed in evergreen: | |
milestone: | none → 2.5.1 |
status: | New → Triaged |
importance: | Undecided → High |
Changed in evergreen: | |
milestone: | 2.5.1 → 2.5.2 |
Changed in evergreen: | |
milestone: | 2.5.2 → 2.6.0-alpha1 |
Changed in evergreen: | |
milestone: | 2.6.0-alpha1 → 2.6.0-beta1 |
assignee: | nobody → Dan Wells (dbw2) |
Changed in evergreen: | |
milestone: | 2.6.0-beta1 → 2.6.0-rc1 |
Changed in evergreen: | |
assignee: | Dan Wells (dbw2) → nobody |
Changed in evergreen: | |
status: | Fix Committed → Fix Released |
I pushed an opensrf commit to disable multipart messages for Firefox to
opensrf/working => user/berick/ lp1198983- disable- multipart- firefox