Is there a TPS file size limit?

Hi All,

I have a customer who has a .TPS file which has reached 2.5 gig in size. I think it is corrupted, but TPSFIX crashes midway.

Is there a limit to the size of a TPS file or is it likely to be that the file is corrupted.

NOTE. Running TPSFIX 32 bit.

Thanks in advance


File Size Limit is documented at 2GB

± Contents
±— ISAM File Drivers.
±-------TopSpeed Database Driver.

TopSpeed:File Maximums/Specifications

File Size : 2 GB
Records per File : Limited to the file size (see below).
Record Size : 15,000 bytes
Field Size : 15,000 bytes
Fields per Record : 15,000
Keys/Indexes per File: 240
Key Size : 15,000 bytes
Memo fields per File: 255
Memo Field Size : 64,000 bytes
BLOB fields per File: 255
BLOB Size : Hardware dependent (Max size 640 MB)
Open Data Files : Operating system dependent
Table Name : 1,000 bytes
Tables per DOS File : Limited only by the maximum DOS file size–approximately 2^32 bytes (4,294,967,296).
Concurrent Users per File: 1024

Do you know if that 2GB limit includes BLOB data?

I haven’t run any tests, so this is just a guess…
I expect that the 2GB limit includes BLOBS
Because the limit is labeled as file size, and the Blobs are stored inside of the TPS.

If it’s a big deal for you, I believe that Viggo Klevin wrote a system to extend the blob structure for TPS based on CALLBACK() (hooks into the file drivers)

Yes Mark is correct - the 2GB limit includes blob data. Try to exceed 2GB and the file will be corrupted.

I seem to recall that in the early versions of CW the help incorrectly stated that the file size was limited only by the operating system so I was a bit surprised when I hit the hard limit. (I recently moved house and unfortunately turfed out all my old Clarion manuals etc as space was now at a premium so I cannot definitively confirm that). I remember I had to work overnight to come up with a scheme where one logical file was split between many physical files so the client was up and running the next morning. Of course these days you would probably use one of the SQL file systems that does not have such limits.


Geoff R

IIRC, Viggo Kleven wrote a CALLBACK based system, to split the physical storage BLOBs into separate TPS in order to exceed that limit. Callbacks are also known as client side triggers