Geneva Patch 6 Hot Fix 2

Geneva Patch 6 Hot Fix 2 provides fixes for the Geneva release.

For Geneva Patch 6 Hot Fix 2:
Build date: 05-23-2016_1554
Build tag: glide-geneva-08-25-2015__patch6-hotfix2-05-18-2016

For more information about how to upgrade an instance, see Upgrade to Geneva.

For more information about the release cycle, see the ServiceNow Release Cycle. For a downloadable, sortable version of Geneva fixed problems, see KB0598265.

Note: This version is approved for FedRAMP.

Fixed problems in Geneva Patch 6 Hot Fix 2

Problem Short description Description Steps to reproduce
Persistence

PRB674257

KB0594678

Changes on Dictionary Field Type of glommed field on one of the extending tables is changing the database field type instead of changing the sys_storage_alias If the user alters an existing column by changing the field type or the field length, data loss can occur if the field has duplicate storage aliases. On an affected version, the logic that safeguards against data loss fails to account for data in fields that are aliases of the field being modified. The following workflow illustrates the issue:
  1. The user accesses a field on a table that is configured as an extension of another table (Table per Hierarchy).
  2. The user then alters the field by changing either its Type or its Length.
  3. The execution logic tests for data loss in that table only (not the entire hierarchy for the field).
Because the test does not detect any data in other tables that are also extensions of that same base table, the workflow continues to execute, causing data loss for that field in the other tables.
Refer to the listed Known Error KB article for details.

Transaction and Session Management

PRB646966

KB0594709

MID Server stops communicating to the instance and continuously produces the socket timeout error: Accepted with code: 202

Recycled requests cause session leak issues. This results in either of these behaviors:

  • MID Server stops communicating with the instance and continuously produces the socket timeout error: Accepted with code: 202, until the user upgrades to a fixed version.
  • Stuck sessions in the transaction queue. In this case, users receive 429 "Rejecting request" errors due to the session leaks.

This is caused by the platform holding a session sync on a transaction that has been cancelled.

Refer to the listed Known Error KB article for details.

Platform Performance

PRB670075

KB0594813

ServletTransaction does not account for recycled requests and leaves sessions in session sync The RESTAPIProcessor throws an exception that causes the transaction to be cancelled, but not release the session sync on the session. This results in sessions "leaking" in the queue and can eventually, in a worst case scenario, consume the whole transaction queue. The affected end user(s) experiences HTTP 429 "Rejecting request" errors. Refer to the listed Known Error KB article for details.
Service Catalog

PRB668555

KB0584845

SCStaleCache Listener.java causes sys_cache_flush table to bloat, stalling upgrades SCStaleCacheListener listens to inserts/udpates/deletes on the following tables:
  • sys_user
  • sys_user_role
  • sys_user_has_role
SCStaleCacheListener affects user_items_cache and user_categories_cache for every domain in the system, causing sys_cache_flush to have millions of records and stall upgrades.
Note: This issue highly impacts customers with a large number of domains. For example, a customer with 50,000 domains will have millions of rows. Customers with few or no domains will not be severely impacted by this issue.
Refer to the listed Known Error KB article for details.

Fixes included with Geneva Patch 6 Hot Fix 2

* Unless any exceptions are noted, you can safely upgrade to this release version from any of the versions listed below. These prior versions contain PRB fixes that are also included with this release. Be sure to upgrade to the latest listed patch that includes all of the PRB fixes you are interested in.