"Mendola Gaetano" <mendola@bigfoot.com> writes:
> The process killed made always the same select ( with different
> id_package ):
> SELECT id_publisher, publisher_name, id_package, package_name
> FROM v_psl_package_info
> WHERE id_package = 177;
> (gdb) where
> #0 0x08171fdd in RelationBuildRuleLock ()
> #1 0x081722ab in RelationBuildDesc ()
> #2 0x0817311c in RelationIdGetRelation ()
> #3 0x08077b95 in relation_open ()
> #4 0x08077d24 in heap_openrv ()
> #5 0x080b1015 in addRangeTableEntry ()
> #6 0x080ab6de in transformTableEntry ()
> #7 0x080ab942 in transformFromClauseItem ()
> #8 0x080ab321 in transformFromClause ()
> #9 0x0809f639 in transformSelectStmt ()
> #10 0x0809dcc4 in transformStmt ()
> #11 0x0809da06 in parse_analyze ()
Hmm. RelationBuildRuleLock is concerned with reading the rule
information for a table; specifically, it's evidently trying to
read the rules for v_psl_package_info. I suspect some form of
data corruption in the pg_rewrite row(s) for this table. Do you
see any misbehavior when you do
select * from pg_rewrite where ev_class = 'v_psl_package_info'::regclass
In particular, are any of the columns NULL in these rows?
regards, tom lane