Re: [PATCHES] Information schema - finalize key_column_usage

2006-09-04 Thread Bruce Momjian

This patch fails in initdb with:

   creating information schema ... FATAL:  column ss.confrelid does not exist 
at character 30245

Please fix and resubmit soon.

---

Greg Sabino Mullane wrote:
-- Start of PGP signed section.
 Correctly populates the position_in_unique_constraint column in the
 information_schema.key_column_usage view.
 
 --
 Greg Sabino Mullane [EMAIL PROTECTED]
 End Point Corporation
 PGP Key: 0x14964AC8 200608182231
 http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
 

[ Attachment, skipping... ]
-- End of PGP section, PGP failed!

-- 
  Bruce Momjian   [EMAIL PROTECTED]
  EnterpriseDBhttp://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faq


Re: [PATCHES] Information schema - finalize key_column_usage

2006-09-04 Thread Greg Sabino Mullane
 Please fix and resubmit soon.

Attached version should now work properly.

--
Greg Sabino Mullane [EMAIL PROTECTED]
End Point Corporation
PGP Key: 0x14964AC8 200609041803
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8

Index: information_schema.sql
===
RCS file: /projects/cvsroot/pgsql/src/backend/catalog/information_schema.sql,v
retrieving revision 1.34
diff -c -r1.34 information_schema.sql
*** information_schema.sql	4 Sep 2006 21:03:18 -	1.34
--- information_schema.sql	4 Sep 2006 22:00:33 -
***
*** 921,931 
 CAST(relname AS sql_identifier) AS table_name,
 CAST(a.attname AS sql_identifier) AS column_name,
 CAST((ss.x).n AS cardinal_number) AS ordinal_position,
!CAST(null AS cardinal_number) AS position_in_unique_constraint  -- FIXME
  FROM pg_attribute a,
!  (SELECT r.oid, nc.nspname AS nc_nspname, c.conname,
   nr.nspname AS nr_nspname, r.relname,
! _pg_expandarray(c.conkey) AS x
FROM pg_namespace nr, pg_class r, pg_namespace nc,
 pg_constraint c
WHERE nr.oid = r.relnamespace
--- 921,937 
 CAST(relname AS sql_identifier) AS table_name,
 CAST(a.attname AS sql_identifier) AS column_name,
 CAST((ss.x).n AS cardinal_number) AS ordinal_position,
!(
!  SELECT CAST(a AS cardinal_number)
!  FROM pg_constraint,
!(SELECT a FROM generate_series(1,(SELECT array_upper(ss.confkey,1))) f(a)) AS foo
!  WHERE conrelid = ss.confrelid
!  AND conkey[foo.a] = ss.confkey[(ss.x).n]
!) AS position_in_unique_constraint
  FROM pg_attribute a,
!  (SELECT r.oid, nc.nspname AS nc_nspname, c.conname, c.confkey, c.confrelid,
   nr.nspname AS nr_nspname, r.relname,
!  _pg_expandarray(c.conkey) AS x
FROM pg_namespace nr, pg_class r, pg_namespace nc,
 pg_constraint c
WHERE nr.oid = r.relnamespace


signature.asc
Description: This is a digitally signed message part


Re: [PATCHES] Information schema - finalize key_column_usage

2006-09-04 Thread Tom Lane
Greg Sabino Mullane [EMAIL PROTECTED] writes:
 Attached version should now work properly.

Applied, thanks.

regards, tom lane

---(end of broadcast)---
TIP 4: Have you searched our list archives?

   http://archives.postgresql.org


[PATCHES] Information schema - finalize key_column_usage

2006-08-18 Thread Greg Sabino Mullane
Correctly populates the position_in_unique_constraint column in the
information_schema.key_column_usage view.

--
Greg Sabino Mullane [EMAIL PROTECTED]
End Point Corporation
PGP Key: 0x14964AC8 200608182231
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8

Index: information_schema.sql
===
RCS file: /projects/cvsroot/pgsql/src/backend/catalog/information_schema.sql,v
retrieving revision 1.33
diff -u -c -r1.33 information_schema.sql
*** information_schema.sql	2 Apr 2006 17:38:13 -	1.33
--- information_schema.sql	19 Aug 2006 02:28:51 -
***
*** 921,931 
 CAST(relname AS sql_identifier) AS table_name,
 CAST(a.attname AS sql_identifier) AS column_name,
 CAST((ss.x).n AS cardinal_number) AS ordinal_position,
!CAST(null AS cardinal_number) AS position_in_unique_constraint  -- FIXME
  FROM pg_attribute a,
!  (SELECT r.oid, nc.nspname AS nc_nspname, c.conname,
   nr.nspname AS nr_nspname, r.relname,
! _pg_expandarray(c.conkey) AS x
FROM pg_namespace nr, pg_class r, pg_namespace nc,
 pg_constraint c
WHERE nr.oid = r.relnamespace
--- 921,937 
 CAST(relname AS sql_identifier) AS table_name,
 CAST(a.attname AS sql_identifier) AS column_name,
 CAST((ss.x).n AS cardinal_number) AS ordinal_position,
!(
!  SELECT CAST(a AS cardinal_number)
!  FROM pg_constraint,
!(SELECT a FROM generate_series(1,(SELECT array_upper(ss.confkey,1))) f(a)) AS foo
!  WHERE conrelid = ss.confrelid
!  AND conkey[foo.a] = ss.confkey[(ss.x).n]
!) AS position_in_unique_constraint
  FROM pg_attribute a,
!  (SELECT r.oid, nc.nspname AS nc_nspname, c.conname, c.confkey,
   nr.nspname AS nr_nspname, r.relname,
!  _pg_expandarray(c.conkey) AS x
FROM pg_namespace nr, pg_class r, pg_namespace nc,
 pg_constraint c
WHERE nr.oid = r.relnamespace


signature.asc
Description: This is a digitally signed message part