Todo

From PostgreSQL wiki
Jump to navigationJump to search

This list contains some known PostgreSQL bugs, some feature requests, and some things we are not even sure we want. Many of these items are hard, and some are perhaps impossible. If you would like to work on an item, please read the Developer FAQ first. There is also a development information page.

  • Incomplete item  - marks incomplete items
  • [D] Completed item - marks changes that are done, and will appear in the PostgreSQL 17 release.

Over time, it may become clear that a TODO item has become outdated or otherwise determined to be either too controversial or not worth the development effort. Such items should be retired to the Not Worth Doing page.

For help on editing this list, please see Talk:Todo. Please do not add or remove items here without discussion on the mailing list.

Development Process

WARNING for Developers: Unfortunately this list does not contain all the information necessary for someone to start coding a feature. Some of these items might have become unnecessary since they were added --- others might be desirable but the implementation might be unclear. When selecting items listed below, be prepared to first discuss the value of the feature. Do not assume that you can select one, code it and then expect it to be committed. Always discuss design on Hackers list before starting to code. The flow should be:

    Desirability -> Design -> Implement -> Test -> Review -> Commit

Administration

Incomplete item Check for unreferenced table files created by transactions that were in-progress when the server terminated abruptly
Incomplete item Allow log_min_messages to be specified on a per-module basis
This would allow administrators to see more detailed information from specific sections of the backend, e.g. checkpoints, autovacuum, etc. Another idea is to allow separate configuration files for each module, or allow arbitrary SET commands to be passed to them. See also Logging Brainstorm.
Incomplete item Prevent query cancel packets from being replayed by an attacker, especially when using SSL
Incomplete item  Maintain an approximate xid->"time of assignment" mapping. This would allow controlling the maximum effect of hot_standby_feedback on the primary, and would be useful for other features.