It should be pg_aoseg_$table_oid. However, it is pg_aoseg_$relfilenode with current implementation of truncate.
Best regards, Ruilong Huo On Mon, Apr 10, 2017 at 10:51 AM, Lirong Jian <[email protected]> wrote: > I am not sure the table name is made up as "pg_aoseg_$relfilenode". There > is another possibility: the table name is made up as "pg_aoseg_$table_oid". > For the truncate case, the relfilenode has been updated, but the table oid > is kept as the same. If the latter one is true, then the behavior you > mentioned is valid. > > Please have a double check. > > Lirong > > Lirong Jian > HashData Inc. > > 2017-04-10 10:43 GMT+08:00 Lili Ma (JIRA) <[email protected]>: > >> Lili Ma created HAWQ-1428: >> ----------------------------- >> >> Summary: Table name pg_aoseg_$relfilenode does not change >> after running truncate command >> Key: HAWQ-1428 >> URL: https://issues.apache.org/jira/browse/HAWQ-1428 >> Project: Apache HAWQ >> Issue Type: Bug >> Components: Core >> Reporter: Lili Ma >> Assignee: Ed Espino >> >> >> The table pg_aoseg.pg_aoseg(paqseg)_$relfilenode describes the >> information of file stored on HDFS for AO table and Parquet table. To make >> users easily find this catalog table, the suffix should equal the >> relfilenode for this table. >> >> After running truncate command, the relfilenode field for this table >> changed, but pg_aoseg_$ table name was not changed. >> >> Reproduce Steps: >> {code} >> postgres=# create table a(a int); >> CREATE TABLE >> postgres=# insert into a values(51); >> INSERT 0 1 >> postgres=# select oid, * from pg_class where relname='a'; >> oid | relname | relnamespace | reltype | relowner | relam | >> relfilenode | reltablespace | relpages | reltuples | reltoastrelid | >> reltoastidxid | relaosegrelid | relaosegidxid | relhasindex | relisshared | >> relkind | relstorage | relnatts | relchecks | reltriggers | relukeys | >> relfkeys | relrefs | relhasoids | relhaspkey | relhasrules | relhassubclass >> | relfrozenxid | relacl | reloptions >> -------+---------+--------------+---------+----------+------ >> -+-------------+---------------+----------+-----------+----- >> ----------+---------------+---------------+---------------+- >> ------------+-------------+---------+------------+---------- >> +-----------+-------------+----------+----------+---------+- >> -----------+------------+-------------+----------------+---- >> ----------+--------+------------------- >> 61269 | a | 2200 | 61270 | 10 | 0 | >> 61269 | 0 | 1 | 1 | 0 | >> 0 | 0 | 0 | f | f | r | >> a | 1 | 0 | 0 | 0 | 0 | >> 0 | f | f | f | f | >> 16214 | | {appendonly=true} >> (1 row) >> >> postgres=# select oid, * from pg_class, pg_appendonly where >> pg_appendonly.relid=61269 and pg_appendonly.segrelid=pg_class.oid; >> oid | relname | relnamespace | reltype | relowner | relam | >> relfilenode | reltablespace | relpages | reltuples | reltoastrelid | >> reltoastidxid | relaosegrelid | relaosegidxid | relhasindex | relisshared | >> relkind | relstorage | relnatts | relchecks | reltriggers | relukeys | >> relfkeys | relrefs | relhasoids | relhaspkey | relhasrules | relhassubclass >> | relfrozenxid | relacl | reloptions | relid | blocksize | safefswritesize >> | compresslevel | majorversion | minorversion | checksum | compresstype | >> columnstore | segrelid | segidxid | blkdirrelid | blkdiridxid | version | >> pagesize | splitsize >> -------+----------------+--------------+---------+---------- >> +-------+-------------+---------------+----------+---------- >> -+---------------+---------------+---------------+---------- >> -----+-------------+-------------+---------+------------+--- >> -------+-----------+-------------+----------+----------+---- >> -----+------------+------------+-------------+-------------- >> --+--------------+--------+------------+-------+-----------+ >> -----------------+---------------+--------------+----------- >> ---+----------+--------------+-------------+----------+----- >> -----+-------------+-------------+---------+----------+----------- >> 61271 | pg_aoseg_61269 | 6104 | 61272 | 10 | 0 | >> 61271 | 0 | 0 | 0 | 0 | >> 0 | 0 | 0 | t | f | o >> | h | 5 | 0 | 0 | 0 | 0 | >> 0 | f | t | f | f | >> 16214 | | | 61269 | 32768 | 0 | >> 0 | 2 | 0 | f | | f >> | 61271 | 61273 | 0 | 0 | 2 | 0 | >> 67108864 >> (1 row) >> >> postgres=# truncate a; >> TRUNCATE TABLE >> postgres=# select oid, * from pg_class where relname='a'; >> oid | relname | relnamespace | reltype | relowner >> | relam | relfilenode | reltablespace | relpages | reltuples | >> reltoastrelid | reltoastidxid | relaosegrelid | relaosegidxid | relhasindex >> | relisshared | relkind | relstorage | relnatts | relchecks | reltriggers | >> relukeys | relfkeys | relrefs | relhasoids | relhaspkey | relhasrules | >> relhassubclass | relfrozenxid | relacl | reloptions >> -------+---------+--------------+---------+----------+------ >> -+-------------+---------------+----------+-----------+----- >> ----------+---------------+---------------+---------------+- >> ------------+-------------+---------+------------+---------- >> +-----------+-------------+----------+----------+---------+- >> -----------+------------+-------------+----------------+---- >> ----------+--------+------------------- >> 61269 | a | 2200 | 61270 | 10 | 0 | >> 61274 | 0 | 0 | 0 | 0 | >> 0 | 0 | 0 | f | f | r | >> a | 1 | 0 | 0 | 0 | 0 | >> 0 | f | f | f | f | >> 16214 | | {appendonly=true} >> (1 row) >> >> postgres=# select oid, * from pg_class, pg_appendonly where >> pg_appendonly.relid=61269 and pg_appendonly.segrelid=pg_class.oid; >> oid | relname | relnamespace | reltype | relowner | relam | >> relfilenode | reltablespace | relpages | reltuples | reltoastrelid | >> reltoastidxid | relaosegrelid | relaosegidxid | relhasindex | relisshared | >> relkind | relstorage | relnatts | relchecks | reltriggers | relukeys | >> relfkeys | relrefs | relhasoids | relhaspkey | relhasrules | relhassubclass >> | relfrozenxid | relacl | reloptions | relid | blocksize | safefswritesize >> | compresslevel | majorversion | minorversion | checksum | compresstype | >> columnstore | segrelid | segidxid | blkdirrelid | blkdiridxid | version | >> pagesize | splitsize >> -------+----------------+--------------+---------+---------- >> +-------+-------------+---------------+----------+---------- >> -+---------------+---------------+---------------+---------- >> -----+-------------+-------------+---------+------------+--- >> -------+-----------+-------------+----------+----------+---- >> -----+------------+------------+-------------+-------------- >> --+--------------+--------+------------+-------+-----------+ >> -----------------+---------------+--------------+----------- >> ---+----------+--------------+-------------+----------+----- >> -----+-------------+-------------+---------+----------+----------- >> 61271 | pg_aoseg_61269 | 6104 | 61272 | 10 | 0 | >> 61275 | 0 | 0 | 0 | 0 | >> 0 | 0 | 0 | t | f | o >> | h | 5 | 0 | 0 | 0 | 0 | >> 0 | f | t | f | f | >> 16214 | | | 61269 | 32768 | 0 | >> 0 | 2 | 0 | f | | f >> | 61271 | 61273 | 0 | 0 | 2 | 0 | >> 67108864 >> (1 row) >> {code} >> >> Since relfilenode has changed to 61274, we should change the table name >> to "pg_aoseg_61274" instead of keeping it as "pg_aoseg_61269" >> >> >> >> -- >> This message was sent by Atlassian JIRA >> (v6.3.15#6346) >> > >
