Thank you for your feedback.
Form temporarily unavailable. Please try again or contact to submit your comments.

Geneva Patch 3

Log in to subscribe to topics and get notified when content changes.

Geneva Patch 3

The Geneva Patch 3 release provides fixes for the Geneva release. This patch has been replaced by Geneva Patch 3 Hot Fix 2.

Important: The fixes for Geneva Patch 2 and Geneva Patch 3 have been combined into one patch. ServiceNow documentation will refer to this combined patch as Geneva Patch 3.

For the Geneva Patch 3 release:
Build date: 01-22-2016_1540
Build tag: glide-geneva-08-25-2015__patch3-01-13-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.

Security-related Fixes

Geneva Patch 3 includes fixes for security-related problems that affected certain applications and the ServiceNow platform. We recommend that customers upgrade to this patch for the most secure and up-to-date ServiceNow features. For more details on security problems fixed in Geneva Patch 3, refer to KB0563386.

Notable Fixes

The following problems and their fixes are ordered by potential impact to customers, starting with the most significant fixes.
Problem Affected Plugins Short description Description Steps to reproduce


Hierarchy editor defect may cause column data loss on upgrade to Geneva ServiceNow engineers have identified a defect that affects customers upgrading from earlier family releases to a Geneva release. The defect will cause data loss on certain CMDB tables and is considered a severe impact problem. Refer to the Known Error article (KB0563157) for details.
Upgrade Engine Issues


Upgrade can erroneously change extension model ServiceNow engineers have identified a defect affecting a limited number of customers with large task tables and either Demand Planning or Project Management installed. Once upgraded to Geneva, certain tables within Demand Planning and Project Management become unavailable. Refer to the Known Error article (KB0563413) for details.


After upgrading to Geneva, the cmdb_ci text index is broken because of reparenting to cmdb table ServiceNow engineers have identified an issue that causes the text search index for tables in the CMDB module to fail after upgrading to Geneva from a prior family release. Although the index is rebuilt over time, a fix was developed to ensure continuous access to the search index after upgrading. Refer to the Known Error article (KB0563378) for details.
User Interface (UI)


ImpersonateEvaluator script include causes undefined behavior The script include ImpersonateEvaluator was added to a recent Geneva build to support a HI requirement for impersonation of USG users. There is a bug where inbound email actions cause a random SNC employee's name to be posted to work notes/comments when the email is sent by a USG user. This happens when the Script Include would return false for the canImpersonate() function.
  1. Create an INT for a USG Company.
  2. Post a comment to the INT so that an email is sent to the USG Caller.
  3. Reply to the email, so the comment should be posted to the INT as the USG Caller.

Notice that the activity lists a SNC Employee instead of the USG Caller.

Platform Performance


The PDF font library does not close file handles which can lead to a node outage
User Interface (UI)


Table name and Table sys ID in sys_attachment are empty when attaching via TinyMCE editor Table name and Table sys ID in sys_attachment are empty when attaching via TinyMCE editor, for example from task record email client.
  1. In the System Navigator, navigate to Knowledge > Create New.
  2. Populate any required fields:
    • Knowledge base: Knowledge
    • Short description: KB test attachment
  3. In the Text field, select the Insert/edit image button.
  4. Select Attachment for the Type in the Insert/Modify Image pop-up.
  5. Choose an image and click Attach. Then, click OK.
    • The image is displayed in the TinyMCE editor and appears in the Manage Attachments section.
  6. Save changes to the kb_knowledge record.
    • The attachment is no longer displayed in the Manage Attachments section.
  7. Retrieve the corresponding sys_attachment record.
Note that the Table name and Table sys_id are not populated.
Knowledge Management


Knowledge Management V3 Users reporting that Knowledge is inaccessible during a specific period of time Users are unable to access knowledge articles either from knowledge search or from page from approximately 19:00 - 20:15 PDT. All other applications were accessible.

This issue occurs in Fuji and Geneva. This is related to DayLight Savings Time change.

Note: Testing in California office (PDT time).

  1. Install Fuji or Geneva with date time set to 03/08/2015 19:40:00 PDT.
  2. Go to the knowledge home page from the left navigation menu.
    • Note that everything works and there are no issues.
  3. Go to / page in another tab.
    • Note the following issues: no items are available under category. In addition, clicking each base still results in no items available.
  4. Search in the page.
    • Note that this works.
  5. Now, set the server time to 03/08/2015 20:40:00 PDT.
  6. Restart the instance.
  7. Repeat steps 2, 3, and 4.
    • Note that all steps work with no issues.
Service Catalog


[IE10][Firefox] Compact View enabled pushes text down for single-line text fields in Service Catalog When Compact View is enabled, text is pushed down for single-line text fields in the Service Catalog.
  1. Using Internet Explorer, navigate to an instance.
  2. Enable compact mode by clicking on the settings cog wheel and toggling the compact mode switch.
  3. Navigate to Service Catalog.
  4. Select any item that has a variable of type single line text (or) reference.
  5. Type some text like 'ggyyg' in the input field.

Notice that the text is cut in half, and the lower portion of letters like g and y is not visible.

System Applications


Wrong error message on app-author when version is not updated while publishing an app When the version is not updated while publishing an app, the wrong error message appears on app-author: "app-name could not be uploaded due to the following error: User name or password invalid"
  1. Create an app with a table.
    • The version is auto assigned to '1.0'.
  2. Publish the app to the store.
  3. Make some changes to the app by adding a new table.
  4. Now try publishing the app again.

Note that the publish fails. The user sees an error message, which says invalid username or password. Instead, the user should see an error message which indicates that the Version number needs to be updated before publish.

Platform Performance


Product help does not render successfully for non-CSH links in UI 15/16 When accessing the "Search Product Documentation" option from the Help button in UI 15/16, help links that do not have a context-sensitive target defined, result in a PHP search that returns unusable content. The search string that is created appears as a URL (see KB0562756 for an example URL).
  1. Log into a Geneva instance.
  2. Verify that the default properties are set for the help. These properties are defined as:
    • help.base.default:
    • help.base.servicenow:
  3. Test the following CSH links. These should work successfully, rendering on
    • Assessments > Assessment Records
    • Assessments > Metric Definition > Types
    • Assessments > Metric Definition > Categories
  4. Test the following non-CSH links. These result in the search query being performed and rendering garbage code:
    • Incident > All
    • Collaborate > Feed Administration > Messages
    • Asset > Portfolios > All Assets
UI Policy/Client Script


Data Policy Exception on multi-line text field that has preceding newline or carriage return Data Policy Exception on multi-line text field that has preceding newline or carriage return.
  1. Log into a Eureka or Fuji instance.
  2. Go to the incident form and add the description field.
  3. Create or update an incident record. Ensure that before typing anything into the description field, you hit enter in it a few times to create a few line returns. Then type any text.
  4. Create a data policy condition.
    • This can be anything, but ensure that the Data policy rule is for the description field and, Read only is true.
  5. Go back to the incident updated and make any change on the form.

Note the Data Policy Exception: Description is read only Invalid update.

Import / Export


Bringing in BINARY data using JDBC data sources causes DecoderException FOR NULL fields 'unable to decode base64 data' - Fuji Bringing in BINARY data using JDBC data sources causes DecoderException 'unable to decode base64 data'. This is caused by possible NULL values in BINARY fields from the source database, and this issue occurs in Fuji and later.
  1. Create a very simple table in MSSQL with at least one field of type BINARY.
  2. Enter some sample data into this table to create a few rows. You can leave the field "Image" blank on some of them.
  3. Create a very basic JDBC data source that interfaces with your MSSQL server via a MID server.
  4. Do a "Test Load 20 Records" and observe the failure resembling something below: ========================

    com.glide.db.impex.JDBCProbeLoader: org.bouncycastle.util.encoders.DecoderException: unable to decode base64 data: null: org.bouncycastle.util.encoders.Base64.decode(Unknown Source) com.glide.db.impex.JDBCProbeLoader.loadPayload( com.glide.db.impex.AbstractLoader.loadRecords( com.glide.db.impex.AbstractLoader.load( com.glide.db.impex.AbstractLoader.startWork( com.glide.worker.AbstractProgressWorker.startAndWait( com.glide.worker.HierarchicalProgressWorker.startAndWait( com.glide.worker.AbstractProgressWorker.start( com.glide.processors.ImportProcessorWorker.startWorker( com.glide.processors.ImportProcessorWorker.loadDataSource( com.glide.processors.ImportProcessorWorker.startWork( com.glide.worker.AbstractProgressWorker.startAndWait( com.glide.worker.HierarchicalProgressWorker.startAndWait(



Activity of type Workflow produces 2 child workflows preventing database updates and causing instance outages during reprovisioning This problem is focused on incidents caused by reprovisioning activity triggering workflow which produces 2 child workflows instead of one. This causes database or instance information to not be updated (i.e. 'passwords'), which prevents functionality such as email or even an instance outage.
Knowledge Management


Knowledge Articles' last modified and published dates are incorrect on KB home The new KB home in Fuji has an issue where an article's last modified and published dates are displayed incorrectly on the KB Homepage. (The Last modified date issue has been logged before [PRB625564, PRB633365] and is fixed in Geneva. However, the Published date still persists.)
  1. Log into a Fuji instance.
  2. Navigate to Knowledge > Administration > Properties.
  3. Check the 'Show publish date in knowledge search results'.
  4. Create a new KB record and make sure to approve it so that it is published and appears on the KB homepage.
  5. Search for this newly created KB on KB Homepage.

Note that the Last modified and Published dates are wrong. (The Last modified date has been fixed in Geneva but the Published date still persists.)

Password Reset Application


Password Reset broken if translated UI Messages for updateLockStateImage() client function in $pwd_new UI Page contain apostrophes The pwd_new UI Page's Client script is broken by a syntax error if any of the UI Messages' translations used by a updateLockStateImage() function have an apostrophe (') in, which is common in French. This breaks all client side code and prevents the verification from being passed to the reset of the password. The subsequent button click is submitted as a UI page post, rather than the expected AJAX one, which then fails. The UI pages $pwd_new and pwd_new have this issue.

On a Fuji or Geneva instance:

  1. Install the I18N French language plugin.
  2. Install the Password Reset plugin.

Note the function updateLockStateImage() in the client script.

Note translations with apostrophes in them.



Reports where user sys_id is specified in 'User' field are not shown to that user on if sys_created_by is not that user When a report is set to a specific user ('me' in sharing settings), but that user did not create the report, the user cannot view the report. Users with old data can experience this issue.
  1. Log in to a Fuji instance as a user with the admin role (in a Fuji instance).
  2. Create a new report and share to a group (for example, network).
  3. Impersonate a user from that group that has the itil and report_group role.
  4. Find the report through the report home page and open it.
  5. Amend the sharing options from [Group] to [Me] and save the report.
  6. Go back to Reports and select View/run.
Note that the report is no longer visible on the report home screen for users. This is because the user set in the created_by field no longer has access to the report. The logic fails and the report is not visible to anyone.
Knowledge Management


User Criteria for 'Can Read' is not honored User Criteria for 'Can Read' is not honored - a knowledge article can be accessed by URL or by navigating through kb_knowledge.list.
  1. As a user with elevated privileges, navigate to Knowledge > Administration > Knowledge Bases.
  2. Create a new knowledge Base (e.g. 'AbelKnowledgeBase').
  3. Enter all required fields and Save.
  4. Navigate to 'Can Read' related list and click New > Enter a name, Users. Add 'Abel Tuter' and click Save.
  5. Create a knowledge article in this KB and publish.
  6. Impersonate user Abel Tuter and navigate to Self Service > Knowledge.
  7. On homepage, click on Knowledge Base 'AbelKnowledgeBase'.
    • Note that the article is visible.
  8. Impersonate user Beth Anglin.
    • Note that in Knowledge Base 'AbelKnowledgeBase', no articles are visible.
  9. Enter this URL, inserting the name of the instance and replacing KB_ARTICLE# with the article number that was created in 'AbleKnowledgeBase':

Note that the article can now be accessed. Also note that in the left navigator, kb_knowledge.list, the article shows up in the list.

All Other Fixes

Problem Affected Plugins Short description Description Steps to reproduce
Asset Management


Software Counter Summary for 'not allocated' is set to zero for unrelated counters when a counter is updated with either the UI Action 'Count Licenses' or after the daily job 'SAM License Counters'
  1. Activate the SAM plugin.
  2. Create a counter/model/license for each of two different software products.
  3. Ensure there are rights in the licenses greater than zero.
  4. Run Count Licenses on one counter.
  5. Confirm there are rights in the Not allocated summary.
  6. Run Count Licenses on the second counter.
  7. Confirm there are rights in the Not allocated summary of the second counter.
  8. Confirm the value of rights is zero in the Not allocated summary of the first counter.
  9. Run Count Licenses on the first counter.
  10. Confirm there are rights in the Not allocated summary of the first counter.
  11. Confirm the value of rights is zero in the Not allocated summary of the second counter.


Password reset not working - get a status of 'Completed With Failure' When selecting 'Password Reset' on the login screen, no email is sent to the user to reset their password. The 'Reset Requests' has a record with the status 'Completed with Failure', and when checking the email's Outbox/Sent, no email was sent.
  1. Go to the login page.
  2. Select the Reset your password here link.
  3. Enter your information.
  4. Select Reset Password.
    • Very quickly, a message appears: 'You do not have permission to update this user record'.
    • Then, you get the message 'The system has reset your password and will email it to you'.
  5. Log in as a user with elevated privileges.
  6. Navigate to Reset Requests.
    • Notice the record that was created, with the status 'Completed with Failure'.
  7. Go to System Mailboxes > Outbox.
    • Note that no email was sent.
Change Management


Change Management - Core, Change Request Create normal change UI Action not working after upgrade When creating a change by using the UI context menu, the change number is not filled.
  1. Open any Incident record that does not have an associated Change Request.
  2. Through the context menu on the form, click Create Normal Change. A change is created, but it is not associated to the original Incident record.


Angular AMB Services, Connect, Connect Support, NG shared components Chat notifications / Chat functionalities are not working correctly in Connect sidebar When a new chat is started by an end user, the chat admin queue on the Connect view does not update to show that one is waiting. You have to reload the page to see there is one waiting with the 'Accept' button. When the admin clicks on 'Accept', the button disappears and nothing else happens.

In a Geneva instance:

  1. Make sure the chat plugin is activated.
  2. In browser 1, impersonate an end user.
  3. In browser 2, impersonate 'Beth Anglin' or any admin user who is the member of service desk chat group.
  4. Click the toggle Connect Sidebar icon to display the connect sidebar.
  5. In browser 1, where the end user is being impersonated, initiate a Service desk chat.
  6. In browser 2, for Beth Anglin, the notification does not appear.
  7. Reload the page.
    • The notification shows that one user is waiting.
  8. Click the Accept button.

Note that after clicking Accept, nothing happens.



Connect Support Connect Actions module points to legacy Chat Actions table The Connect Actions module points to the legacy Chat Actions table.
  1. Navigate to Connect > Administration > Actions.
  2. Note that this will show, rather than


Agent's active chats close after agents send first messages
  1. Start a support chat as an end user.
  2. Accept the chat as an agent.
  3. Send a message to the user.
  4. Switch to full view.
  5. Switch to frameset.

Note that the conversations are now gone.



Connect Support Agent can see Requester is typing but Requester cannot see that Agent is typing for Chat initiated through portal End user cannot see presence when chatting with an agent.

In a Geneva instance:

  1. Activate the Customer Service plugin.
  2. In browser 1, perform the following as an end user Requester:
    1. Launch the Customer Service Portal.
    2. Click the new red Chat icon in the far right and can initiate a new chat.
  3. In another browser, perform the following as Agent:
    1. Impersonate an OOB Customer Service queue member, John Jason.
    2. Click the Toggle Connect Sidebar icon in the upper right, where there will be a blue indicator.
    3. Click the Accept button to respond to the incoming chat.
  4. Type back and forth in the chat windows.

Notice when Requester types, Agent's Chat Connect window automatically displays 'is viewing...' -or- 'is typing...' depending upon what the Requestor is doing. This is the correct behavior. However, the Requester's chat window in the portal does not display this information.



Connect Connect support - Case disappears when submitting an incident
  1. Activate the Connect Support plugin.
  2. Impersonate Beth Anglin.
  3. Select Connect Support.
  4. In another browser, impersonate Abel Tuter.
  5. Then, go to <your instance> $
  6. Start Connect chat.
  7. Accept the Connect chat as Beth Anglin.
    • Note that the case is visible on the side.
  8. As Beth Anglin, create an incident by selecting the hamburger icon > Create Incident.
    • Note that the case is still visible.
  9. Submit the incident.

Note that the case disappears from the list. When the person you are helping signs off, the case reappears.

Cloud Management


On an upgraded instance (F to G), newly provisioned stack with old catalog item does not show output, resources, template
  1. Create a catalog item from the cloudformation template in Fuji. Make sure that it works.
  2. Upgrade to Geneva.
  3. Provision a stack using the catalog item created in Fuji.

Observe that the stack does not have output, resources, template.

Demand Management


Resolve state sys_choice replaced with Deferred in task filter condition builder after Demand Management is activated A sys_choice record for dmn_demand.state is loaded when the Demand Management plugin is activated. The value for this choice is 6 and label is 'Deferred'. This conflicts with the incident.state sys_choice, which also has a value of 6 and a label of 'Resolved '. When users try to create a filter on the task table, they see Deferred instead of Resolved, which is what they expect to see.
  1. Go to the task table.
  2. Create a filter: State > is > Resolved.
  3. Activate the Demand Management plugin.

Note that the Resolved sys_choice has been replaced with Deferred.

Demand Management


Demand Management Geneva upgrade causes issue with custom bubble charts
  1. In Fuji, create a custom demand workbench.
  2. Add left navigation modules for the custom workbench.
  3. Upgrade to Geneva.

Note that clicking on the left navigation modules that were created shows an error "Invalid parameters"

Dependency Views (BSM Map)


BSM map filter name translation missing In the BSM map, the 'Filter name' label is in English and is not translated.
  1. Log into a Eureka instance.
  2. Install the French plugin.
  3. Select the French language.
  4. Go to Carte BSM > Afficher la carte dans un nouvel onglet.
  5. Click on the Panneau filtre button.
  6. Click on the Enregistrer le filtre button.

Note that the English label 'Filter name' is not translated.



DeviceL3Mapping is only adding relationship to the first router that it finds The DeviceL3Mapping script include is only creating relationships with the first router that it finds, instead of creating relationships with all routers.

Make sure you have glide.discovery.L3_mapping set to 'true'.

  1. Create dscy_route_interface records for two separate routers that have as the destination IP network (this should give us the maximum IP range for routers).
  2. Run discovery on any device.

You will only see relationships connected to one router, when there should be two.



TCP connections not detected/discovered on Solaris Local zones
  1. Run Discovery on a Solaris local zone VM.
  2. Notice that the 'TCP Connections' related list is not populated on the discovered Solaris CI.
  3. Notice that application dependency mapping cannot be done due to the lack of TCP connections.
Domain Support


Domains: Upgrade to Geneva failing when 'Domains' and 'Secondary database Pools' plugins are installed and the Domain Provider is either domain_numbers or domain_paths Upgrade to Geneva fails when 'Domains' and 'Secondary database Pools' plugins are installed, and the Domain Provider is either domain_numbers or domain_paths.
  1. Install the Domains plugin on a Eureka or a Fuji instance.
  2. Install the Secondary database pools plugin as well.
  3. Ensure the glide.sys.domain.provider property is set to 'domain_paths' or 'domain_numbers'.
  4. Upgrade the instance to Geneva.

Note that the upgrade fails.

Edge Encryption


Sorting a list having a filter on an order-preserving encrypted field will ignore the filter condition
  1. Set up a proxy and instance.
  2. Create a new order-preserving encryption configuration (e.g. on incident.short_description).
  3. Perform a mass encryption on that configuration so that all short description data is encrypted.
  4. On the proxy, open and first sort by Number (descending order).
  5. Set a filter on the encrypted Short Description field, such as >= S.
    • You will correctly see a subset of matching records.
  6. Sort again on Number (ascending).
    • You can sort on any field; it doesn't have to be an encrypted one.

Note that the filter condition is ignored: you see all 46 records, sorted by Number (ascending). However, the breadcrumb still shows the filter condition correctly.

Edge Encryption


Proxy fails to start because of a rule failing signature validation Initial proxy upgrade works fine on Linux, OS X, and Windows. However, any subsequent proxy upgrades will exhibit some bad behavior. On Linux and OS X, the subsequent upgrades will succeed, but will overwrite the existing contents of the <proxyName_port>_backup folder. On Windows, any subsequent proxy upgrades fail.

On a Geneva instance:

  1. Install and start a Geneva Edge Encryption proxy.
  2. Notice the proxy fails to start with the following error:

2016-01-14 09:37:44,167 ERROR Rule 'List Request Post' does not have a valid signature 2016-01-14 09:37:44,170 ERROR post rules failed signature validation



When upgrading to Geneva, the 'stop processing' field defaults to 'true' on any existing inbound actions Upgrading into Geneva sets all inbound actions' 'stop processing' field to 'true'. This is a behavior change and likely will break the inbound action sequence when more than one inbound action is expected to run.
  1. Upgrade an instance to Geneva.
  2. Note that all out-of-box inbound actions have 'stop processing' set to 'true.'
Event Management


Event rule grouping - cannot use js_function overloading In eventRuleManager, there is overloading of js_function.
Event Management


Event Rules: failed to switch to Advanced mode When creating a rule by suggestion of grouping, the user cannot move to Advanced mode.

On a Geneva instance:

  1. Create a rule according to suggested group.
  2. Save it.
  3. Open it again and try to move to advanced mode.
Event Management


In Geneva, instances with many events without associated rules causes extreme latency when trying to transact with the Events Rules page The Event Rules page experiences latency (5-10 minutes) caused by contention with many events being present without associated rules.
Event Management


If mapping plugin is not active, remediation does not work If the mapping plugin is not active, remediation does not work.

On an instance with Event Management and no mapping:

  1. Create a manual BS.
  2. Click CI > Run remediation.

Note that there is no popup.

Event Management


Upgrading instances with a large amounts of events are repeatedly being restarted by the Memory Watcher due to excessive memory usage in the EventsMigration class, preventing a successful upgrade Upgrade-related incidents are caused by instances with a large amounts of events being repeatedly restarted by the Memory Watcher, due to excessive memory usage in the EventsMigration class. This prevents a successful upgrade.
  1. Start an upgrade on an instance with a million or more events.
  2. Observe the memory utilization of the instance during the upgrade.

Note that the memory is over-utilized, causes repeated restarts, and affects the upgrade.

Event Management


Impact calculator has memory issues Impact calculator has memory issues. The following errors also appear in the logs: External shutdown interrupted: no thrown error External shutdown did not complete in time, doing JSW restart instead: no thrown error
Facilities Service Management


Facilities Service Management Move the files for cmdb_facreq_product_model and cmdb_factask_product_model unload to the unload or unload.demo folder When upgrading from Fuji Patch 5 to Fuji Patch 8, all customizations were lost on the cmdb_facreq_product_model and cmdb_factask_product_model tables.
  1. On an earlier Fuji release, modify the demo OOB Facilities Request Templates and the tasks associated with the Facilities Request Templates.
  2. Upgrade from (e.g.) Fuji Patch 5 to Fuji Patch 8.

The result is all the customizations are lost for the cmdb_facreq_product_model and cmdb_factask_product_model tables.

Facilities Service Management


Service Management Core Category and subcategory fields are duplicated on upgrade Category and subcategory fields are duplicated on upgrade. This causes issues with setting and retrieving values from the facilities_request table.
  1. Install Facilities Service Automation on Fuji.
  2. Upgrade to Geneva.

Note that the category and subcategory values may appear to be lost, but this is due to the duplicate category and subcategory columns being added to the parent table.

Facilities Service Management


Facilities Service Management G to G upgrade makes it difficult to move a request between Facilities states It is impossible to move a facilities request through the state flow using the OOB state flows UI actions. This only happens after you do a Geneva to Geneva upgrade (going from Patch 0 to Patch 1). The root cause is that a script is not running on the G to G upgrade.
  1. Upgrade from Geneva Patch 0 to Geneva Patch 1.
  2. Try moving a facilities request through the state from (created from the catalog or directly from the list and form).

The request will stay in the draft state, and it is hard to move it to WIP using the OOB UI actions.

Field Service Management


Assigned to reference lookup not filtered by skills as expected from wiki documentation Wiki documentation indicates: "Only agents in the assignment group who have the specified skills appear in the lookup list. If no agents in the assignment group have the required skills, everyone in the assignment group appears in the Assigned to field, and a message states that no group members have the skills." Tested this on a Fuji instance and regardless of skills assignment, the reference lookup always lists all group members without any message mentioned above.
  1. Activate the Field Service Management (com.snc.work_management) and the Field Service Management Demo Data (com.snc.work_management.demo) plugins on a Fuji instance.
  2. Assign the specific skill 'Antenna installation' used in WOT0008137 to 'George Grey' from 'South East' group.
  3. Open WOT0008137 and click on the magnifying glass next to Assigned to.

Note that all three group members are listed in the reference lookup (instead of George Grey only), and no message appeared as expected per documentation on the wiki.

Field Service Management


Field Services modules all point to broken lists of work orders with no fields on the forms If Field Service is not installed, Customer Service is creating table "wm_order" without extending from sm_order. Thus, all of the columns in sm_order are unavailable.
  1. First, install Customer Service.
  2. Install the sm_core plugin.
  3. Install the plugin 'Field Service'.

Note that work_order has all the missing columns of sm_order.

Financial Management


Financial Management Budget Variance displays incorrect list of values in Budget Owner filter Budget Variance displays the incorrect list of values in the Budget Owner filter.
The issues are described as follows:
  1. The design intent for the Budget Variance report was to allow certain roles access to all budget keys/accounts without individual ownership assignments. In Geneva this was implemented only to provide sysadmin with this access, but not Financial Admins or Financial Analysts. "All" value needs to be available for Financial Analyst and Financial Admin.
  2. If there are no options available in the budget owner filter, the budget variance report spins.
  3. If the first picked Budget Owner does not have the parent populated, it will skip the rest of the records.

Issue 1:

  1. Log in as Financial Analyst or Financial Admin user.
  2. Go to Budget Variance.
  3. Note that the 'All' option is not displayed.

Issue 2:

  1. Log in as a user who is not admin and does not have access to any budget owners.
  2. Go to Budget Variance.
  3. Note that the Budget Owner filter is empty, and the page just spins.

Issue 3:

  1. Install ITFM plugin with demo data.
  2. Confirm that variance shows Budget Owners.
  3. Add a new Budget Owner and DO NOT populate parent field.
  4. Go to Budget Variance.
  5. Note that the list of Budget Owners is not correct.


Fields made read-only through the dictionary do not have label Fields are made read-only through the dictionary do not have label.
  1. Make a field read-only through the dictionary.
  2. Tab to it with a screen reader.
    • Note that the screen reader does not read the field name.
  3. Click on the label.

It will not focus on the field because it has no matching label.



SM template is not saved after multiple saves SM template is not saved after multiple saves.
  1. Install Legal Service Management.
  2. Create a legal template with task.
  3. Reopen the template and change the request name to 'a'. Then, save it.
  4. Change the request name to 'b', and save it again.

Note that when the template is reopened, the request name is still 'a' instead of 'b'.

HR Service Management


User Registration Request Missing ACL in user registration plugin When activating the User registration request plugin and then the explicit roles plugin, a create ACL and some public roles are needed to make the user registration link work.
Import / Export


Generated email reports pull a ByteArrayOutputStream into memory, using too much memory Generated emails pull a ByteArrayOutputStream into memory, which uses too much memory and can potentially run JVM out of available heap memory. For example, a 500+MB byte[] was stored in memory on a live production instance for a large report sent as a CSV attachment.

Schedule a large CSV report to send.

com.glide.db.impex.CSVUnloader.export( com.glide.generators.CSVExporter.generate( com.glide.generators.AbstractGridExporter.generate( com.glide.generators.CSVExporter.generate( com.glide.notification.substitution.AEmailAttachmentGenerator.generate( com.glide.notification.substitution.EmailReportGenerator.generate( com.glide.notification.substitution.AttachmentSubstitute.replace( com.glide.notification.substitution.SubstitutionManager.substituteToken( com.glide.notification.substitution.SubstitutionManager.substituteVar( com.glide.notification.substitution.SubstitutionManager.substitute( com.glide.notification.substitution.SubstitutionManager.substitute( com.glide.notification.outbound.EmailFormatter.substitute( com.glide.notification.outbound.EmailFormatter.substitute( com.glide.notification.cmn.NotificationDataEvaluator.evalMessage( com.glide.notification.cmn.NotificationDataEvaluator.evaluateNotificationData( com.glide.notification.cmn.NotificationDataEvaluator.evaluate( com.glide.notification.outbound.EmailAction.processTemplate( com.glide.notification.outbound.EmailAction.process( com.glide.notification.outbound.EmailAction.process( com.snc.automation.MailReportJob.execute( com.glide.schedule.JobExecutor.execute( com.glide.schedule.GlideScheduleWorker.executeJob( com.glide.schedule.GlideScheduleWorker.process(

Knowledge Management


Knowledge search results do not display in the user preference sort order When users set their 'Sort by' preference in Eureka, the initial search shows in the default sort order instead of the user's preferred order. Switching to a new 'Sort by' and then back to the preference shows the correct sort.
  1. Impersonate Abel Tuter.
  2. Navigate to Self Service > Knowledge and search for 'Email'.
  3. Set 'Sort by' to 'relevancy'.
    • Sort performs as expected.
  4. As System Admin, check User Preferences ''.
    • Note that Abel Tuter's is set to 'relevancy' as expected.
  5. Enable Text Search Debug.
  6. Impersonate Abel Tuter and perform the same Knowledge search as before.
    • Note the order is by 'views' and not 'relevancy', yet the 'Sort by' shows 'relevancy'.
  7. The Text Search debug shows the use of a view sort:
    • Chose to use com.glide.ts.query.TSRDBMSSortStrategy.
  8. Change the sort to 'views'.
    • Note the order of results does not change, and debug shows the same sort: Chose to use com.glide.ts.query.TSRDBMSSortStrategy
  9. Switch back to 'relevancy'.
    • Note the order changes and the debug outputs: Chose to use com.glide.ts.query.TSRDBMSSortStrategy

This is the expected sort order. This sort is used initially when the users performs their first sort, especially since the 'Sort by' drop down shows 'Relevancy'.

Knowledge Management


Knowledge Base messages do not use translations Knowledge Base messages do not use translations and display messages in English.

On a Fuji instance:

  1. Activate any language plugin.
  2. Switch to that language and create a knowledge base article.
  3. Right-click the header and click Save.
  4. Press the Publish button.

Note that you see an English message saying that the article is submitted for review.

Knowledge Management


Creating new KB article after upgrading to Fuji throws data policy exception After upgrading to Fuji, the Knowledge Management V3 is activated by default and the modules are initially inactive. This is because users should be able to continue using the legacy KB modules and homepage. However, the legacy record producer Create New KB article throws a Data Policy Exception, as there is no knowledge base defined for the new article. This is expected behavior, but is causing confusion for users prior to completely migrating to KM V3.
  1. Open an instance which has been upgraded to Fuji.
  2. Do not migrate to new KMV3.
  3. Create a new article.

Upon submission, the Data Policy Exception is thrown, aborting the submission.

Knowledge Management


Knowledge article topic and category is not migrated to new kb_category after upgrade to KnowledgeV3 Knowledge article topic and category is deprecated in Knowledge V3. After upgrading to Fuji, the data is not auto-migrated to the new kb_category, which requires users to fix the category (manually or script) for the existing articles.
  1. Upgrade an instance with KB articles from Eureka to Fuji.
  2. Open a KB article.

Note that topic and category fields are not on the form, and the new Category field is empty.

Knowledge Management


Knowledge V3 articles with proper User Criteria are still restricted if there is a role defined in the Roles field of the KB record
  1. Create a new Knowledge Base.
  2. On the Can Read related list, define a User Criteria with role 'itil'.
  3. Create a KB article within this Knowledge Base and put 'admin' role (or any role that itil doesn't have) on the Roles field.
  4. Impersonate an itil user and find that KB article.

Note that while it is visible on the kb_knowledge.list and form view, it is not visible on the Knowledge Home or the article itself.

Knowledge Management


Knowledge Management V3 Unable to override 'Copy Permalink' in KB articles The KBViewModelSNC script include is supposed to dictate OOB behavior for KB functions, and the KBViewModel script include provides a space for customers to override the OOB behavior. However, these overrides do not appear to be working (in particular, the 'Copy Permalink' on each article's footer).
Knowledge Management


Knowledge article relevancy is not calculated When knowledge articles are sorted by Views or Last Modified, the relevancy is not calculated.
  1. Set system property to 'true'.
  2. Search Knowledge, using any term that returns multiple articles (ex. email).

Note that when 'Relevancy' is selected in the 'Sort by' menu, each article's relevancy is calculated correctly and displayed. However, when 'View' or 'Last Modified' is selected, the Relevancy for every article is '-1'.

Knowledge Management


Knowledge home search with large result set against large category list is very slow in Fuji When you do a knowledge search in Fuji for a term that is distributed across numerous articles in numerous categories across numerous knowledge bases, the page freezes for a very long time.
Knowledge Management


Knowledge Management V3 Geneva Knowledge populates slowly when typing longer strings HI responds very slowly when typing strings in the Knowledge search. The longer the search string, the slower the response.
  1. Log in as: itil/itil.
  2. Navigate to Knowledge > Homepage.
  3. In the content pane, in the "Search Knowledge" filter, TYPE (do not paste) a multi-word search string such as: "what are the slas for support incidents"
  4. Wait for knowledge to return.

Notice the warning messages in the localhost log.

Note: You can follow these same steps on HI to see the full impact of the slow response.
Knowledge Management


On upgrade to Knowledge Management V3, new V3 menu modules are missing Upon upgrade to Knowledge Management V3, new V3 menu modules are missing. In order to get the new V3 menu modules, users must manually enable the new V3 menu modules and disable v2 menu modules.
  1. Upgrade a pre-Fuji instance to Fuji.
  2. Note that users still see the Knowledge v2 menu modules.
Language and Translations


Table labels missing from global search Table labels are missing for global search. When searching for something in global search, instead of seeing table names next to parent nodes, it will instead say 'no matches for.....'
  1. Search for 'wakka'.
  2. Notice next to task it says 'No matches for.....'


Only the title of an embedded list is exported to PDF When exporting an embedded list to PDF, only the title is exported. However, related lists export to PDF correctly.
  1. Open up an incident in a form view and personalize the form layout.
  2. Add Knowledge > Source onto the form.
  3. Add one or two knowledge items in the newly added embedded list.
  4. Export the incident form into a PDF.

Note that the PDF will only have the title for the embedded list, but not the content.



List go to search select is not aligned correctly in compact mode


When saving a personalized list, a duplicate call to unfiltered list is made On Chrome 47, long unexpected SQL statements are executed without a defined filter when saving a personalized list on the list view.


extends_base missing from metadata service, filters broken This issue revolves around a difference in column types. Without the base type in the metadata response, filters act erroneously or do not work altogether.


Mobile UI Field of the type- list does not remain as read-only if it has a value filled in On the mobile interface, a field of the type- list does not stay read-only if it has a value filled in. If the field is blank and does not have a value, the field is rendered as read-only.

On a Eureka instance:

  1. Create a field of the type- list on the mobile view of the incident form.
  2. Make the field 'read-only' from the dictionary.
    • Notice that on the mobile interface, the read-only attribute is not honored.
  3. Using a UI policy, make the field read-only.
    • Notice that on the mobile interface, the read-only attribute is not honored.
  4. Using a write ACL, restrict write access on the field.
    • Notice that on the mobile interface, the read-only attribute is not honored.

As long as a value is filled in on the field, the read-only attribute is not honored on a mobile interface. However, if the field is blank and no value is filled in, then the field is rendered as read-only.



Mobile UI Mobile HTTP resource requests are not cached and load slowly
  1. Navigate to $ with the network tab open.
  2. Notice that on calls to get js and css includes, the cache_busta query string parameter is always being included.
Password Reset Application


Self Service Password Reset Geneva ResetPwdAjaxProcessor makes incorrect assumption on sys_user.source being populated ResetPwdAjaxProcessor assumes that password are managed externally if the sys_user.source field is populated. This is not necessarily the case if customers use LDAP Import as a way of populating user details, but continue to manage the actual password in the instance.
  1. For self-service password reset, click on the reset_password link from the login page.
  2. Note that users get the error "User is sourced from external. Cannot reset network password".
Performance Analytics


Scoresheets report values 10x higher than the pa_scores, using different locale than OOB Scoresheets report values 10x higher than the pa_scores for a different system localization than the default.
Platform Performance


Angular AMB Services AMB Service creating client side memory leak when AMBClient is created in an iframe
Platform Performance


Session leak An HTTP session is created for every request, instead of only for requests that make it into the txn q. This results in invalid requests creating sessions.
Platform Security


Creating two instances with same IdP url causes users to be redirected to the homepage instead of the instance. Incidents are caused by two IdPs and are created with the same IdP URL. The first IdP URL gets selected and causes users to get redirected to the homepage.
Platform Security


Many password2 columns in production instances are shorter than 255 bytes, which might result in data corruption NAE encryption will result in data corruption for password2 fields that are too short (it requires at least 64 bytes).
  1. Make sure that the OOB instance does not have password2 columns shorter than 255.
  2. Activate the 'Password Reset' plugin.

Notice that after the activation, several var__m_xxxxx "tables" with u_new_password "columns" in sys_dictionary were created, and their max length is just 40. Also, on Geneva and prior releases, you can create a new table with a password2 column, and set its length explicitly to 40 or less.

Project Management


Project Management percent_complete_target is always being rendered in the % Complete list widget as 100% This is similar to PRB598146, which was fixed in Eureka.
  1. In a Eureka instance, enable Project Management v2 and then enable Project Management v3. Load demo data.
  2. Navigate to Portfolios > All, and select the IT Portfolio.
    • In the Project View related list, note how all the % Complete widgets in the list are rendered with the target already set to 100% (indicated by the silver bar across the top, and if you hover over the widget).
  3. Select the 'Reduce Incident Resolution Time' portfolio project from the list.
  4. Personalize the form on the 'Reduce Incident Resolution Time' portfolio project record and add the % Complete field to the form (this is the one used by the widget).
  5. Set the % Complete to 60, and the % Complete Target to 54. Save.

Note how the % Complete value is shown in the related list widget, but the target is still 100%, not 54%.

Project Management


'Parent' field on project record gets erased when you apply a template When you create a new project, populate the parent field, and then apply a template, the parent field is erased.
  1. Navigate to Projects > Create New.
  2. Configure the form and add the Parent field.
  3. Give the project a name and populate the parent field with any value.
  4. Save the project.
  5. Select the 'new view' from the hamburger menu.
    • This should display an info message that says "apply template".
  6. Click Apply template.
  7. Select any template.

Note that the information in the parent field is erased.

Project Management


Project Management Portfolio Timeline View (Planning Console) does not show project cost, only returns error message and undefined
  1. Log into a Geneva instance.
  2. Go to Project > Settings > Portfolios (required plugin: Project Portfolio Suite).
  3. Choose IT.
  4. Click the Portfolio Timeline View related link.
  5. Click the filter icon (top left).
  6. Check the Project Cost box.
    • See that no values are returned.
  7. Double-click into any of the Project cost fields/boxes.
    • See undefined returned.

When you click off of the box, this error info message is thrown at the top of the page.

"Something wrong on client side. Contact System Administrator" Error thrown in console: "TypeError: Cannot read property 'start_date' of undefined(...)"

Project Management


Portfolio Timeline View (Planning Console) displays the State value rather than the label
  1. Log into a Geneva instance.
  2. Go to Project > Settings > Portfolios (required plugin: Project Portfolio Suite with demo data).
  3. Choose IT.
  4. Click the Portfolio Timeline View related link.
  5. Click the filter icon (top left).
  6. Check the State box.

Note that the value is shown rather than the label.

Project Management


Copy Project UI Action creates a copy of the parent Project instead of the Sub Project the action is initiated from After upgrading to Geneva, if you use the 'Copy Project' UI Action on a sub project, it copies the parent Project instead of the subproject you created the copy from.
  1. Enable the Project Management v3 plugin.
  2. Modify a demo Project to have a couple of sub-projects (i.e. edit the "Sub Projects" related list and add 2-3 projects).
  3. Open one of the sub-projects you added in step 2.
    • Note its details, including the number of Project Tasks in the Related List.
  4. Right-click the header and select Copy Project.
  5. Enter any name and click OK.

Note that the new Project created matches the parent project instead of the sub project it was created from (the same project tasks, etc).

Project Management


Null pointer exception when clearing unused schedules in cache A null pointer exception regularly occurs when clearing unused schedules from the SYSCACHE_SCHEDULE cache.

This happens whenever the schedule cache is cleared (more so than on demand).

  1. Log into a Geneva instance.
  2. Go to System Logs > Errors.
  3. Search for "Message contains PTScheduleCache".

Note the multiple entries for this null pointer exception.

Project Portfolio Management


Demand Management, Project Management PPM role model change between Fuji and Geneva are not correctly handled during upgrade (from fuji patch 3 hot fix 1 to geneva patch 0 hot fix 1) Users with the project_manager role in Fuji do not have access to records that they should after upgrading to Geneva. For example, read access to pm_project_task is not available to the holder of project_manager because itil has been removed as a dependent role of the project_manager, and that role is needed by the read ACL for pm_project_task. When an application deploys a role structure in a release and then changes that role structure in a subsequent release, the upgrade should include code to map from the old to the new structure.
  1. Enable the PPM plugin in Fuji instance.
  2. Grant the project_manager role to a user.
  3. Then, have that user create projects and task.
    • Make sure that the user does not have the itil role from another role or group.
  4. Upgrade to Geneva.
  5. Have that user try to read the pm_project_tasks that they created.

Note that those records are blocked by a read ACL.

Project Portfolio Management


Project Management Planning Console project selector should support pagination The project selector in the planning console loads all projects in one shot; however, during each GlideRecord load, the platform fires internal queries for currency fields. To avoid sidesctuations in which a large number of records is loaded into the selector and is never returned, the selector should be remodeled to support pagination.


HTML Fields are incorrectly rendered when exporting a form in PDF HTML that is contained within a form will not render when exporting a form in PDF.

Export a form that contains a HTML field.

Note that instead of getting readable text without formatting and no HTML tags visible, text containing HTML appears.



Display Grid Total Average is rounding to 0 decimal digits Display Grid Total Average is rounding to 0 decimal digits. This issue occurs in Geneva and does not occur in Fuji.


Reports list loads very slowly because the sys_metadata table contains too many rows The Reports list loads slowly if the sys_metadata table is very large and does not have an index on sys_created_by.
  1. Navigate to Reports > View/Run to open the reports list.
  2. Note that the reports list loads slowly.


List Report: New fields created on the Incident table with 'chart' or 'annotation' in their name cannot be selected in Report definition slush bucket Fields with 'chart' or 'annotation' in their name cannot be selected in report definition slush buckets.
  1. Log into a Fuji instance.
  2. Open the table definition for the Incident table.
  3. Click the New button in the field list.
  4. Select a field type.
  5. Enter a label value (e.g. My chart).
  6. Set and/or verify that the field name has 'chart' in it (e.g. u_my_chart).
  7. Click Submit.
  8. Navigate to Reports and select Create new.
  9. Specify the table to report on to be 'incident'.
  10. Locate the field in the 'Available' slush bucket, and click it to move it to the 'Selected' slush bucket.

Notice that the field is now missing from the 'Available' slush bucket and is not in the 'Selected' slush bucket.



Display Grid - PDF Export - in case of group by duration, only the first row display the Group Category value Display Grid - PDF Export: When grouping by duration, only the first row displays the Group Category value. Introduced in Geneva.

In a Geneva instance:

  1. Create a new bar chart on the Incident table.
  2. Group by and Aggregate average by Business Duration.
  3. Save.
  4. Export to PDF.

Note that only the first line of the display grid has a non-empty group value.



For Range reports (when you group by a duration field in Bar/Stack Bar/Trend), the max number of data points is not applied at the data point level For Range reports (when you group by a duration field in Bar/Stack Bar/Trend), the max number of data points is not applied at the data point level. Instead, it is applied at the aggregated value level. Therefore, to compose the value in the data points, the number of aggregated values is counted instead of the data points themselves. For example, a report with 8 Range Bucketed Bars may be blocked because its points require aggregation over 10,000+ values.

Import a large number of incidents, or create them with a scripts (>= 50000). Then,

  1. Bar Group By created.
  2. Bar Group By created, and stack by Assigned to.
  3. Trend by duration, and group by duration.


Minute trend type appears for all tables and does not work properly, even on necessary table On the report builder, if you try to create a trend type of chart on any table, you will see the minute type of trend. This type of trend should not appear for all tables. There are also JavaScript errors when using the feature on the correct table.


Content Management report charts display incorrectly following upgrade from Fuji to Geneva Report charts on Content Management pages are not being correctly displayed after upgrade from Fuji to Geneva. The issue is mainly related to the height of the charts being extremely large. Trying to edit the page changes the height only on the preview page, but the change is not reflected on the actual content page.
  1. Navigate to Content Management > Pages.
  2. Select MSO SCM gauges.
  3. Under Related Links, click Edit page.
  4. Click on the cog wheel and select Edit Widget > Change Height.

Note that you see the change while editing, but it is not reflected on the homepage.



Content Management Report chart sizes on Content Management pages do not persist Report charts on Content Management pages are not being displayed correctly after upgrade from Fuji to Geneva. This is largely because the height of the charts is extremely large. Trying to edit the page changes the height only on the preview page, but it is not reflected on the actual content page. Change in widget height does not properly persist, which leads to inconsistent behavior when the chart is viewed in preview page.
  1. Go to Content Management > Pages > Name: MSO SCM gauges.
  2. Navigate to Related Links > Edit page.
  3. Click on the cog wheel, and select Edit widget > Change height.

Note that the change in height is seen while editing, but it is not reflected on the actual homepage.



Unable to email a scheduled report on a custom chart if the Type is set to PDF or PDF-landscape Users are unable to schedule emails of custom chart reports if the Type is set to PDF or PDF-landscape. However, PNG works as expected.
  1. Log into an OOB Fuji instance.
  2. Ensure that email has been provisioned for the instance.
  3. Activate the "Custom Charts" plugin.
  4. Go to the 'Scheduled Email of Custom Charts' sysauto_custom_chart table.
  5. Create a record on the sysauto_custom_chart table and set the following:
    • Custom chart = 'Incident Backlog'
    • Type = 'PDF'
    • Users = any user with your email address, or use the 'Email Address' field
  6. Click Execute Now.

Notice that no emails are sent, and the following errors are generated:


2015-10-27 14:59:28 (807) worker.3 worker.3 SEVERE *** ERROR *** Adding image to PDF Document java.lang.NullPointerException at com.glide.generators.PDFGenerator.addImage( at at at com.glide.notification.substitution.AEmailAttachmentGenerator.generate( at com.glide.notification.substitution.EmailCustomChartGenerator.generate( at com.glide.notification.substitution.AttachmentSubstitute.replace( at com.glide.notification.substitution.SubstitutionManager.substituteToken( at com.glide.notification.substitution.SubstitutionManager.substituteVar( at com.glide.notification.substitution.SubstitutionManager.substitute( at com.glide.notification.substitution.SubstitutionManager.substitute( at com.glide.notification.outbound.EmailFormatter.substitute( at com.glide.notification.outbound.EmailFormatter.substitute( at com.glide.notification.cmn.NotificationDataEvaluator.evalMessage( at com.glide.notification.cmn.NotificationDataEvaluator.evaluateNotificationData( at com.glide.notification.cmn.NotificationDataEvaluator.evaluate( at com.glide.notification.outbound.EmailAction.processTemplate( at com.glide.notification.outbound.EmailAction.process( at com.glide.notification.outbound.EmailAction.process( at com.snc.automation.MailReportJob.execute( at com.glide.schedule.JobExecutor.execute( at com.glide.schedule.GlideScheduleWorker.executeJob( at com.glide.schedule.GlideScheduleWorker.process( at

2015-10-27 14:59:28 (809) worker.3 worker.3 SEVERE *** ERROR *** Failure during scheduled run of job: 81c92ce9c0a8016400e5f0d2f784ea78 ExceptionConverter: The document has no pages. at com.itextpdf.text.pdf.PdfPages.writePageTree( at com.itextpdf.text.pdf.PdfWriter.close( at com.itextpdf.text.pdf.PdfDocument.close( at com.itextpdf.text.Document.close( at com.glide.generators.PDFGenerator.getOutputStream( at at at com.glide.notification.substitution.AEmailAttachmentGenerator.generate( at com.glide.notification.substitution.EmailCustomChartGenerator.generate( at com.glide.notification.substitution.AttachmentSubstitute.replace( at com.glide.notification.substitution.SubstitutionManager.substituteToken( at com.glide.notification.substitution.SubstitutionManager.substituteVar( at com.glide.notification.substitution.SubstitutionManager.substitute( at com.glide.notification.substitution.SubstitutionManager.substitute( at com.glide.notification.outbound.EmailFormatter.substitute( at com.glide.notification.outbound.EmailFormatter.substitute( at com.glide.notification.cmn.NotificationDataEvaluator.evalMessage( at com.glide.notification.cmn.NotificationDataEvaluator.evaluateNotificationData( at com.glide.notification.cmn.NotificationDataEvaluator.evaluate( at com.glide.notification.outbound.EmailAction.processTemplate( at com.glide.notification.outbound.EmailAction.process( at com.glide.notification.outbound.EmailAction.process( at com.snc.automation.MailReportJob.execute( at com.glide.schedule.JobExecutor.execute( at com.glide.schedule.GlideScheduleWorker.executeJob( at com.glide.schedule.GlideScheduleWorker.process( at



Project workbench: issues caused by 'test plan' is not required while creating 'Test' phase In the project workbench, issues are being caused when a test phase is created without a test plan. In the bottom VTB view, creating a test phase without a test plan does not result in a warning/error message.
  1. Create a project.
  2. Go to the workbench.
  3. Create a test phase without a test plan (since it is not required).
  4. Select the test phase.
  5. In bottom list view, create a test case.
    • Note that the user will get a error message: invalid insert/need to associate it with a test plan.
  6. In bottom VTB view, create a test case.

Note that there is no warning/error message. It appears as if creating the test case worked successfully, even though there was no test case created in the VTB.



SDLC - Scrum Process Pack 'Assigned to' field shows 'none' in the TASK Progress Board The 'Assigned to' field is showing 'none' in the TASK Progress Board and in the related list Scrum task, but the field is populated when opening the form.
  1. Log into a Fuji instance.
  2. Go to Plugins > Install Scrum plugins (Note: install SDLC - Scrum Process Pack with Demo Data).
  3. Open any Story with Scrum Tasks in the related links section.
  4. Click on the TASK Progress Board link. There, the Assigned to for the created Scrum Task will display as NONE.

In the TASK Progress board, the 'Assigned to' for the created Scrum Task will display as NONE. If you add the the 'Assigned to' field in the Scrum Tasks related list, it does not show any data. However, if you open the form, it does show the data for 'Assigned to' field.



Adding Test Cases/Suite to a Test Plan does not carry attachments over Adding Test Cases/Suite to a Test Plan does not carry attachments over.

In a Fuji instance:

  1. Activate the Test Management plugin if necessary.
  2. Create a test environment with test data:
    • Name: Test Environment
    • URL:
  3. Create a Test Suite with demo data:
    • Name: Test Suite
  4. Open the Test Suite you just created.
  5. Add 2 Test Cases via the Related List:
    • Short Desc & Prerequisites: Test case 1, Add an attachment.
    • Short Desc & Prerequisites: Test case 2, Add a different attachment.
  6. Create a Test Plan with demo data:
    • Short description: Test plan
    • Test Environment: Test Environment (created earlier)
    • Instructions: Any text
  7. Go back to the Test Suite you created earlier.
  8. Click the Related Link 'Add to Test Plan'.
  9. Select the previously created Test Plan.
  10. Click the highlighted message link at the top of the screen: 'Test Suite has been added to Test Plan Test Plan.'
  11. Note that the 2 Test Cases are here. Open each one.

Note that no attachments were added.

Service Catalog


Service Catalog Plugin (core applications) Content_Site Table error causing a job to be looping after upgrading to Eureka After upgrading to Eureka, the glide.scheduler.worker.1 is triggered and loops. main,glide.scheduler.worker.1,4,ASYNC: Script Job (187214398 ms) com.glide.db.pool.DBConnectionPool.getConnectionFromPool( com.glide.db.pool.DBConnectionPool.getConnection( com.glide.db.pool.PooledDBI.newConnection( com.glide.db.pool.PooledDBI.obtainConnection( com.glide.db.DBI.databaseUse( com.glide.db.DBConfiguration.configure( com.glide.db.DBConfiguration.getDBI( com.glide.db.DBConfiguration.getDBI( com.glide.script.GlideRecord.setTableName( com.glide.script.GlideRecord.( com.snc.apps.AppsUtil.getM2MDisplayValue( com.snc.apps.AppsUtil.getFileNameByObj( com.snc.apps.AppsUtil.getFileName( com.snc.apps.FileSyncherHandler.setFileValues( com.snc.apps.FileSyncherHandler.updateFile( com.snc.apps.FileSyncherHandler.match( com.snc.apps.FileSyncherHandler.match( com.snc.apps.RecordSyncher.sync( com.snc.apps.AppsUtil.syncFileTable( com.snc.apps.AppsUtil.syncAllAppFiles( com.snc.apps.api.AppFiles.syncAllAppFiles( sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke( sun.reflect.DelegatingMethodAccessorImpl.invoke( java.lang.reflect.Method.invoke( org.mozilla.javascript.gen.c3037.exec(sys_trigger.9a4f00ba810031005c309e4aefec7037) com.glide.script.ScriptEvaluator.execute( com.glide.script.ScriptEvaluator.evaluateString( com.glide.script.Evaluator.evaluateString( com.glide.script.Evaluator.evaluatePossiblePrefixedString( com.glide.job.RunScriptJob.evaluateScript( com.glide.job.RunScriptJob.execute( com.glide.schedule.JobExecutor.execute( com.glide.schedule.GlideScheduleWorker.executeJob( com.glide.schedule.GlideScheduleWorker.process( This began with the following error: 2014-11-01 04:41:38 (004) worker.1 worker.1 SEVERE *** ERROR *** Table 'junipernetworksstage_2.content_site' doesn't exist com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'junipernetworksstage_2.content_site' doesn't exist at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance( at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( at java.lang.reflect.Constructor.newInstance( at com.mysql.jdbc.Util.handleNewInstance( at com.mysql.jdbc.Util.getInstance( at com.mysql.jdbc.SQLError.createSQLException( at com.mysql.jdbc.MysqlIO.checkErrorPacket( at com.mysql.jdbc.MysqlIO.checkErrorPacket( at com.mysql.jdbc.MysqlIO.sendCommand( at com.mysql.jdbc.MysqlIO.sqlQueryDirect( at com.mysql.jdbc.ConnectionImpl.execSQL( at com.mysql.jdbc.ConnectionImpl.execSQL( at com.mysql.jdbc.StatementImpl.executeQuery( at com.mysql.jdbc.DatabaseMetaData$7.forEach( at com.mysql.jdbc.DatabaseMetaData$7.forEach( at com.mysql.jdbc.IterateBlock.doForAll( at com.mysql.jdbc.DatabaseMetaData.getPrimaryKeys( at sun.reflect.GeneratedMethodAccessor326.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke( at java.lang.reflect.Method.invoke( at com.glide.db.DatabaseMetaDataWrapper.invoke( at com.sun.proxy.$Proxy6.getPrimaryKeys(Unknown Source) at com.glide.db.rdbms.glide.DBIGlide.getPrimaryKeys( at com.glide.db.rdbms.glide.DBIGlide.executeQuery( at com.glide.db.rdbms.glide.DBIGlide.executeAction( at com.glide.db.rdbms.glide.DBIGlide.executeAction( at com.glide.db.DBAction.executeAndReturnException( at com.glide.db.RDBMSQueryContext.executeQuery( at com.glide.db.DBQuery.execute( at com.glide.db.DBI.getPrimaryKeys( at com.glide.db.DBI.getPrimaryFields( at com.glide.db.TableDescriptorProvider.getPrimaryKeys( at com.glide.db.TableDescriptor.getPrimaryKeys( at com.glide.db.TableDescriptor.getPrimaryKey( at com.glide.db.TableDescriptor.getPrimaryKeyName( at com.glide.db.meta.Table.<init>( at com.glide.db.meta.Table.<init>( at com.glide.script.GlideRecord.initTable( at com.glide.script.GlideRecord.get( at com.snc.apps.AppsUtil.getRecordDisplayValue( at com.snc.apps.AppsUtil.getM2MDisplayValue( at com.snc.apps.AppsUtil.getFileNameByObj( at com.snc.apps.AppsUtil.getFileName( at com.snc.apps.FileSyncherHandler.setFileValues( at com.snc.apps.FileSyncherHandler.updateFile( at com.snc.apps.FileSyncherHandler.match( at com.snc.apps.FileSyncherHandler.match( at com.snc.apps.RecordSyncher.sync( at com.snc.apps.AppsUtil.syncFileTable( at com.snc.apps.AppsUtil.syncAllAppFiles( at com.snc.apps.api.AppFiles.syncAllAppFiles( at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke( at sun.reflect.DelegatingMethodAccessorImpl.invoke( at java.lang.reflect.Method.invoke( at at at at org.mozilla.javascript.gen.c3037.exec(sys_trigger.9a4f00ba810031005c309e4aefec7037) at com.glide.script.ScriptEvaluator.execute( at com.glide.script.ScriptEvaluator.evaluateString( at com.glide.script.Evaluator.evaluateString( at com.glide.script.Evaluator.evaluatePossiblePrefixedString( at com.glide.job.RunScriptJob.evaluateScript( at com.glide.job.RunScriptJob.execute( at com.glide.schedule.JobExecutor.execute( at com.glide.schedule.GlideScheduleWorker.executeJob( at com.glide.schedule.GlideScheduleWorker.process( at

Followed by 100 000 nullPointerException

Service Catalog


When homepage image of service catalog category is updated, the image does not appear on the self-service dashboard
  1. Create a Category for Service Catalog.
  2. Add a Header Icon to the category.
  3. Add an item to the category so it appears in the catalog.
  4. Add the category to the Service Catalog.
  5. Change the header icon to the category. The changed header icon for the category does not appear.
Service Catalog


Illegal access to method namer (com.glideapp.questionset.LookupSelectQuestion) in class com.glideapp.questionset.SequencedQuestionSet An error is thrown when using the attribute ref_qual_elements on a Lookup Select Box variable.
Service Catalog


Wizard panels (containing two or more orderable items with mandatory variables) allow 'checkout' after filling in only the first item's/tab's mandatory fields [Fuji] Wizard panels (containing two or more orderable items with mandatory variables) allow 'checkout' after filling in only the first item's/tab's mandatory fields [Fuji]. In Eureka, the checkout functionality does not work until all mandatory fields are populated.
  1. Create a wizard and its associated panel.
  2. Add 2 or more orderable items to the panel.
  3. Add at least 1 variable set to each orderable item.
  4. Add at least 1 mandatory variable to each variable set.
  5. Add a Catalog Checkout panel to the wizard.
  6. Add a Wizard Panel Transition from the first panel to the checkout panel.
  7. Test the wizard.

Notice how checkout works when the mandatory variables for the second orderable item are left blank.

Service Catalog


Service Catalog Plugin (core applications) Multiple clicks on Proceed to Checkout button leads to 'Cannot check out with an empty cart!' error after checkout (see PRB588289)
  1. Go to Application Navigator > Service Catalog > Catalog Definition > Maintain Items.
  2. Select any catalog item.
  3. Click on the Try it button. This will take you to the catalog item form.
  4. Fill the mandatory fields, and click on Add to Cart. Your Shopping Cart will pop up.
  5. Click on the Proceed to Checkout button multiple times and very quickly.

Note the error message "Cannot check out with an empty cart!"

Service Catalog


Service Catalog Plugin (core applications) Reference magnifying glass renders below input box on order checkout status page In Geneva and on Internet Explorer, the reference magnifying glass renders below the input box on the order checkout status page.
Service Catalog


Currency support for the Service Catalog, Service Catalog core applications Request Item price is decimal for zBooted instances in Geneva, whereas it is Currency in Fuji com.glideapp.servicecatalog.currency was a part of zboot and was incorrectly removed in Geneva.
Service Catalog


In Geneva, labels above sets of checkbox variables are no longer automatically hidden when the checkboxes are all hidden In Geneva, labels above groups of checkbox variables are no longer automatically hidden when the checkboxes are all hidden. There is a clever feature in catalog items to automatically group sets of checkbox variables that appear after a label when rendered in the catalog or variable editor on forms. In Fuji, if all checkboxes in one of these groups are hidden by UI Policies then the label is also hidden automatically. In Geneva the label remains on screen.
Service Catalog


Service Catalog Plugin (core applications) More information tag on Service Catalog Variables turns HTML into escaped text (expected behavior, although not in the past) When attempting to use HTML in a help_text field on a service catalog variable, the content renders as escaped text. The HTML tags in variables 'help text' are only interpreted when the system property named glide.ui.escape_text is set to false.
  1. In the self-service portal, open the Something Broken record producer.
  2. Right-click the Open on behalf of this user field label and select Configure variable.
  3. Insert HTML into the Help text field (for example: <span style="color: red;">TEST</span>).
  4. Go back to the Something Broken item in the self-service portal.
  5. Open the help text for the Open on behalf of this user field. Note that the content does not render as HTML.
Service Mapping


In history, "Loading data for history view ... " often gets stuck for > 5 minutes
Service Mapping


Configuration Management (CMDB) Instance table cmdb_ci_endpoint_iis does not extend cmbb_ci_endpoint_inclusion DB table on later Fuji patches
Service Mapping


Physical Connections are not created between network device and its neighbors
Service Mapping


PatternMigrationWS does not update the extend from attribute When running migration, the PatternMigrationWS does not update the extend from attribute.
  1. Look in the sys_web_service file.
  2. Note that the extend from attribute is not updated.
Service Mapping


When the CMDB contains large number of CI (millions), the service maps load time is a minute or more When the CMDB has millions of CIs, the load time for service maps load time is more than a minute. This makes service mapping unusable. Load any business service map.
Software Asset Management


Software License Counter job runs slowly if there are one or more sam_sw_counter_summary records with over 100,000 related sam_sw_counter_detail records Software License Counter job runs slowly if there are one or more sam_sw_counter_summary records with over 100,000 related sam_sw_counter_detail records.

"SAM License Counters" schedule job takes longer time to complete.



Syntax Editor Control characters (e.g. newlines) in label hints are causing errors in the business rule script field


Syntax Editor JSON inserted into Jelly corrupted by glide.ui.escape_all_script = true When opening up a script include, business rule, or client script, the JavaScript editor box does not appear when syntax highlighting is enabled. The context menu is also affected when syntax highlighting is enabled - it does not appear when the user right-clicks.
  1. Set the property glide.ui.escape_all_script to 'true'.
  2. Open a script include record.
  3. Ensure syntax highlighting is turned on.

Expected behavior

  • The Javascript editor box should appear.
  • Context menu works.

Actual behavior

  • The Javascript editor box is not appearing.
  • Context menu is not working properly.


SEVERE *** ERROR *** / by zero java.lang.ArithmeticException: / by zero SEVERE *** ERROR *** / by zero java.lang.ArithmeticException: / by zero is seen in the system log if Survey Wizard Panel has Banner Type = Fixed number of (user defined) steps but has 0 banners specified.
  1. Create a survey wizard.
  2. Create a wizard panel.
  3. In the Banner type, specify 'Fixed number of (user defined) steps'.
  4. Save.
  5. Try the survey wizard that you created.
  6. Open the system log.

Note the error "/ by zero java.lang.ArithmeticException: / by zero



Add collector property that can filter out matching first line of command output A collector property should be added to filter out the matching first line of command output.


Event Management - Event Date Time is one hour behind (during BST) The groovy script produces Event Date Time that is one hour behind (during BST).
System Applications


Need better error message when user who does not belong to the login company tries to publish If a user logs in on an author instance, creates an app, and tries to publish it to the store and give abel.tuter (i.e. someone outside of the login company) in the popup, it says 'invalid user name/password'. This error message is not specific enough; we need a better error message when user who does not belong to the login company tries to publish.
System Applications


Script Templates Revert/Remove BRule "Set functional template of Calculated" used to add Function Templates on CalculatedFields The business rule "Set functional template of Calculated" used to add Function Templates on CalculatedFields needs to be removed.
System Applications


App client always shows 2-digit version number, even though app is in 3-digit version number format App client always shows a 2-digit version number, even though the app is in 3-digit version number format. For example, the app has a version number of '3.0.1', but it displays as '3.0' in the Downloads tab.
System Applications


Scoped app is not getting updated Scoped apps are not getting updated completely with all the code in that update. This started happening after upgrading war version of the instance from Fuji Patch 9 to GP0.
  1. Make some changes to an existing scoped app.
  2. Go to Applications > Updates and install the changes.

Notice it is not showing all the changes from the upgraded build. But if you manually install the app zip, it picks up all the changes.

Tables and Dictionary


Creating new table columns in sys_db_object related list view can result in a corrupt column When creating several new columns using the related column list on sys_db_object form, the resulting columns may be corrupted. The key step leading to the corruption is clearing the label of the last entry, as if the user had changed his mind about creating this column. Once the table form is updated, the record for which the label was cleared will not be created, but the previous record will be corrupt - there will be an invalid sys_storage_alias record with blank element name and storage alias values.

On a Fuji instance:

  1. Log in as admin (this issue does not appear for users with elevated privileges).
  2. Open the cmn_department table (User Administration > Departments).
  3. Open the context menu and Configure > Table.
  4. In related columns list, enter two new lines:
    • Label: Test1, Type String, Length 40
    • Label: Test2, Type String
  5. Clear the label 'Test2' (make the field empty) as if you changed your mind to create it.
  6. Click Update.
  7. Go back to Configure > Table.
    • Notice that the column 'test1' shows the label as '(empty)' and that 'test2' does not exist.
    • ** When the steps above are performed by a user with elevated privileges, both Test1 and Test2 are created.
  8. Open the sys_storage_alias list and find the last created record on cmn_table.
    • Notice the blank element and storage alias values.
  9. Try to create additional columns on cmn_department table to confirm they will all be corrupt until the invalid sys_storage_alias record is removed.
Tables and Dictionary


Form Designer - Unable to save changes in Geneva
  1. Open an incident.
  2. Go to Form designer.
  3. Edit any field.
  4. Save.
Test Management


Test Management Test Management - Blank page with a 'Field name' form when a Test Case is selected and assigned to a user After selecting an assigned_to user for a Test Case in the Test Management application, a page asking to input a 'Field name' is shown.

Make sure that the Test Management [com.snc.test_mgmt] plugin is active.

  1. Navigate to Test Management > Test Plans.
  2. Open a test plan and navigate to the 'Test Cases' related list.
  3. Select one or more test cases and choose Assign To from the action choice list.
  4. Pick an "Assigned to" user from the popup list. Click OK.
    • A new page loads, asking to input a "Field Name".
  5. Look up the "Field name" using the reference qualifier.
    • A popup window comes up and the page is not found - its URL points to an empty page.
Transaction and Session Management


Transaction patterns: unnecessarily large count of transaction patterns due to url component Slow Transactions is a new feature in Geneva that aggregates transaction logging data to a new non-rotating table. It does not support AMB and REST transactions, and fails to handle pattern-matching scenarios for user-generated Scheduler transactions. On HI, this generated too many pattern entries and requires frequent clean-up.
Update Sets


Saving the sys_update_xml for a large workflow takes a long time to complete For users producing very large workflows with hundreds of activities, conditions, and transitions (producing XML data in excess of 1.5 M), the publish time is excessive and takes over one minute. Most of the time spent is in generating the sys_update_xml record.
  1. Go to Workflow > Workflow Versions.
  2. Right-click the list header row and select Import XML. Import the attached workflows.
  3. Go to Workflow > Workflow Editor.
  4. On the right, search the name of the first XML and click to open it.
  5. Check it out.
  6. Publish it
  7. repeat steps 4-6 for the second XML.

Note that the publishes takes over one minute.

Update Sets


Unable to re-import multiple records into sys_documentation by exporting and importing XML Deleting a number of rows from the sys_documentation table and then importing XML from a backup does not get the deleted rows back into the table.
  1. Go to sys_documentation in list view.
  2. Export all the rows.
  3. Now, delete 10 rows.
  4. Import the XML that you exported earlier.

You will notice that the deleted records do not come back to the table.

Upgrade Engine Issues


Upgrade History form will not render if glide.ui.escape_text is false
  1. Set glide.ui.escape_text to 'false'.
  2. View the Upgrade History form. Note the error.
User Interface (UI)


Click to print function in printer-friendly version page does not print images When attempting to print a record with images within HTML fields using the printer-friendly version, the click to print button does not show images, and the resulting printed document (paper or PDF) does not have images.
  1. Upload an image to the image db in the platform - keep track of the name.
  2. Create a knowledge article that has that image in the text field and Save.
  3. View this via kb_knowledge.list
  4. In the cog wheel in the top right, choose Printer friendly version.
  5. In the resulting page, click the Click to Print button in the top right.

Note that the preview nor the printed version show the image.

User Interface (UI)


Changing field name in a filter causes the focus / tab order to be lost When using the filter builder to create a query in a list, the tab order is set to the top left of the pane after choosing an item from the field drop down. This prevents you from easily using tab to get to the operator box and select data there.
  1. Bring up any list (or anything with a filter builder).
  2. Expand the filter builder.
  3. Click on the first of the three boxes in the filter builder to select a field name.
  4. Select a field name by any method.
    • At this point, the focus is set to what appears to be the beginning (top left) of the pane.
  5. Hit tab, expecting to go to the next box in the filter builder.
    • Note that you are instead taken to the hamburger icon at the top left.
User Interface (UI)


NG shared components Work notes bar (yellow strip) is not aligned correctly on activity stream with compact mode, causing the comment / work note highlight color to overlap with input text When the setting 'Compacts the user interface' is turned on in UI16 (from under the gear icon - General settings), the yellow stripe/bar appears slightly to the right and comes to the foreground, covering the text typed/being typed under the work notes section. This behavior is noticed in all forms (INT/CHG/PRB/Tasks) When working in 'compact interface', the left bar highlighting color for a new comment or work note goes over the text being typed.
  1. Log into a Geneva instance.
  2. Navigate to Incident.
  3. Open an active incident form.
  4. Switch on the 'Compacts the user interface' setting from the upper-right-hand settings cogwheel.
  5. Input text as work notes.

Observe that the text is overlapped by the yellow/highlight color bar.

User Interface (UI)


Magellan Navigator Memory leak when using the navigator with Chrome in Geneva Browser memory (Chrome) consumption increases until end user experience is degraded, requiring a browser restart.

Using Chrome:

  1. Open the task manager for Chrome (More tools > Task manager).
  2. Click various modules and wait for the page to load.
  3. Repeat step 2 and monitor.

Note that the memory usage climbs.

User Interface (UI)


Activity formatter When using the Activity filter, all activities become blank after unticking all options On Fuji Patch 9, the activity filter does not render the activities list when the user clicks the button to collapse activities.

On a Fuji instance:

  1. Go to the incident table.
  2. Open any incident.
  3. Expand activities filter - Select All.
  4. Collapse all activities.
  5. Expand activities filter - Deselect All.
  6. Select All again.

Notice that all activities are blank.

User Interface (UI)


Remove sys_ui_navigator_history from auditing sys_ui_navigator_history should be removed to increase performance.
User Interface (UI)


In Geneva, there is no way to disable the language picker In Geneva there is no way to disable the language picker. There are users who have language plugins installed, and for business reasons, they do not want to show the language picker anymore. Disabling the language picker was possible in Fuji and earlier by disabling the UI macro: [ui_language_select].
  1. Log in to an OOB Fuji instance.
  2. Install any Language (I18N) plugin.
    • Notice that on the main setting cog, you have the language picker available.
  3. Navigate to UI macro.
  4. Filter by the name [ui_language_select]. You will find two records - make them inactive.
  5. Now refresh the browser and repeat step 3.
    • Note that you do not see the language picker anymore.
  6. Repeat steps 1-5 in a Geneva instance.

Notice that in step 5, the language picker is still available.

User Interface (UI)


onChange client script is not triggered in if reference field is changed from filled to empty by a script, this worked in Fuji.
User Interface (UI)


UI11 - Navpage layout with multiple pane glide.product.help_show property incorrectly hides 'Switch to UI 16' button In the System Settings window, there is a 'Switch to UI15' button that allows admin users to 'downgrade' to UI15. Similarly, there is a 'Switch to UI16' button on the Settings drop down to switch to UI16. However, this button disappears. The glide.product.help_show property incorrectly hides the 'Switch to UI 16' button.
  1. Log into an early Geneva instance as any user with the admin role.
  2. From System Settings, switch to UI15.
  3. Try to switch back to UI16 from System Settings.

Observe that the 'Switch to UI16' button is missing.

User Interface (UI)


NG shared components Mandatory comment/work notes fields not enforced if content deleted The mandatory enforcement for the Additional Comment and Work Notes (journal input) fields is not enforced if the field content is cleared. After the form is saved, the value 'undefined' is shown in the Activity formatter.
User Interface (UI)


NG shared components Chat activity after ticket creation is not captured in the activity stream After a ticket is created in chat, chat activity is not saved in the activity stream.
  1. As an agent, accept an incoming chat request from an end user.
  2. Create a ticket and submit it.
    • The ticket is dropped into the chat window.
  3. Open this ticket in a new tab, using the activity stream view.
  4. Continue a conversation with the end user.

Notice that your conversation is not getting saved in the record activity stream after a ticket is created.

Visual Task Boards


Tasks show up in activity stream that user does not have access to In Visual Task Boards, tasks are appearing in activity streams and are visible to users who should not have access to them.
  1. Log in as an ITIL user.
  2. Create a Freeform VTB.
  3. Add System Admin as a member of the board.
  4. Log in as Sys Admin and go to the Incidents table.
  5. Right-click any incident (that ITIL does not have access to) and click Add to Visual Task Board.
  6. Log back in as the ITIL user, and go to the VTB you created.

The incident task does not show up in the board, but it does show up in the activity stream. It is grayed out like an archived task.

Visual Task Boards


Visual Task Boards Script Include VTBGetBoardsByUser does not appear to be working as expected. When a user clicks a record in the list view and chooses the "Add to Visual Task Board" UI Action. The user is shown a popup of task boards. This list is filtered in part by the VTBGetBoardsByUser script include. This should be returning the boards that the user is a owner or member of, but only returns the boards the user owns.
Web Services


SOAP session timeouts inadvertently set to a large value can lead to an outage Guardrails need to be added to prevent users from inadvertently setting overly large timeouts for SOAP sessions.
  1. Set the property glide.soap.invalidate_session_timeout to 60000.
  2. Simulate a large volume of SOAP transactions that do not reuse session.
Web Services


Risk of deadlocks due to lengthy synchronized block in RouteRegistry RouteRegistry holds a long synchronized lock when it is not in the cache. This needs to be replaced with a JVMLock to prevent risk of deadlock.


Graphical Workflow Support (Workflow Authoring Tools) In Fuji, if you use UI11 and load a change_request record with a workflow, the Show Workflow UI Action script generates a server warning error This happens onLoad of the form of any change_request record during the processing of the out-of-box Show Workflow UI Action.
  1. Log into a Fuji instance.
  2. Create a new change_request record with an associated workflow, and create it as a Comprehensive change.
  3. Navigate back to the change_request,and verify that it has a workflow associated to it.
    • You should see the Show Workflow related link.
  4. Add ?sysparm_device=none to the end of your instance URL to force UI11 immediately.
  5. Use a command window and SSH to tail the server log for your node.
  6. Navigate back to the change_request and open the form view of the record.

You will see the error message appear in the log.



There is no logging to explain why the WorkflowEngine decides not to create a context When a record is inserted, the WorkflowEngine is supposed to run and create any appropriate workflow contexts against the inserted record. There are several reasons why a context would not be created, but you cannot easily tell after the fact why a context wasn't created because there is no logging logging there.


Workflow converting null objects to null strings Workflow is converting null objects to null strings.
  1. Start a workflow using the startFlow() method the Workflow script include, and set one the workflow's inputs to a null:
    • new Workflow().startFlow("sys_id_of_a_wf_workflow", null, 'insert', {"u_myvar":null});
  2. Then, go to the resulting workflow context record and look at its inputs.

The value of input u_myvar will be "null", but it should be an empty field.

Other Geneva Patch 3 information

Service Catalog Management: Define help information
  • Note: Help Text and Help Tag are not designed to support HTML tags. If you choose to use HTML tags, the glide.ui.escape_text property in High Security Settings is honored. See KB0562895.

Fixes included with Geneva Patch 3

* 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.

  • Geneva Patch 1 Hot Fix 4 was retired and replaced by Geneva Patch 1 Hot Fix 5.