PSQL and Distributed File System (DFS)

People have asked if Elliott will work with the Distributed File System (DFS).  The answer seems to be inconsistent.  We have seen users that use Elliott on DFS without any issues, and we've also seen the opposite. The main culprit is PSQL, where you will receive a Btrieve error when it does not work. So far, we have not been able to clearly identify the situation criteria under which DFS volume will work with PSQL, and under what scenario it will not. Pervasive's official position is that PSQL does not support DFS.  

The following is a scenario in which PSQL does not work due to DFS.  We received a support call from a user who wished to transfer Elliott to a new server.  The new server was set up with DFS volume where Elliott's folder resides.  When starting up Elliott V7, the user got the following message:
    Btrieve Error 30xx on SYSPASS.BTR
Btrieve Error 30xx is an error number between 3000 - 3099, which indicates this MicroKernel Router Status Codes.  MicroKernel is just another name for Btrieve.

SYSPASS.BTR is the first Btrieve file that Elliott opens. The fact that you receive an error on this file indicates that it is a PSQL issue, instead of some kind of application failure in Elliott.  After investigating this issue further with Pervasive engineers, they declared the reason is because Elliott resides on a DFS volume which is not supported by PSQL.

One interesting thing in this diagnosis process is that we noticed if we use the following command in command prompt, it will work correctly without any error:
    BUTIL -STAT SYSPASS.BTR
So it looks like the PSQL client can communicate with the engine and receive information on a Btrieve file, right?

However, we located the BUTIL.EXE programs in the PSQL\Bin folder (the actual path depends on your installation) and copied that EXE to the Elliott folder, then tried the same command form M:\Elliott7 (where M:\Elliott7 is the mapped drive and path where Elliott resides):
    BUTIL -STAT SYSPASS.BTR
In this case, we got exactly the same Btrieve error 30xx as when Elliott starts up.  The difference between the first and second scenarios is that in the first scenario, the BUTIL was executed from the local path on a volume that does not have DFS enabled.  In the second scenario, the BUTIL is executed from the Elliott folder, which resides on the DFS volume.  But in any case, Pervasive engineers did not want to pursue this matter any further because their official position is that DFS volume is not supported by PSQL.

Pervasive PSQL

  1. Btrieve Error Codes 001 - 199
  2. Btrieve Error Codes 3000 - 3099
  3. Btrieve Error Codes 3100 - 3199
  4. PSQL Version Required by Each Elliott Version
  5. Do I Need to Change PSQL Server Engine Default Parameters After Installing It?
  6. New Elliott PSQL Server Processor and RAM Suggestions
  7. Can I Dynamically Adjust Elliott / PSQL 11 Server Memory?
  8. Received "Your Computer Does Not Have PSQL 10 or 11 Client " Even though PSQL Client Is Just Installed
  9. Btrieve Error 161 on Password File When Starting Up Elliott
  10. Problems with Using Pervasive Rebuild Utility on APOPNFIL and AROPNFIL Tables
  11. Security Issue with Installing PSQL Client Remotely on User's Workstation
  12. PSQL and Distributed File System (DFS)
  13. How Do I Turn on PSQL Relational Engine Security?
  14. An Example of Debugging NOTE_ORD_VIEW PSQL Expression Evaluation Error
  15. Btrieve Error 025 on COP Open Order by Salesman Report
  16. What Is the *.^01 File for My PSQL Btrieve Table?
  17. Suggested Files to be Monitored by Audit Master
  18. Pervasive Backup Agent Is Not Compatible with Creating Work Files
  19. Hardware Recommendations for Your PSQL Database Server
  20. How to Optimize SQL SELECT Statement When Retrieving Data from Invoice History
  21. New User-Defined Functions in Elliott DDF
  22. How to Improve Query Performance When Retrieving Data from Notes & Invoice History
  23. How to Retrieve Tracking Number for an Order from Notes
  24. Actian PSQL Not Started Automatically After Server Reboot
  25. Create a New Database in the PCC for Relational Engine Access
  26. Slow PSQL Relational Engine Performance
  27. IPV6 May Cause Problem for PSQL 11 Relational Query

Feedback and Knowledge Base