(sorry I have to post it again in plain text) I'm currently working on a master student research project ˇ°support triggers on columnsˇ± that is supervised by a professor from my university (Ottawa U). I have contacted Neil Conway whose name is with this item on the TODO list. It happened that he actually lives very close to me(Queen's U in Kingston). He has agreed that I work on this. Please take a look of my design (Some of the ideas are from Neil)
- change gram.y for CREATE TRIGGER to support the optional column list for this feature, - change CreateTrigStmt, trigger, trigdesc node to add support for an optional List of columns; change the various Node support functions (equalfuncs.c, copyfuncs.c, etc.) - change InsertTrigger, (Copy+Free+ equal)TriggerDesc, Relationbuild function to add support an optional List of columns. - change the pg_trigger system catalog to support the new column . - change CreateTrigger() to perform some semantic analysis on the list of columns (ensure no column names are duplicated, ensure each name references an extent and non-dropped column, and so forth) - when deciding which triggers to invoke (executePlan() in execMain.c), add logic to compare the list of columns in the to-be-executed command with the list of columns in any applicable columns, and only fire a trigger of the column lists that are appropriately compatible -investigate the interaction between the column list and rules I have spent the past four months on this and I have finished the YYpaser, Catalog, trigger creation and some other support functions, I am working on trigger execution right now. I expect the project will be completed by the end of July. I would like to know your comments on my design and the procedure of getting my work accepted. Thanks Mark Wu ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster