Troubleshooting After Installation
 
Troubleshooting After Installation
How to Proceed When You Encounter Errors After Installation
PSQL provides several features and tools that help to prevent configuration and installation problems.
Some of these utilities are installed and run as part of the installation process and all can be run later to evaluate configuration and registry settings and to troubleshoot problems. They are shown in Table 21.
The following topics cover different aspects of troubleshooting:
Troubleshooting Tools
Troubleshooting Strategies
Logged Messages
Configuration for Special Installation Situations
Diagnosing Problems with PSQL System Analyzer (PSA)
Verifying Database Engine is Running
Obtaining File, Client, and Engine Version Number
Engine and Client Version Conflicts
State of Key Is “Failed Validation” or “Disabled”
Troubleshooting Common PSQL Issues
Issues After Uninstalling PSQL on Windows
How to Get Additional Help
Troubleshooting Tools
The following table describes tools to help you avoid or solve problems.
Table 21 PSQL Tools that Assist in Installation and Problem Determination
Feature/Component
Function
For More Information
PSQL System Analyzer
Analyzes system components and runs communication tests.
PSQL Message Logging
Logged messages can be of type status, information, warning, or error, and can originate from any PSQL component.
See Reviewing Message Logs in Advanced Operations Guide
Gateway Locator
Determines or changes the Gateway being used for a particular data dictionary (only in the Workgroup edition.)
Troubleshooting Strategies
Typically, your installation process finishes with no problems. However, success depends on a number of factors, including proper network support and operating system configuration. If something does go wrong during installation, PSQL offers some tools and troubleshooting techniques to help diagnose the problem.
Note If the installation fails, look for the installation log file in the Windows %Temp% directory.
Checklist for Problems
*Did you see any error messages displayed during installation?
*Does the Network function correctly?
*Do you have the appropriate administrator-level privileges?
*Is the Engine running?
*Is the Client software correctly functioning?
*Are there errors in the pvsw.log file (Windows) or in syslog (Linux, macOS, or Raspbian)?
Troubleshoot the Problem
The following topics cover procedures that you can use in verifying your installation.
Logged Messages
Configuration for Special Installation Situations
Diagnosing Problems with PSQL System Analyzer (PSA)
Verifying Database Engine is Running
Obtaining File, Client, and Engine Version Number
How to Get Additional Help
Logged Messages
Messages logged by PSQL can help you troubleshoot problems. Messages can be of type status, information, warning, or error, and can originate from any PSQL component. Certain messages specific to licensing issues originate only from the license administration components. In either case, PSQL writes messages to the following logging features:
Notification Viewer
Operating system event log
PSQL event log (pvsw.log) (Windows only)
Any licensing message logged to Notification Viewer is also logged to the operating system event log and to PSQL event log. Similarly, any licensing message logged to the operating system event log is also logged to PSQL event log. Note that the operating system event log and PSQL event log may contain licensing messages not logged to Notification Viewer.
Messages not specific to licensing are logged to the operating system event log and to PSQL event log.
Follow these guidelines for using messages to troubleshoot problems:
If you suspect a problem related to licensing, first check Notification Viewer, then check the operating system event log and PSQL event log.
If you suspect a problem not related to licensing, check the operating system event log and PSQL event log.
For logging details, see Reviewing Message Logs in Advanced Operations Guide. For status code details, see Status Codes in Status Codes and Messages.
Configuration for Special Installation Situations
This topic covers selected scenarios where the default configuration settings for PSQL need adjusting for proper database operation.
The following table lists some of these situations along with actions you can take.
If your computing environment includes...
Then you need to...
Microsoft Active Directory Service
Read the following topic:
Multiple network interfaces
Enable a configuration setting for multihomed setting
In Advanced Operations Guide, see:
A network that is subject to outages
Enable a configuration setting that tries to auto-reconnect to a server after a network outage.
In Advanced Operations Guide, see PSQL Auto Reconnect.
Database file names that must not include embedded spaces
Enable a configuration setting that instructs PSQL to reject files with embedded spaces in the name.
In Advanced Operations Guide, see Embedded Spaces and Long File Names and Embedded Spaces Support.
Diagnosing Problems with PSQL System Analyzer (PSA)
PSQL System Analyzer is a diagnostic utility included with PSQL. It is integrated into the product installation and available as a stand-alone diagnostic tool to help you with the following tasks:
Troubleshoot network problems
Detect previous installations of Btrieve or PSQL on your system
Note other factors that influence your networking environment
View current component set and versions
Note For information on using PSA, see PSQL System Analyzer (PSA) in PSQL User's Guide.
Verifying Database Engine is Running
To verify that the PSQL engine is running, see the procedure for your platform and engine:
PSQL Server on Windows
PSQL Workgroup on Windows
PSQL Server on Linux-based Systems
PSQL Server on Windows
You can use the Services function of the Windows control panel.
To check PSQL Services on Windows servers using the Control Panel
1 At the operating system, open Services under Administrative Tools.
2 Scroll the list of services until you reach the following services.
PSQL Transactional Engine
PSQL Relational Engine
Both of these services must be started if PSQL is to function correctly.
The Status column displays whether or not the service is currently running. The Startup column indicates whether the service is set to automatically start on system startup or start manually.
3 If a service is not started, right-click the service name, then click Start.
PSQL Workgroup on Windows
To verify that the PSQL Workgroup engine is running:
To start the PSQL Workgroup engine
1 Click Start Workgroup Engine from the operating system Start menu or Apps screen.
By default, the MicroKernel allocates resources and is ready to service local application database requests.
To stop the PSQL Workgroup engine
1 Click Stop Workgroup Engine from the operating system Start menu or Apps screen.
Note You will receive a warning message when trying to stop the engine if any of the following is true:

- There are active clients.
- No activity took place since the engine was loaded.
- Fewer than 10 seconds have elapsed since the last operation took place.
PSQL Server on Linux-based Systems
You can verify that the engine (mkded) is running with the ps utility.
Run the following at a command line:
ps -e | egrep 'mkded'
To start the PSQL services
Run the following at the command line under the root user account:
etc/init.d/psql start
Obtaining File, Client, and Engine Version Number
You can use PSQL utilities to verify that the client and engines have the version number you expect, or to check the version of a particular file.
Determining Client and Engine Version
You can check the engine and client versions using Function Executor on Windows platforms or using the butil command line utility on all platforms. Function Executor is a utility that simulates Btrieve client operations using the PSQL requesters.
Using Function Executor
Using the butil Utility
Using Function Executor
Use Function Executor to determine the version of the client, local and remote engines.
To Determine the Engine Version using Function Executor
1 Access Function Executor from the operating system Start menu or Apps screen.
2 Do one of the following:
Click View > Btrieve Version from the File menu.
Select the Btrieve Version Info toolbar button, as shown in Figure 5.
Figure 5 Selecting the Btrieve Version Info button
3 A dialog box displays the version of the client requesters and the local engine. If a file is open, the remote MicroKernel version is included.
Figure 6 Btrieve Version Info Display
Using the butil Utility
From a command prompt, enter the following:
butil -ver
The requester and engine versions are then displayed. You cannot determine the version of a remote server engine with this tool.
Determining a File Version
You can determine the file version of a MicroKernel data file using the PSQL utilities. On the Windows platform, use PSQL Explorer, Function Executor, DDF Builder, or Btrieve Maintenance. On any platform, use the butil command line utility. The following topics give information on using some of these methods.
Using the PSQL Control Center
Using Btrieve Maintenance
Using Function Executor
Using the butil Utility
Using the PSQL Control Center
You can use the PSQL Control Center to determine a file version.
To Determine the File Version of a Table Using PSQL Control Center
1 Access PCC from the operating system Start menu or Apps screen.
2 Find the database by expanding its name in PSQL Explorer on the left.
3 Do one of the following:
Click a table name to choose it and select File > Properties from the File menu.
Right-click the table name and select Properties as shown in Figure 7.
Figure 7 Obtaining a File Version with PCC
4 The table properties are displayed, which include the file version of the underlying MicroKernel data file.
Figure 8 Table Properties Page
Using Btrieve Maintenance
If you are unfamiliar with the command line, you can use the GUI-based Btrieve Maintenance tool.
To Determine the File Version of a Table Using Btrieve Maintenance Utility
1 Access Maintenance from the operating system Start menu or Apps screen.
2 From the File menu, click Options and select Show Information Editor.
The File Information Editor dialog box displays.
3 Click Load Information and the Select File dialog box displays.
4 Enter or browse for the file for which you need to determine the version.
The version displays in the upper right-hand corner of the dialog box.
Using Function Executor
The Function Executor utility can simulate Btrieve operations and can be used to determine the file version by performing a statistics report against the file.
To Determine the File Version of a Table Using Function Executor
1 Access Function Executor from the operating system Start menu or Apps screen.
2 From the File menu, click File then Open.
The Open Btrieve File dialog box displays.
3 Enter or browse for the file for which you need to determine the version.
4 With the file open in Function Executor, click View then File Statistics.
The File Statistics dialog box displays the file version in the top portion of the screen, as seen in Figure 9.
Figure 9 File Statistics in Function Executor
The Function Executor utility is documented in more detail in Advanced Operations Guide.
Using the butil Utility
Use the -stat parameter of butil to query file statistics for the following information:
File version
Pages
Records
Keys
Type the following at a command prompt:
butil -stat filename
For example, the following command queries statistics for the file dept.mkd of the Demodata database included with PSQL:
butil -stat dept.mkd
The butil utility is documented in more detail in Advanced Operations Guide.
Engine and Client Version Conflicts
We recommend that you use client requesters that are the same version as the database engine. If you choose, you may use a client requester that is an older version than the database engine with which it interacts. In some situations, depending on the type of SDK access method used by your application, an older version requester will not work with the database engine. Your application will be unable to communicate with the database engine. For those situations, you must use client requesters that are the same version as the database engine.
Client requesters that are a newer version than the database engine may or may not function correctly. Correct functioning of newer versions of client requesters with older versions of the engine cannot be guaranteed. Therefore, we recommend that you avoid the use of newer version client requesters with an older engine.
Note See also Does the PSQL Client version have to match the PSQL Server version?, particularly if you are using PSQL Vx Server.
State of Key Is “Failed Validation” or “Disabled”
PSQL licensing components may determine that the product key for the database engine has become invalid. If so, the state of the key changes from Active to Failed Validation. Usually, you discover the invalidation after one of the following actions:
You manually run the command line utility clilcadm with the -t option to validate the key.
You restart PSQL services, automatically prompting key validation.
Message logs and other notifications can alert you to a failed validation and possible reasons. The most common reason is a change to the host name of the system where PSQL is running.
After validation failure, the database engine continues to run normally for a set number of days, called a failed validation period. This time period, set within product key itself, allows ample time for you to correct the failure and move the key state from failed back to active.
You have three ways to find out how many days you have to do this:
In License Administrator, the product key shows a state of Failed Validation and an expiration date for the last day of the grace period.
PSQL Notification Viewer gives a history that includes licensing events. It lists any key validation failure, the number of days left until expiration, and gives steps you can take for correction.
The file pvsw.log lists an entry for the validation failure that includes the expiration date.
If you do not correct the causes of the failed validation before the expiration date, the key changes state to Disabled. A disabled key prevents the database engine from accessing data files.
For more information, see Reviewing Message Logs in Advanced Operations Guide and License Administration Concepts in PSQL User's Guide.
Troubleshooting Common PSQL Issues
This section outlines problems you may encounter during the installation or when first using the Workgroup product.
I receive Status 7224 or my license is no longer listed in the License Administrator utility.
When the PSQL Workgroup is installed as an application, you may experience this situation. Applications do not automatically inherit the user’s administrative rights. You can stop the engine, run it as administrator, and then run the command line license administrator or GUI License Administrator as administrator to authorize the license. Another alternative is to install Workgroup Engine to run as a service. See Running the Workgroup Engine as a Service.
I fail to see the effects of my configuration changes.
Try stopping and then restarting the database engine. Whenever you make a change to engine configuration components, you must stop and restart the database engine for the changes to take effect. For information on how to start and stop the database engine, see Verifying Database Engine is Running.
Why do I receive Status 7012 when trying to create a new database with the Workgroup Engine using PCC on Windows?
When PCC creates a new database, the new database name is added to dbnames.cfg and an entry is added to the ODBC.INI registry in order to create a corresponding System DSN.
Due to Microsoft operating system constraints on registry access, the Workgroup Engine should be run in an elevated mode, so that the database System DSN can be created.
Once the System DSN is created successfully, any user may start the Workgroup Engine and use the DSN.
Note In Windows, standard users may create User DSNs without this restriction.
Why do I (now) receive Status 95, after running my application successfully?
Your application has lost its session with the database engine. This can happen if you make changes to your configuration settings and must restart the database engine, as in the troubleshooting example given above. At the moment the database engine is stopped, any application that is running loses its session with the database engine. You must stop all those utilities and restart them in order to reestablish communication.
See the Status Codes and Messages manual for more cases in which this status code can be returned.
Installing a PSQL application has rendered another application unusable.
If the latest DLLs have been overwritten, it is possible to restore the overwritten DLLs using a backup directory that is automatically created when you install PSQL.
How do I verify that my DOS components are functioning properly?
PSQL provides the command line utility butil.exe for verifying that your DOS components are functioning properly. In a default installation, it is located in C:\Program Files (x86)\Actian\PSQL\bin.
Why can’t I restart my application after an improper program exit?
Database engine components may remain in memory if the engine is interrupted improperly.
If you cannot restart your program after improperly aborting the application by using Ctrl-C or stopping the process
1 Shut down and restart your system.
2 Avoid terminating applications in an abnormal manner.
Why isn’t my application using the Workgroup engine?
If you previously installed PSQL requesters and then installed a later Workgroup engine, but your application is using only the requesters, you may have an outdated configuration that sets Local Access to Off. The Workgroup engine installation does not overwrite existing settings. To reset Local Access to On, see Using the Server and Workgroup Engines Concurrently.
How Do I Access the PSQL Online Manuals?
To access the online documentation
1 Access Control Center & Documentation from the operating system Start menu or Apps screen.
2 Click the desired manual on the PCC Welcome page. (If the Welcome page has been closed, click Help then Welcome.)
I received an error message during installation that begins: “Setup did not update the PATH statement in autoexec.bat because the new path would be too long for Windows.”
This message appears when the installation program cannot update the Path environment variable because the resulting Path definition would be too long (exceeds the environment space). For information on how to increase the environment space defined in config.sys, see Microsoft knowledge base articles.
If you get this error message, then a REM statement (a comment) has been added to your autoexec.bat file. The REM statement contains the Path value that would have been entered. You can change the Path statement manually.
The best approach, if possible, is to install the product at a location with a shorter installation directory so that the value of Path does not exceed the environment space.
Issues After Uninstalling PSQL on Windows
After you uninstall PSQL using Programs and Features in Windows, you should not have any database engine files left on your system. However, certain actions such as restoring archived components can cause a significant number of files to remain. This is a side-effect of how the installation process works with the Windows operating system.
In the situations described previously, the files are left because Windows has them marked with usage counts that indicate that they are being used by more than one program, and therefore the uninstallation program does not remove them. This is expected behavior, but it may lead to a false appearance that the PSQL installer is not functioning correctly.
How to Get Additional Help
If you encounter problems during or after the installation that are not covered in the user documentation, please contact technical support.