'Why srt file size and program output file(.prn) size is different ? - PROGRESS 4GL

I have written a program which caused srn file size increased in tmp folder and at certain point of time I got SYSTEM ERROR: I/O due to out of disk space( The srn file deleted automatically). So I have asked a team to increase the size from 14 GB to 19 GB in order to fix the system error.

After that I executed the same program in my home path and the output file is generated (Size is only 5GB) and then connection aborted. I am not sure how. Could somebody explain me what actually is happening while writing to srn file and output file and why the file size was different?



Solution 1:[1]

The SRT file is used internally by Progress as a scratch area when it needs to perform client-side activities such as accumulating or sorting a result set.

The amount of space needed varies with the size of the result set and can be heavily influenced by the efficiency of your query. Bad WHERE clauses or the use of functions, such as CAN-DO() which must be resolved on the client or scrolling dynamic queries all drive large SRT files.

Much of this is invisible and fairly arcane. You cannot easily predict the size of SRT file for a given query just by looking at it.

Your application output file size depends on your application what your code is doing. That output may be the result of many queries executed over a long period of time. It does not necessarily correspond to the size of the SRT file in any predictable way.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Tom Bascom