Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Notifications
Login / Register
Community
Community
Notifications
close
  • Forums
  • Knowledge Center
  • Events & Webinars
  • Ideas
  • Blogs
Help
Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Login / Register
Sustainability
Sustainability

Join our "Ask Me About" community webinar on May 20th at 9 AM CET and 5 PM CET to explore cybersecurity and monitoring for Data Center and edge IT. Learn about market trends, cutting-edge technologies, and best practices from industry experts.
Register and secure your Critical IT infrastructure

SEALScript slow performance when referencing non-existing servers

EcoStruxure SEAL Forum

This forum is for engineers working EcoStruxure Building Operation, wanting to leverage the SEAL application to improve the efficiency in the engineering process.

cancel
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Home
  • Schneider Electric Community
  • EcoStruxure Building
  • EcoStruxure SEAL Forum
  • SEALScript slow performance when referencing non-existing servers
Options
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Bookmark
  • Subscribe
  • Mute
  • Printer Friendly Page
Invite a Co-worker
Send a co-worker an invite to the portal.Just enter their email address and we'll connect them to register. After joining, they will belong to the same company.
You have entered an invalid email address. Please re-enter the email address.
This co-worker has already been invited to the Exchange portal. Please invite another co-worker.
Please enter email address
Send Invite Cancel
Invitation Sent
Your invitation was sent.Thanks for sharing Exchange with your co-worker.
Send New Invite Close
Top Experts
User Count
StefanLundin
Lt. Commander StefanLundin Lt. Commander
25
Benji
Administrator Benji Administrator
9
MortenEnger
Lieutenant JG MortenEnger Lieutenant JG
3
APA
Lieutenant JG APA Lieutenant JG
3
View All
Related Products
product field
Schneider Electric
EcoStruxure SEAL

Invite a Colleague

Found this content useful? Share it with a Colleague!

Invite a Colleague Invite
Solved Go to Solution
Back to EcoStruxure SEAL Forum
Solved
FilipSteijner
Ensign FilipSteijner Ensign
Ensign

Posted: ‎2025-05-15 02:55 AM

1 Like
2
86
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2025-05-15 02:55 AM

SEALScript slow performance when referencing non-existing servers

Hi!

 

I'm developing a script that makes thousands of calls to sdkClient.IAdvanced.SetPropertyValue. I've noticed a significant performance issue:

  • When the Value parameter (a VariablesPropertyReference) points to an existing server, the call completes in 3-5ms, even if that server is offline/unreachable.
  • When the Value parameter points to a non-existent server, the call takes approximately 4500ms.

For example, with this structure:

 

 
ES
--Servers
----AS01
----AS02
  • Setting Value to "/AS01/..." → Call takes 3-5ms
  • Setting Value to "/AS99/..." → Call takes 4500ms

Context

My script needs to make thousands of these calls, potentially referencing about 20 different servers. In a test environment, I don't have that many actual physical test servers that i can name to match all the production server names.

I guess i could setup those servers in PCT to match the names of the real production environment, but it seems like a very tedious task to do and there should be a better alternative.

When running against non-existent servers, this adds multiple hours to the execution time, which is not feasible for testing.

Question

Is there a way to improve performance when the script references non-existent servers?

I'm looking for solutions that don't require:

  1. Setting up 20 test servers with matching production names (seems like a bad practice)
  2. Running in the production environment (I cannot use SEAL within the customer environment)

Has anyone encountered this issue before? Are there any configuration settings, caching mechanisms, or alternative approaches that could help reduce the execution time when referencing non-existent servers?

 

I understand that this limitation is probably within the SDK/API itself, and not a actual "SEAL-problem".

 

Any suggestions would be greatly appreciated!

Labels
  • Labels:
  • Script
  • Tags:
  • english
  • seal
  • SEALSCRIPT
Reply

Link copied. Please paste this link to share this article on your social media post.

  • All forum topics
  • Previous Topic
  • Next Topic

Accepted Solutions
StefanLundin
Lt. Commander StefanLundin Lt. Commander
Lt. Commander

Posted: ‎2025-05-15 06:55 AM

0 Likes
0
49
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2025-05-15 06:55 AM

Hi Filip, 

Thanks for sharing your issue with the performance when referencing non-existent servers. We've consulted with the SDK development team, and it seems the SDK performs a GetObject call before setting the property value, which takes ~2s per attempt for an unknown server, with a retry that results in the ~4.5s delay you're seeing. Unfortunately, the SDK currently lacks an API to pre-check server status, relying entirely on the EBO server response.

For now, there’s no direct workaround within the SDK to bypass this delay without setting up test servers matching the production names. Configuring those 20 virtual servers in PCT, while tedious, appears to be the only way to avoid the performance hit in your test environment. We understand this isn’t ideal, and the SDK team is exploring ways to make the SDK smarter about handling such cases, but any improvements in such case would likely be part of a future release (7.1 or later).

Feel free to share any other ideas or workarounds you come across!

See Answer In Context

Reply

Link copied. Please paste this link to share this article on your social media post.

Replies 2
StefanLundin
Lt. Commander StefanLundin Lt. Commander
Lt. Commander

Posted: ‎2025-05-15 06:55 AM

0 Likes
0
50
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2025-05-15 06:55 AM

Hi Filip, 

Thanks for sharing your issue with the performance when referencing non-existent servers. We've consulted with the SDK development team, and it seems the SDK performs a GetObject call before setting the property value, which takes ~2s per attempt for an unknown server, with a retry that results in the ~4.5s delay you're seeing. Unfortunately, the SDK currently lacks an API to pre-check server status, relying entirely on the EBO server response.

For now, there’s no direct workaround within the SDK to bypass this delay without setting up test servers matching the production names. Configuring those 20 virtual servers in PCT, while tedious, appears to be the only way to avoid the performance hit in your test environment. We understand this isn’t ideal, and the SDK team is exploring ways to make the SDK smarter about handling such cases, but any improvements in such case would likely be part of a future release (7.1 or later).

Feel free to share any other ideas or workarounds you come across!
Reply

Link copied. Please paste this link to share this article on your social media post.

Benji
Administrator Benji Administrator
Administrator

Posted: ‎2025-05-15 08:41 AM

0 Likes
0
36
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2025-05-15 08:41 AM

Don't know if it would be feasible to do a getchild for /Servers at the start, create a List<string> and then only run updates for any paths starting with a string in the list... just an idea (but I assume you already thought of that :-))

Reply

Link copied. Please paste this link to share this article on your social media post.

Preview Exit Preview

never-displayed

You must be signed in to add attachments

never-displayed

 
To The Top!

Forums

  • APC UPS Data Center Backup Solutions
  • EcoStruxure IT
  • EcoStruxure Geo SCADA Expert
  • Metering & Power Quality
  • Schneider Electric Wiser

Knowledge Center

Events & webinars

Ideas

Blogs

Get Started

  • Ask the Community
  • Community Guidelines
  • Community User Guide
  • How-To & Best Practice
  • Experts Leaderboard
  • Contact Support
Brand-Logo
Subscribing is a smart move!
You can subscribe to this board after you log in or create your free account.
Forum-Icon

Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.

Register today for FREE

Register Now

Already have an account? Login

Terms & Conditions Privacy Notice Change your Cookie Settings © 2025 Schneider Electric

This is a heading

With achievable small steps, users progress and continually feel satisfaction in task accomplishment.

Usetiful Onboarding Checklist remembers the progress of every user, allowing them to take bite-sized journeys and continue where they left.

of