Fiber loop errors are normally associated with:
- Poor performing applications
- Large exports or send to Excel
- Exiting from applications while calculations still in progress (calcs finish)
Stalls can be associated with deadlock due to:
- Shared file lock causing a central lock for the document.
- If Session recovery is being used, the bookmark apply on Open Document and bookmark update on session close can potentially be slow if bookmarks are large, and require shared file lock exlusively. Only 1 user can open or close the document session at a time which is also in high contention with a request to read from shared file.
- Hardware issues (storage, RAM)
Per Qlik's internal investigation, QV-13805, a Fiber loop is a signal that a session has stopped being responsive. A Fiber Loop error will not cause problem on and of itself. The "stalls" are a single operation that for some reason take a long time, can end up registering as a stalled session. The fiber loop stalls may cause/manifest themselves as errors, e.g. operation timeouts and objects not finishing, hanging clients; closing sessions while heavy and unresponsive calculations are still ongoing and those calculations fail to cancel. Sometimes fiber loop stalls are detected only when closing the session, and then aren't an observable error - unless the session was closed due to it being perceived as hung.
The stalls are basically never directly connected to a crash as such, it's a mere observation. There could be connections, e.g. if the access to a server document entry (the bookkeeping entry for a document open by 0--N number of users on the server) is blocked, then that locked-up entry could catch a session trying to attach or detach to that entry, and that session would register as stalled. An inaccessible server document entry can ultimately lead to the server restarting, and in that sense the restart and the stall are symptoms of the same problem.
The AJAX frontend may get fiber loop stalls even in quite benevolent cases, as many parts of its operation are completely synchronous, meaning that a single operation that for some reason takes a long time, can end up registering as a stalled session. Loop stalls with "static nesting level 0" indicates that it's the Ajax frontend.
12.20 SR3 include some improvements for handling Export to Excel and some other like scenarios which can promote shared file lock which can lead to a central lock on the document. (QV-12779). It was not mentioned in the release notes because there were no customer cases associated. The issues were discovered internally.
See Error: StdServer: Fiber Loop stall detected
for more information.