laptop and a wrench

Bug

Feature services with ArcGIS Arcade symbology fail to display in Map Viewer.

Last Published: October 3, 2022 Portal for ArcGIS
Bug ID Number BUG-000150969
SubmittedJuly 21, 2022
Last ModifiedDecember 8, 2025
Applies toPortal for ArcGIS
Version found10.9.1
Operating SystemWindows Server
Operating System Version2019 64 Bit
StatusAs Designed

Additional Information

This issue is expected due to the complexity of the expression and some differences between ArcGIS API for JavaScript 3.x used in Map Viewer Classic and ArcGIS API for JavaScript 4.x used in Map Viewer. The expression in question works in Map Viewer Classic because the older ArcGIS API for JavaScript 3.x queries every field in the layer no matter what. This may seem more flexible for a complex expression like this but it comes at a major performance cost, especially when the expression initiates a query against a layer with many fields and data. ArcGIS API for JavaScript 4.x used in Map Viewer is smarter as it detects the fields it knows it requires and only queries those fields to help save on query performance. However, there are limits to this field detection, especially when fields are referenced in an expression without using the $feature.fieldname notation and doubly so when referenced within an array (as is the case in the provided expression). Refer to the Workaround section for best practices on how to properly declare fields in an Arcade script to prevent this issue.

Workaround

There are some best practices for fixing or safeguarding against this, and the solution depends on the ArcGIS Enterprise version used.

  • In ArcGIS Enterprise 10.9.1 and earlier, it is best to explicitly declare all fields used in the execution of the expression. This best practice is noted in this ArcGIS Arcade documentation under the 'Global variables' section: https://developers.arcgis.com/arcade/guide/logic/#variables.
  • In ArcGIS Enterprise 11.0, a new Expects function is added. Refer to this ArcGIS Arcade documentation: https://developers.arcgis.com/arcade/function-reference/data_functions/#expects. The Expects function is an optimized way of declaring fields, functioning the same as the example above.

Steps to Reproduce

Bug ID: BUG-000150969

Software:

  • Portal for ArcGIS

Get notified when the status of a bug changes

Download the Esri Support App

Discover more on this topic

Get help from ArcGIS experts

Contact technical support

Download the Esri Support App

Go to download options