Subject RE: [ib-support] temporarily file management
Author Thomas Steinmaurer
> i am using the firebird version W1-V6.2.794 under win98 platform, i
> had add 5 table and i execute a sql which uses 4 inner join to have
> all these table joined should give the result of 5,000,000 records.
> while i am trying to execute the sql i have the following error :-
> 'I/O error for file 'window\temp\ib_sort_h68771' error while trying
> to write to file the device does not recognize the command sort
> error.'
> i suspected the temp file generated while executing the sql had
> exceed the file size of temp folder since there are window message
> prompt out to claim the space on C:\ drive is full, but i still have
> 50.8Mb C:\ and i tried the
> following solution:
> 1.i tried on editing the 'ibconfig' text file to add the 'temp'
> folder using
> syntax:
> a. tmp_directory 10000000 d:\temp
> and
> b.#tmp_directory 10000000 d:\temp ( since every statement started
> with # in 'ibconfig' text file)
> 2.i tried to cleanup the temp folder
> 3.set the virtual memory to path D:\ where still have 3524Mb / 3.4 Gb
> i failed to solved the problem using above solution , anything i miss
> out or gone wrong...?

There are two ways to specify the temp folder for Firebird temporary

1) By using the INTERBASE_TMP environment variable

2) With a list of tmp_directory entries in the ibconfig file

ad 2): Be aware that the entry is in *bytes*, so with your usage above,
you will reserve 10 MB. And, you must enclose the pathname with double
quotes. For example, two temp directories, each with 100 MB:

tmp_directory 100000000 "d:\temp"
tmp_directory 100000000 "e:\temp"

After editing the ibconfig file, you have to restart the Firebird Server.

Thomas Steinmaurer
IB LogManager 2.1 - The Logging/Auditing Tool for InterBase and Firebird