Skip to content

Exceptions opening Analytics Architect #980

Closed

Description

@cambot

So far, no one has created any analytics cubes yet in our system. When I opened the architect for the first time, I saw this exception:

Image

Error invoking Source Control: ERROR #5002 ObjectScript error: IsProductionClass+1^SourceControl.Git.Production *(No name)

IsProductionClass() does not have any null input safety checks:

SHCDF>zw $system.CLS.IsMthd("", "%Extends")

ZW $SYSTEM.CLS.IsMthd("", "%Extends")
^
<CLASS DOES NOT EXIST> *(No name)

I would think this function should return 0-false if className is blank:

ClassMethod IsProductionClass(className As %String, nameMethod As %String) As %Boolean
{
    quit:(className = "") 0
	if $system.CLS.IsMthd(className, "%Extends") {
		try {
			return $classmethod(className, "%Extends", "Ens.Production")
		} catch err {
			if '(err.AsStatus() [ "CLASS DOES NOT EXIST") throw err
		}
	} else {

While I was reading the code where this gets called from, I also noticed that Git.Utils.Type() also has weird behavior when it's input is blank:

SHCDF>zw ##class(SourceControl.Git.Utils).Type("")
"csp"

It should probably return "", though I did not analyze the implication of this.

Activity

  1. added
    customerBased on customer feedback (as opposed to something identified by developers)
    on Jul 21, 2026
  2. added theissue type on Jul 21, 2026
  3. self-assigned this
    on Jul 22, 2026
  4. cambot commented on Aug 19, 2026

    @cambot
    ContributorAuthor

    Additionally, when I attempt to "Add" the cube through the source control menu in the Architect page, I get the message:

    Did not find a matching mapping for "{{Cube name}}.CLS". Skipping export.

    It looks like Embedded Git is getting the name of the cube from the UI rather than the full class, so when it attempts to export the class, it cannot. Not sure if this is an Embedded Git issue (not correctly resolving the class name) or an Iris issue (passing in the wrong value to the Source Control hooks).

    It looks like this is the code flow:

    • AddToSourceControl()
    • ExportItem()
    • FullExternalName()
      • When the following method calls return MappingExists=0, prints out the above message and quits without exporting the class.
    • ExternalName()
    • Name():
      1. Determines MappingExists = 0 (which makes sense because the cube name is just free text and would not match any of the package patterns we have configured for Embedded Git)
      2. Just concatenates the incorrect class name with the (correct) git directory and returns

    $zv: Iris for Windows (x86-64) 2025.1.2 (Build 374U)

    Work Around: When I open the class in VS Code, and use the source control menu to add it, that works. (Embedded git is passed the correct value for the class). I would hazard a guess that if I put the full class name as the cube name, the export would work.

  5. isc-pbarton commented on Aug 19, 2026

    @isc-pbarton
    Collaborator

    Did not find a matching mapping for "{{Cube name}}.CLS". Skipping export.

    This is an IRIS issue which is fixed in 2026.1.0, internal reference DP-446572. I will consult with @isc-egabhart to see if we can work around it in the source control extension.

    Error invoking Source Control: ERROR #5002 ObjectScript error: IsProductionClass+1^SourceControl.Git.Production *(No name)

    This is going to be an Embedded Git issue. I will look into a fix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

customerBased on customer feedback (as opposed to something identified by developers)

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions