Search Postgresql Archives

Re: What could cause CREATE TEMP... "could not read block" error?

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

 



Chris Richards wrote:
> Howdy. I have two tables that I'm joining together and using the result to create a temporary table.
> Performing the join operation works fine; it produces 0 rows (as expected). If I prepend "CREATE TEMP
> tmp_policyqueue AS" to the SELECT then it generates this error:
> 
> ERROR:  could not read block 39 in file "base/16391/11937": read only 0 of 8192 bytes
> 
> 
> $ psql
> psql (9.3.9)
> 
> mdb=> CREATE TEMP TABLE tmp_policyqueue AS
> 
> mdb-> SELECT pq.* FROM policyqueue AS pq
> mdb-> JOIN seed_progress AS sp ON pq.id=sp.polidx;
> ERROR:  could not read block 40 in file "base/16391/11937": read only 0 of 8192 bytes
> 
> You'll also observe that the block number is changing each time I execute the command. I know very
> little about postgres internal structure so it may be irrelevant. I've left my database in this state
> should extra information be needed.

It would be interesting to know what object is affected:

SELECT s.nspname AS schemaname, t.relname AS objectname, t.relkind
FROM pg_class t JOIN
     pg_namespace s ON t.relnamespace = s.oid
WHERE t.relfilenode = 11937;

If it is an index, REINDEX should help.

What is the statement that performs the join operation and works just fine?

Yours,
Laurenz Albe

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




[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