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
  • Updates & Insights
  • Questions
  • Learning
    • E-learning Courses
    • Empower Replay: Limited Edition
    • Tutorials
    • 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
    • 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
    • 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
    • DataMiner Releases & Updates
    • 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

Preventing RTEs caused by SNMP Qaction polling//Best Polling Practices

Solved1.36K views8th December 2020best practices C++ long polling polling SNMP
2
Aldrick Gardiner [SLC] [DevOps Advocate]163 2nd December 2020 0 Comments

Hi,

We are having an issue with RTEs during polling of SNMP data due to the size of the system/distance of the device to the hub. To provide a little context to our issue, we made the move from native DataMiner polling to Qaction polling to improve performance, while speed has improved, we are now running into an issue with RTEs. Obviously, the improved polling time is desirable but not at the expense of RTEs within the system. What actions can we take to have a solution that will prevent RTEs regardless of system size or distance? Currently, we are requesting 40 cells per call and setting 1000 rows at a time within the table but the obvious flaw there is we attempt everything within one process.
A solution we had in mind is to split the calls up in chunks(Buffering/Queueing) base on a time limit where a stopwatch will run until it hits a certain time e.g. 12 mins it will then exit that process and reenters to poll the remaining data if it exists. This is the classic way of dealing with large data sets, the only drawbacks with be managing the queue and making sure an infinite loop does not occur. We are open to any other options that might be more efficient.

Thank You

Aldrick Gardiner [SLC] [DevOps Advocate] Selected answer as best 8th December 2020

1 Answer

  • Active
  • Voted
  • Newest
  • Oldest
5
Joey Vanhalst [SLC] [DevOps Advocate]1.80K Posted 2nd December 2020 1 Comment

Hi Aldrick,

Instead of doing this time based have you considered to poll the data in chunks of for example 100 rows (this is just an example) at a time?

The main drawback to your current implementation is that it blocks your entire protocol flow as long as this polling is ongoing (assuming it’s triggered from poll groups/timer). If we poll a large SNMP table using the built-in functionality (not via a QAction), then we can use the partialSNMP option which allows sets to be done in between the snmp polling. This is missing in your current implementation and could be improved by polling the data in batches of x rows and triggering the next batch via a poll group again. This does imply indeed that you implement a Queue to keep track of what still needs to be polled.

Another option is to use a queued QAction that can run for a longer time without RTEs (as the main reason you have RTEs is the time the QAction has to run and this one is cleared once all polling is done). However, I wouldn’t advise doing this.

Aldrick Gardiner [SLC] [DevOps Advocate] Selected answer as best 8th December 2020
Aldrick Gardiner [SLC] [DevOps Advocate] commented 2nd December 2020

OK perfect, the approach with setting 100 rows seems like the best approach.

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
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