E-portal deadlock login issue fixed + JSON response mode

This update (a884aed) brings with it the following changes:

New features

  • It is now possible to fetch most of the variable information available to templates by prefixing the URL path with json/. Be aware that errors will be reported in a JSON key named response, and you should always verify that the response code is valid before using the data returned.
  • Front page information is now available in JSON response mode.

Enhancements

  • Minmize the amount of user modifications made during e-portal syncronization. Should speed up e-portal single-sign-on quite a lot.
  • Speed up login, logout and e-portal single-sign-on by avoiding session refresh.
  • Speed up page views somewhat by not refreshing session information when fetching search providers.
  • All database statements now time out after 1m45sec. This should ensure you always see a human-understandable error message instead of the generic "application server is unavailable" message. It should also ensure that requests that take too much time stop executing when the user receives an error.
  • The encode_json() template function is now able to serialize instances of all the model classes, which should make it much easier for template authors to gain access to template variable information in JavaScript code.
  • Any file uploaded with the extension .json (or mime type explicitly set to application/json) is now returned with character set to UTF-8.

Bugfixes

  • They online request handler leaked session identifiers. This security issue has been fixed.
  • Lock user database table during e-portal single-sign-on to avoid concurrent updates to user table. Should avoid deadlocks.
  • Normal folders were supposed to be ordered by sort number first, then alphabetical by default, but the index number was ignored. This should now work as expected.
  • When using an embed() template function, the arguments passed did not show up as variables if the object contained references to it. This should now be fixed.
Spinner

Login