I found the reason - it was bug in my code when inserting lo object. It's size was actually 4. Please ignore or delete my post.
On Wed, Jun 17, 2009 at 11:38 AM, Konstantin Izmailov <kizmai...@gmail.com>wrote: > Hi, > I'm trying to get lo size via libpq before starting reading it (postgres > server 8.3.5). lo_lseek always returns 4 (actual size is > 1M). > I query table with "select photo from employee where id='xxxx'". It returns > lo oid integer as expected. Then I use following code to obtain size of the > lo object: > int lobj_fd = lo_open(conn, lobjId, INV_READ); // returns valid fd, ok > > lo_lseek(conn, lobj_fd, 0L, SEEK_END ); > size = lo_tell(conn, lobj_fd); // always returns 4, error? > > Is it possible to obtain lo object size before reading it? > > Thank you > Konstantin > >