Error: Your convergence sessions have been closed because of timeout (How to manage timeouts in v7 and higher with Syracuse)
Description |
- Error: "Your convergence sessions have been closed because of timeout" when a session has been idle for more 20 minutes.
- The Timeout parameters TIMEHGUP1,TIMEHGUP2 and TIMEHGUP3 are already set to 0 for no timeout.
- How do I set the timeout for Sage X3?
Note: This article only applies to X3 v7 and higher. as time out is handled by a Syracuse setting.
- TIMEHGUPx settings are no longer used in v7 and higher.
For X3 v6 and lower, see knowledgebase article 18654 below.
Disclaimer |
Backup Warning |
Use caution when working with the below product functionality. Always create a backup of your data before proceeding with advanced solutions. If necessary, seek the assistance of a qualified Sage business partner, network administrator, or Sage customer support analyst. |
Database Warning |
These steps require knowledge of database engines and application databases (DBs) used by your Sage product (including Microsoft/Transact SQL, Pervasive SQL, or MySQL, etc.). Customer Support is not responsible for assisting with these steps and cannot be responsible for errors resulting from changes to the database engine or DBs. Before making changes, backup all system and application DBs required for a full restore. Contact an authorized business partner or DB administrator for assistance. |
Cause |
This is due to a timeout setting in the nodelocal.js file, used by the Syracuse server. The default timeout setting for a connection to the Syracuse Web Server is 20 minutes.
Note: Actual timeout duration may be 3 minutes shorter than what's listed (17 minutes instead of 20). If users leave sessions opened for longer than this duration, they may see this error. If this setting is modified incorrectly or users have multiple Syracuse servers and some servers were modified but others were not, users may also see this error at different duration lengths.
Resolution |
Note: This article only applies to X3 v7 and higher. For X3 v6 and lower, see knowledgebase article 18654 below.
- Have all users exit Sage X3.
- On the Syracuse server, browse to ..\Syracuse\syracuse\bin\ and locate a file called nodelocal.js
- Make a copy of the nodelocal.js file.
- Once a copy has been made, right-click the nodelocal.js file and select Edit (or open it with Notepad if this option is not available).
- Change the timeout value from 20 to the desired duration:
- The nodelocal.js file will have a section similar to what's below. Edit the 20 to something higher, such as 480. The value 20 represents 20 minutes. The 20 is two character digits. Do not exceed more than 5 character digits as doing so may cause problems with Syracuse.
- session: {
timeout: 20, // minutes
checkInterval: 60, // seconds
"auth": "basic"
},
- Save the file.
- Restart the Syracuse service.
- If the Syracuse service does not start or if logging into Sage X3 generates errors, this generally means the nodelocal.js file was edited incorrectly. Restore the copy and attempt steps in this KB again, making sure not to exceed 5 character digits in the value and no extra characters are added or deleted.
Note: The timeout is unique to each Web browser tab. If you are working on the first Web browser tab in X3, and open a second tab and continue to work on the second tab without going back to the first tab, the first Web browser tab will time out. You will not see the timeout message until you click back on the first tab.
Special considerations for multi-Syracuse servers
If after following all these steps above and you are still seeing wildly different timeout durations, you must then verify if you have multiple Syracuse servers running, and thus different nodelocal.js files with different settings. To do this:
- Have affected users log into X3. (i.e. users who have the wrong timeouts)
- Have unaffected users log into X3. (i.e. users who have the correct timeouts)
- Log into X3 as an admin who has access to the Administration menu.
- Locate the menu item "Web client sessions" and click to open that screen.
- Look for a column called Server name. This is the Syracuse server. If there are multiple Syracuse servers, you will see the different server names.
- Log into the affected server, and perform the steps noted above to change the timeout setting to make it active.
- Users must log out of Sage X3 and log back in for changes to take effect.
Known behavior: Syracuse pages (main navigation pages and menu items under Administration) may time out 5 minutes after the value set in the nodelocal.js file. This is intentional to allow convergence/classic sessions (any menu item in blocks other than Administration) to safely timeout.
Convergence (classic) sessions will time out 3 minutes sooner than the value set in the nodelocal.js file. This issue is currently being investigated.