Seeing log entry: org.mozilla.javascript.EcmaError: "OR" is not defined.

Allen Andreas
Administrator
Administrator

Hi all,

I'm on New York Patch 1 Hotfix 1a and I'm seeing this in my system log (that is spammed about 50 times per occurrence):

org.mozilla.javascript.EcmaError: "OR" is not defined.
Caused by error in <refname> at line 1

==> 1: OR

Example:

find_real_file.png

So I understand what this says...but I'm unable to find where it's coming from. 

From my own investigation...this seems to happen in list view (can't seem to replicate error on RITM list view, but see it on All Incidents list view and All stories list view) and then I go and check the logs and voila...it's spammed there.

This seems something like this issue:

https://hi.service-now.com/kb_view.do?sysparm_article=KB0721365

Curious if anyone who has upgraded to New York (preferably the same version/patch I'm on) see this same evaluator warning in their syslog?

Also curious, without submitting an HI ticket...would anyone know how to even find WHAT is giving this evaluator log entry?

-Allen


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!
1 ACCEPTED SOLUTION

Mwatkins
ServiceNow Employee
ServiceNow Employee

Based on the Jelly templates in your debug output we know it must be from one of those files. That combined with the fact that we know if must be a file that contains the term "OR" I was able to narrow this down to a particular line of code in the file list2_row.xml; which handles the rendering of list rows.

The line of code only executes if the glide.ui.list.detail_row property is set to true. When I set it to true in my demo I get the same errors in my logs. This seems to be a product defect that occurs when the property glide.ui.list.detail_row has been added to an instance and set to true.

https://docs.servicenow.com/bundle/newyork-platform-administration/page/administer/list-administrati...

The only way you could avoid these EcmaErrors is to disable that property but you would lose the functionality it grants. Please open an Case with ServiceNow support so they can create a Problem record for development to fix.

P.S. If you haven't already, remember to set glide.ui.template.trace to "false" as soon as possible since it creates excessive logging.

View solution in original post

23 REPLIES 23

Mwatkins
ServiceNow Employee
ServiceNow Employee

As you know, that is a very generic type of warning message, and there are many things that can trigger similar warning messages. The key is to figure out what piece of code "OR" is coming from. Unfortunately the term "OR" is unlikely to be very unique otherwise you could do a keyword search on the sys_metadata table to identify the responsible code. So we need another way to figure it out.

Since you can reproduce this at will I would recommend activating some debug properties to see if you can find out what is happening when this occurs.

System Diagnostics > Session Debug > Enable All

You ought to be provided with debugging data at the bottom of the screen including the warning plus everything before and after the warning. This might help us narrow down where the warning is coming from.

Another idea is to turn on the verbose jelly logging property, glide.ui.template.trace. This property is system-wide and very verbose, so if you turn it on make sure you turn it back off as soon as you are done. The property may not exist in your system so you may need to add it.

glide.ui.template.trace (boolean)

This will show you exactly what jelly templates (UI Page/UI Macro/built-in jelly) were running when the warning was emitted.

Hi,

Thank you for that information.

When tracking in my production instance, these started at 11:23PM 10-24-19 and that was right in the same window that we did the New York Upgrade...so I'm curious if this came from that.

I've been the sole Admin/Developer for my company and would never have "OR" undefined as a line 1 entry in script for anything...

I see you're with SN. Have you heard of anything in regards to New York with this? From your contacts?

I'll try to dig in more, but looks like this may be an eventual HI ticket.


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!

It is very possible this is something related to New York that has not yet been identified. I looked through all known problems that contained "org.mozilla.javascript.EcmaError: ... is not defined." and didn't see any where "OR" was not defined.

Thanks for checking!

I'll document any additional steps I do here and if an HI ticket is submitted; how that is going.

Thanks!


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!