Notifications

243 views

Description

Activating Domain Support - Domain Extensions Installer automatically loads demo data into the instance.

The Demo Data includes:

  • a sample domain hierarchy including a Default domain (/TOP/MSP/Default)
  • core_company records mapped to some of the sample domains
  • associated sys_user and sys_user_has_role records for some of these sample domains.

There is code in place that causes users to automatically be moved from global into the /TOP/MSP/Default domain when their sys_user record is updated on login.

Once they are in this domain, any tasks or other domain-separated data they create will also be created in /TOP/MSP/Default.

Steps to Reproduce

 

  1. Request Domain Separation to be activated.
  2. Navigate to domain.list; note there are 10 records to set up a sample domain hierarchy.
  3. Navigate to domain_contains.list; note there is a sample record, so the MSP domain contains the TOP domain.
  4. Navigate to core_company.list, add the Domain column to the list, and filter out the records where Domain is global; you will have five core_company records.
  5. Navigate to sys_user.list, add the Domain column to the list, and filter out the records where Domain is global; you will have twelve sys_user records.
    These also have associated sys_user_has_role records.
  6. Have a user of your instance in the global domain, and login to the instance.
    Their sys_user record is updated and the domain changed to /TOP/MSP/Default.

Workaround

  1. Load the attached DomainDisableUtilitiesv2_UpdateSet.xml, preview, and commit.
  2. Execute the following commands in Scripts - Background:  disableDomainSupport();

This executes the following scripts:  

  • turnoffDomainProperties(); - Turn off some glide.sys.domain properties first.
  • deleteDomainDemoData(); - Delete the domain demo data that was loaded, including the sample hierarchy.
  • GlideProperties.set("glide.domain.default", "global"); - Property set in memory by the getDefaultDomain script include; this clears the property instead of a restart.
  • GlideProperties.set("glide.domain.primary", "global"); - Property set in memory by the getPrimaryDomain script include; this clears the property instead of a restart.
  • GlideDomainSupport.resetTablesToGlobal(); - Java call to reset everything to global domain; this is the code for Reset all records to global domain.


The "Extensions Installer" (com.glide.domain.msp_extensions.installer) is a meta plugin acting as a guardrail to check if the "Core Domain" (com.glide.domain) plugin is already activated, and skip installing the actual "Extensions" (com.glide.domain.msp_extensions) plugin. 
The actual demo data is still associated with the "Extensions" plugin and the option to load demo data is presented during the plugin activation.
For brand new domain customers, just the "Extensions" plugin can be safely activated.

Related Problem: PRB1068318

Seen In

Eureka Patch 12 Hot Fix 3
Fuji Patch 10
Fuji Patch 5
Geneva Patch 6
Geneva Patch 6 Hot Fix 2

Intended Fix Version

Madrid

Safe Harbor Statement

This "Intended Fix Version" information is meant to outline ServiceNow's general product direction and should not be relied upon in making a purchasing decision. The information provided here is for information purposes only and may not be incorporated into any contract. It is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. The development, release, and timing of any features or functionality described for our products remains at ServiceNow's sole discretion.

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2018-03-22 14:06:38
Published:2018-02-23