5.1 Troubleshooting

Explanation

These are notes on all issues we've run into so far that are not bug-related in the 5.1 testing. For the most part, these are configuration and education issues. All techs should add to this page as new issues arise.

CHAPI SECTION
Restarting the SSLIP with CHAPI
  • The CHAPI service must be restarted anytime the SSLIP is terminated abnormally (Meaning shut down via Task Manager or crashed). Create a Windows batch file to enable the users to accomplish this easily.

CHAPI and SSLIP both track current logins. If SSLIP terminates abnormally, it doesn't send a message to CHAPI to log people out. This will cause CHAPI and SSLIP to disagree on who is logged in. Users will get an error stating that they are already logged on at an address that displays as a random alphanumeric string.


New SQL Tables for CHAPI
CHAPI > DatabaseRecs -Most important field to Tech Support is Path, which should include the entire connection string for accessing the SQL databases.
  • Example: CONTROLSERVER\CYRIOUS,1433
Also note Databasename, which specifies the exact SQL database to connect to.
CHAPI_Logging > LogMessages - Is a running log for CHAPI’s communications that are not recorded in the CHAPILog handled by SSLIP. This mostly consists of debugging and licensing messages.

Note:

MachineName - DNS name of the machine whose communications triggered the message.
Message - General message of the activity. Not to be confused with...
ErrorMessages - Any error message associated with the activity.


No CHAPI SQL databases created, CHAPI Log shows an ‘Object Reference’ Error
If the CHAPILog, after being enabled, contains an error stating that “Object Reference not set to an instance of an object”, check the connection string in the config file. If it has the server and instance names correct but is missing the port, add the port.

  • Example: (local)\Cyrious,1433
In the above example, CHAPI is pointed at the local server, a SQL instance named Cyrious, on port 1433.


Service user Editing / Deleting
The user account that CHAPI uses to run its service is not a regular user account. it will be found in Computer Management > Local Users and Groups on desktop versions of Windows, and Server Management > Local Users and Groups on server versions of Windows.

Here, you can delete or edit the user account as needed.


Clients Cannot Connect
  • Check the firewall exceptions currently in place. Firewall exceptions can be set for either ports or programs. Exceptions for ports should not be affected by the 5.1 update. Exceptions that are set up for programs can be invalidated when we move the SSLIP.exe file from the SSLIP folder to the Control folder.


As stated above, if they allow usage of the port on which the SSLIP runs, clients should have no trouble connecting. If the exception is set to allow the SSLIP.exe file located at “...Cyrious\SSLIP\SSLIP.exe” though, the clients will likely have problems, as the exception is pointed at a file that no longer exists in that location. Change the exception to point at “...Cyrious\Control\SSLIP.exe”.

In Windows Firewall, the exceptions are called Rules, and can be found by going to Control Panel > Windows Firewall, then clicking ‘Advanced Settings’ on the left side of the Firewall window.

If you need a primer on setting up/editing rules in Windows Firewall, try this link:
http://www.howtogeek.com/112564/how-to-create-advanced-firewall-rules-in-the-windows-firewall/


Startup File Priority
  • Only one Options file is needed now. Copy all parameters in SSLIP_options.txt and paste them into Control_Options.txt.
  • By default, SSLIP will look for SSLIP_Options first, then Control_Options if no SSLIP_Options file is found. Control will only look for Control_Options. For this reason, we make Control_Options the default.


Configure 5.1 and beyond for multiple databases
OptionFileName (new Startup Option to be placed in SSLIP_Options.txt or Control_options.txt)
  • With the new CHAPI / SSLIP config, each database a customer wants will need its own instance of SSLIP. One CHAPI service can handle multiple SSLIPS.

  • This does not mean you’ll need one copy of SSLIP.exe for each database, or that you’ll need separate folders for the extra SSLIPs.
  • Multiple SSLIPs can be run off of one copy of the SSLIP.exe file by using the Command Line Parameter OptionFileName to point the SSLIP at various different Options files, which each contain a different Port Offset.
    • Example: Create a shortcut to SSLIP.exe. In the shortcut’s ‘Target’ field, add the following to the end:
      • (insert one space)-OptionFileName:OtherOptions.txt
        • This shortcut will now start a SSLIP that ignores Control_Options.txt and SSLIP_Options.txt and instead looks to OtherOptions.txt for its parameters. As long as OtherOptions.txt contains a Port offset that no other Options files are using, this SSLIP will not affect any others.
  • To connect Control to these new SSLIPs, create shortcuts to Control.exe that contain the exact same OptionFileName value.
    • Much like we used to match the PortOffset values in the SSLIP_Options and Control_Options files, now we will also match the OptionFileName values in the Target fields of Control shortcuts and SSLIP shortcuts.

DatabaseName
The DatabaseName option can be included in an Options file in order to direct the SSLIP.exe using that option file to choose that database from any available as its default connection.
*NOTE: This is NOT the name of the database in SQL Server.*

*NOTE: If spaces are placed immediately to either side of the =, the option will not work.

  • Example: DatabaseName=Old Store Data

The above example would direct the SSLIP to use Old Store Data as its default database.


License Entry Requires the Hyphens!
When entering the License key, you must include the hyphens or the ID will not be accepted.


Updater gets stuck in a “You Must restart Your Computer” Loop
It is possible for a problem to arise where the updater keeps repeating the ‘You Must Restart Your Computer’ step. Only 1 reboot is actually required. To force the updater out of the loop, click ‘Restart Later’ and exit the updater, then make the following change to the system registry:

  1. Go to: HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > Session Manager
  2. Remove the following entry under Session Manager: PendingFileRenameOperations
  3. Start the updater again.

EIdCouldNotBindSocket error
The above error was thrown on one of our support test VMs. The VM was running 2 other SSLIPS on port offsets. When those SSLIPs were shut down and CHAPI was restarted, the error was no longer thrown.


HTTP 400 Bad Request

When upgrading a customer to 5.1, you may get a HTTP 400 Bad Request just after entering the license key and clicking ok.

- One possible cause is that the Company record for the customer is in Edit mode on Cyrious14 (internal). Click Save or Cancel and retry.


See Also