Search Postgresql Archives

Re: Re: [ADMIN] Cannot retrieve images inserted through VB and odbc, after a table reorganization.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/03/2014 09:26 AM, Alanoly Andrews wrote:
*Hi Craig,*

**

*I’m reloading into the very same database. *

*If I insert a new row into the table (through VB/ODBC), I’m able to
retrieve it (again from VB). But if after inserting the new row, I do a
reorg of the table (eg. with a “cluster table”), I’m no longer able to
retrieve that same row. In short, as long as the newly inserted rows are
not “re-written” in some way, they can be retrieved through VB/ODBC. *

To follow up on my previous post with regards to OIDs. That may have been a wrong fork. A little testing:

test=# CREATE TABLE image (
    name            text,
    raster          oid
);

test=# create index img_idx on image (raster);

test=# INSERT INTO image (name, raster)
VALUES ('another beautiful image', lo_import('/home/aklaver/Pictures/IMG_0359JPG'));

test=# INSERT INTO image (name, raster)
VALUES ('another beautiful image', lo_import('/home/aklaver/Pictures/IMG_0360.JPG'));

test=# INSERT INTO image (name, raster)
VALUES ('another beautiful image', lo_import('/home/aklaver/Pictures/IMG_0361.JPG'));

test=# select oid, relfilenode from pg_class where relname ='image';
  oid   | relfilenode
--------+-------------
 532144 |      532175

test=# cluster image using img_idx;
CLUSTER
test=# select oid, relfilenode from pg_class where relname ='image';
  oid   | relfilenode
--------+-------------
 532144 |      532182

Note the OID for the table stays the same but the relfilenode changes. This also happens with the other situations you describe(unless you use --oids with pg_dump).

So to revise my previous statement, my guess is your VB/ODBC code is using the relfilenode value to refer to the table and when that changes it cannot find it any more.


**

*Alanoly.*




--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx


--
Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux