What Is the *.^01 File for My PSQL Btrieve Table?

Q - I see in my data folder, for my NOTE table, the corresponding data file is NOTE.BTR.  But I also see another file NOTE.^01. See sample screen below. What is that file?  Do I need to back up the NOTE.^01 file?



A -  The PSQL engine can create a Btrieve table up to 64GB. By default, the 64GB Btrieve table will be divided up to 32 segments.  In your example, for the NOTE table, when it becomes 64GB in size, then its 32 segments would be as follows:
  • NOTE.BTR
  • NOTE.^01
  • NOTE.^02
  • NOTE.^03
  • ....
  • NOTE.^32
These 32 files work together as a single table with each segment at the maximum size of 2 GB.  In your case, your NOTE.BTR file recently breaks the 2 GB barrier. Therefore, the PSQL engine starts to create the NOTE.^01 file.  When you back up, or copy the NOTE.BTR file, you must also back up or copy the NOTE.^?? files.

Bypass PSQL Table 2 GB Segment Limitation
Some people find it undesirable for PSQL to break down a table into multiple files, which makes it more difficult to back up and copy PSQL files. You may by pass the 2 GB segment limitation by bringing PSQL Control Center on the server console, right clicking on your server note and choosing Property.  Then highlight “Performance tuning,” uncheck the “Limit Segment Size to 2GB,” and choose to “Apply”. See sample screen below.



This action will stop and start the PSQL services. Therefore, only make this change when all your Elliott users are out of the system, like during the evening or weekend. If your PSQL services did not restart for some reason, then manually stop and start PSQL services for both transaction and relational engines. In a worst-case scenario, you may need to reboot your server.

After making this change, all new files that exceed 2 GB will not generate new *.^01 segment files.  However, the system does not automatically consolidate your existing *.BTR and *.^01 files.  To do that, you will need to either rebuild your NOTE.BTR file as in the above example, or use the defragmenter utility available in PSQL 12.  

The difference between Rebuild and Defragmenter is that when you perform Rebuild, no one can use the table you are rebuilding.  The Defragmenter utility allows other users to continue  using the table when the Defragmenter is rebuilding (defragmenting) the file. This is one of the main advantages of PSQL 12 over PSQL 11.  This is especially important for users that have websites that need to access Elliott data on the 24x7 basis.

Keep in mind that the "Limit Segment Size to 2GB" flag is checked by default when you install the PSQL engine.  Generally speaking, when you install the PSQL engine, you can leave everything else at default settings, except we do suggest that you un-check this flag.

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
  28. DDF Files in DATA Folder May Confuse PSQL

Feedback and Knowledge Base