Troubleshooting Timeout Issues with PI Data Archive: The Impact of MaxConnIdleTime
Learn how the MaxConnIdleTime parameter in PI Data Archive can cause unexpected client timeouts, how to check and fix it, and best practices for preventing future disconnects.
Roshan Soni
Troubleshooting Timeout Issues with PI Data Archive: The Impact of MaxConnIdleTime
PI System administrators and users sometimes face mysterious disconnection issues when working with client applications like PI System Management Tools (SMT), PI ICU, or PI DataLink. A common scenario involves working seamlessly in a client application, only to find out—after a period of inactivity—that the application can no longer connect to the PI Data Archive. If this happens consistently, especially after a fixed idle period (such as 20 minutes), a key suspect emerges: the server-side idle connection timeout setting.
Understanding the Problem
Users report that after working in a PI client application and leaving it idle (without closing it), they return after 20 minutes to find the application unable to connect to the PI Data Archive 2015 R2. This issue also affects entire teams and has persisted over several months, pointing to a systemic, configuration-related trigger rather than isolated client-side problems.
Investigating Server Timeout Settings
A helpful suggestion is to check the PI Data Archive server's Net Manager - MaxConnIdleTime tuning parameter. This setting instructs the PI Net Manager (PINetMgr) how long to wait before closing idle client connections.
- Default Behavior: The
MaxConnIdleTimeparameter should be set to blank (interpreted as 0), indicating that idle client connections are never closed automatically. - Changed Value: If you find that this parameter has a numeric value (such as 1200 seconds, or 20 minutes), then the server is set to disconnect idle clients after that time.
How to Check and Adjust MaxConnIdleTime
- Open PI System Management Tools (SMT): Navigate to the relevant PI Data Archive server.
- Find Tuning Parameters: Expand the list and look under [PI Server] > Tuning Parameters.
- Locate MaxConnIdleTime: Look under the 'Net Manager' section.
- Adjust the Value: If there is a value (other than blank/0), clear the field (blank it).
- Save Changes and Restart Server:
- Changes only take effect after a restart!
- Use the scripts
pisrvstop.batandpisrvstart.batin thePI\admfolder to restart the PI Server.
- Verify Functionality: Monitor client applications to ensure the issue is resolved.
⚠️ Important: Check with other admins before changing tuning parameters—there may be intentional reasons for the previous setting.
Additional Troubleshooting Using Logs
If adjusting the timeout parameter does not resolve the problem, export and review the PI Message logs (available through PI SDK Utility or SMT) after reproducing the issue. Look for specific disconnect messages that can further narrow down root causes.
Real-World Example
One user investigated their settings and was surprised to find that a timeout value had indeed been set, contrary to their expectations. Simply reverting to the default blank value resolved the persistent disconnect issues for their entire team.
Conclusion
Timeouts between PI client applications and the PI Data Archive are often traceable to the MaxConnIdleTime setting. Maintaining the default configuration usually ensures smoother user experiences. Always document and communicate any changes to server parameters with your administration team to avoid unintended consequences for other systems or users.
Have you encountered similar PI system timeout issues? Share your experiences and solutions below!
Tags
About Roshan Soni
Expert in PI System implementation, industrial automation, and data management. Passionate about helping organizations maximize the value of their process data through innovative solutions and best practices.
No comments yet
Be the first to share your thoughts on this article.
Related Articles
Enhancing PI ProcessBook Trends with Banding and Zones: User Needs, Workarounds, and the Road Ahead
A look at the user demand for trend banding/zoning in OSIsoft PI ProcessBook, current VBA workarounds, UI challenges, and how future PI Vision releases aim to address these visualization needs.
Roshan Soni
Migrating PIAdvCalcFilVal Uptime Calculations from PI DataLink to PI OLEDB
Learn how to translate PI DataLink's PIAdvCalcFilVal advanced calculations—like counting uptime based on conditions—into efficient PI OLEDB SQL queries. Explore three practical approaches using PIAVG, PIINTERP, and PICOunt tables, and get tips for validation and accuracy.
Roshan Soni
Understanding PI Web API WebID Encoding: Can You Generate WebIDs Client-Side?
Curious about how PI Web API generates WebIDs and whether you can encode them client-side using GUIDs or paths? This article explores the encoding mechanisms, current documentation, and best practices for handling WebIDs in your applications.
Roshan Soni