Questions about PostgreSQL implementation details
От | Julien Delplanque |
---|---|
Тема | Questions about PostgreSQL implementation details |
Дата | |
Msg-id | 19f96cb5-d20e-e80c-cf0e-7a78bf4e8623@inria.fr обсуждение исходный текст |
Ответы |
Re: Questions about PostgreSQL implementation details
Re: Questions about PostgreSQL implementation details Re: Questions about PostgreSQL implementation details Re: Questions about PostgreSQL implementation details |
Список | pgsql-hackers |
Hello PostgreSQL hackers, I hope I am posting on the right mailing-list. I am actually doing a PhD related to relational databases and software engineering. I use PostgreSQL for my research. I have a few questions about the internals of PostgreSQL and I think they require experts knowledge. I could not find documentation about that in the nice PostgreSQL documentation but maybe I missed something? Tell me if itis the case. My Questions: Q1. Are PostgreSQL's meta-description tables (such as pg_class) the "reality" concerning the state of the DB or are theyjust a virtual representation ? What I would like to know with this question is: would it be possible to implement DDL queries (e.g. CREATE TABLE, DROP TABLE,CREATE VIEW, ALTER TABLE, etc.) as DML queries that modify the meta-data stored in meta-description tables? For example, something like: INSERT INTO pg_class [...]; To create a new table (instead of the CREATE TABLE DDL query). Q1.1 If it is possible, is what is done in reality? I have the feeling that it is not the case and that DDL queries are implementedin C directly. Q1.2 If it is possible and not done, what is the reason? -- Q2. Are PostgreSQL's "meta-constraints" (i.e. constraints related to database structure such as "a table can only have asingle primary key") implemented in C code or via data constraints on PostgreSQL's meta-description tables? I guess, again, they are implemented in C code, but I might be wrong. Q2.1 If they are not implemented via data constraints on meta-description tables, why ? Q2.2 Is there somewhere in the documentation a list of such "meta-constraints" implemented by PostgreSQL? Thanks in advance for answering my questions, any help or pointers to existing documentation will be appreciated. Cheers, Julien Delplanque
В списке pgsql-hackers по дате отправления: