Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Blog
  • Questions
  • Learning
    • E-learning Courses
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Tutorials
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • DataMiner Insights
      • Security
      • Integration Studio
      • System Architecture
      • DataMiner Releases & Updates
      • DataMiner Apps
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
  • Downloads
  • More
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
      • General Inquiries
      • DataMiner DevOps Support
      • Commercial Requests
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

Multi-Threaded Timer unhandled exception

Solved2.01K views10th June 2021exception HTTP multithreaded protocol
1
Saddam Zourob [DevOps Member]363 9th June 2021 0 Comments

We have an HTTP protocol with two multi-threaded timers where one of them runs first and updates the table (Status column) and the other timer would then scan the table for the new status that belongs to it to run the row.

We occasionally see the following exceptions in the logs and they clear once we restart the element. Pid 1001 is the index column of the multi-threaded timer table. QA 1006 is the QAction that parses the response of the second timer.

We use SLProtocolExt in all QAs instead of SLProtocl.

2021/06/09 09:24:54.963|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|97156|CQAction::RunWrapped|DBG|-1|Script 1006 triggered by parameter 1001 from element 'Dataminer Watchdog Errors - Production' threw an unhandled exception. Please check the element log-file.
2021/06/09 09:24:54.963|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|97156|CQAction::Run|ERR|-1|QAction [1006] triggered by [pid=1001/idx=0/pk=1/user=] failed. (0x800402DA)
Input: new =
Input: old = (2) ~ 0 (1) ~ 0 HTTP/1.1 200 OK ~ 1 (1) ~ 0 <?xml version='1.0' encoding='UTF-8'?>
<results preview='0'>
<meta>
<fieldOrder>
<field groupby_rank="0">_time</field>
<field groupby_rank="1">host</field>
<field groupby_rank="2">issue</field>
<field>count</field>
</fieldOrder>
</meta>
<result offset='0'>
<field k='_time'>
<value><text>2021-06-07T00:16:01.000+00:00</text></value>
</field>
<field k='host'>
<value h='1'><text>CHIV3DMAP06a</text></value>
</field>
<field k='issue'>
<value><text>HALFOPEN RTE</text></value>
</field>
<field k='count'>
<value><text>4</text></value>
</field>
</result>
<result offset='1'>
<field k='_time'>
<value><text>2021-06-07T00:24:23.000+00:00</text></value>
</field>
<field k='host'>
<value h='1'><text>CHIV4DMAP06b</text></value>
</field>
<field k='issue'>
<value><text>HALFOPEN RTE</text></value>
</field>
<field k='count'>
<value><text>1</text></value>
</field>
</result>
<result offset='2'>
<field k='_time'>
<value><text>2021-06-07T00:24:38.... (34573 chars)
Input: extra = <NULL>

2021/06/09 09:25:00.970|SLManagedScripting.exe|ManagedInterop|ERR|-1|148|Exception during execution:
Cookie: 41
Content 1: VT_ARRAY|VT_VARIANT (7)
0 VT_I4 : 1001
1 VT_I4 : 22833
2 VT_I4 : 129
3 VT_BSTR : Dataminer Watchdog Errors - Production
4 VT_BSTR : ...
Content 2: VT_ARRAY|VT_VARIANT (6)
0 VT_I4 : 0
1 VT_BSTR : 1
2 VT_EMPTY
3 VT_EMPTY
4 VT_R8 : -1.000000... .
System.ArgumentException: Object of type 'Skyline.DataMiner.Scripting.SLProtocol' cannot be converted to type 'Skyline.DataMiner.Scripting.SLProtocolExt'.
at System.RuntimeType.TryChangeType(Object value, Binder binder, CultureInfo culture, Boolean needsSpecialCast)
at System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo culture, BindingFlags invokeAttr)
at System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
at System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at CManagedScript.Run(CManagedScript* , Int32 iCookie, IUnknown* pILog, IUnknown* pProtocol, tagVARIANT* varParameters, tagVARIANT* varRowInfo, tagVARIANT* pvarReturn)
InnerException:
No InnerExcpetion
2021/06/09 09:25:00.971|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|89660|CQAction::RunWrapped|DBG|-1|Script 1006 triggered by parameter 1001 from element 'Dataminer Watchdog Errors - Production' threw an unhandled exception. Please check the element log-file.
2021/06/09 09:25:00.971|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|89660|CQAction::Run|ERR|-1|QAction [1006] triggered by [pid=1001/idx=0/pk=1/user=] failed. (0x800402DA)
Input: new =
Input: old =
Input: extra = <NULL>

2021/06/09 09:25:06.987|SLManagedScripting.exe|ManagedInterop|ERR|-1|190|Exception during execution:
Cookie: 41
Content 1: VT_ARRAY|VT_VARIANT (7)
0 VT_I4 : 1001
1 VT_I4 : 22833
2 VT_I4 : 129
3 VT_BSTR : Dataminer Watchdog Errors - Production
4 VT_BSTR : ...
Content 2: VT_ARRAY|VT_VARIANT (6)
0 VT_I4 : 0
1 VT_BSTR : 1
2 VT_EMPTY
3 VT_EMPTY
4 VT_R8 : -1.000000... .
System.ArgumentException: Object of type 'Skyline.DataMiner.Scripting.SLProtocol' cannot be converted to type 'Skyline.DataMiner.Scripting.SLProtocolExt'.
at System.RuntimeType.TryChangeType(Object value, Binder binder, CultureInfo culture, Boolean needsSpecialCast)
at System.RuntimeType.CheckValue(Object value, Binder binder, CultureInfo culture, BindingFlags invokeAttr)
at System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig)
at System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
at CManagedScript.Run(CManagedScript* , Int32 iCookie, IUnknown* pILog, IUnknown* pProtocol, tagVARIANT* varParameters, tagVARIANT* varRowInfo, tagVARIANT* pvarReturn)
InnerException:
No InnerExcpetion
2021/06/09 09:25:06.988|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|89748|CQAction::RunWrapped|DBG|-1|Script 1006 triggered by parameter 1001 from element 'Dataminer Watchdog Errors - Production' threw an unhandled exception. Please check the element log-file.
2021/06/09 09:25:06.988|SLProtocol - 3624 - Dataminer Watchdog Errors - Production|89748|CQAction::Run|ERR|-1|QAction [1006] triggered by [pid=1001/idx=0/pk=1/user=] failed. (0x800402DA)
Input: new =
Input: old =
Input: extra = <NULL>

QA 1006 Run method code:

public void Run(SLProtocolExt protocol)
{
try
{
var rowKey = protocol.RowKey();
var result = protocol.OldRow();

if (result == null) return;

....

Is this a software-related issue or we need to change to use SLProtocol instead of SLProtocolExt?

Saddam Zourob [DevOps Member] Selected answer as best 10th June 2021

2 Answers

  • Active
  • Voted
  • Newest
  • Oldest
0
Geovanny Galeano [SLC] [DevOps Advocate]725 Posted 9th June 2021 1 Comment

Hi Saddam,

It will be better if you open the element log file and see what it says there, I think what you provided was the Watchdog errors.

In the logs that you provided i saw this...

System.ArgumentException: Object of type 'Skyline.DataMiner.Scripting.SLProtocol' cannot be converted to type 'Skyline.DataMiner.Scripting.SLProtocolExt'.

This would actually be caused by using SLProtocol when something from SLProtocolExt was called.

SLProtocolExt is just an interface that inherits from SLProtocol so everything available in SLProtocol is also available in SLProtocolExt but not the other way around.

If you are using SLProtocolExt you should be ok, something else is probably going on, can you check the actually element log file?

Saddam Zourob [DevOps Member] Posted new comment 10th June 2021
Saddam Zourob [DevOps Member] commented 10th June 2021

Hi Geovanny,

The above logs are actually the Element’s logs and the element name is : DataMiner Watchdog Errors – Production which we have developed internally to notify us of any Watchdog RTEs occurrences.

The protocol does not complain about any issues with SLProtocolExt in development and we only see that issue occasionally during runtime. So I suspect that there is something happening when the HTTP response of the second Multithreaded timer comes back, which required the use SLProtocol.

You are viewing 1 out of 2 answers, click here to view all answers.
Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas

Recent questions

When using the Setter = true attribute, will the copy action always be executed first? 1 Answer | 1 Vote
Multiple Set on Table parameters for DVE’s 0 Answers | 1 Vote
DOM Definition relations returned in Definition query 0 Answers | 2 Votes

Question Tags

adl2099 (115) alarm (62) Alarm Console (82) alarms (100) alarm template (83) Automation (223) automation scipt (111) Automation script (167) backup (71) Cassandra (180) Connector (109) Correlation (68) Cube (150) Dashboard (194) Dashboards (188) database (83) DataMiner Cube (57) DIS (81) DMS (71) DOM (140) driver (65) DVE (56) Elastic (83) Elasticsearch (115) elements (80) Failover (104) GQI (159) HTTP (76) IDP (74) LCA (152) low code app (166) low code apps (93) lowcodeapps (75) MySQL (53) protocol (203) QAction (83) security (88) services (51) SNMP (86) SRM (337) table (54) trending (87) upgrade (62) Visio (539) Visual Overview (345)
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs

[ Placeholder content for popup link ] WordPress Download Manager - Best Download Management Plugin