Обсуждение: [GENERAL] How to identify Primary key column during build stage of Custom index?

Поиск
Список
Период
Сортировка

[GENERAL] How to identify Primary key column during build stage of Custom index?

От
Sairam Gaddam
Дата:
Hello all,
              Basically I am new to postgresql, and I am trying to build a custom Index to postgres using IndexAmRoutine. Further details on what I am working is below.
amapi.h - API for Postgres index access methods.

IndexBuildResult *Indexbuild(Relation heap, Relation index, IndexInfo *indexInfo){ }

The above function will be called during index build stage of custom index.
So If i create a custom index on primary key/or any column on some table, the above function will be called and some details of table and index are shared for further processing...

How do I identify primary key column of that table during build stage through code?
Can I get details of primary key through 
TupleDesc rd_att; /* tuple descriptor */ ?

I tried to access constraints attribute of above, but ConstrCheck in TupleConstr was NULL during build.

I also tried to create index on primary key and check 'indisprimary' of Form_pg_index in Index relationdata object but it was found to be 0 even for my custom index on table primary key!!


So any other way to find a primary key column details during build stage of a custom index???