On Tue, Sep 4, 2012 at 12:09 PM, Lukas <lukas@fmf.vgtu.lt> wrote:
> maybe someone can give an idea how I cat get sizes of file which location
> is know?
> Lets say I have table with 200k records, in every record one column
> indicates full file path on server for ex. "c:\temp\test.txt" etc. and I
> want to fill that table with file sizes..
> I was looking for function in plpgsql or plpgper languages, but I did not
> found anything what could help me..
If the files you need to read are located within your PGDATA
directory, you could get away with using pg_stat_file(). Otherwise, I
think you'll need to create a quick function in PL/Python, PL/Perl, or
similar. Example:
CREATE OR REPLACE FUNCTION file_size (v_fname text)
RETURNS bigint
AS $$
import os
size = None
try:
size = os.path.getsize(v_fname)
except os.error, exc:
pass
return size
$$ LANGUAGE plpythonu VOLATILE STRICT;
Josh