Opened 2 years ago
Last modified 2 years ago
#34843 closed New feature
Feature request: Support postgres table storage options — at Version 2
| Reported by: | Anton Shutik | Owned by: | nobody |
|---|---|---|---|
| Component: | Migrations | Version: | 3.2 |
| Severity: | Normal | Keywords: | postgres, autovacuum, storage options, django migrations |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description (last modified by )
There is a list of storage options (https://www.postgresql.org/docs/current/sql-createtable.html#SQL-CREATETABLE-STORAGE-PARAMETERS) that can be applied when creating a table in postgres database. So, since django manages database schema, it would be nice to extend it to support these storage options.
It might look like:
class MyModel(models.Model):
# fields go here
class Meta:
storage_options = {
"autovacuum_vacuum_scale_factor": 0.01,
"autovacuum_vacuum_threshold": 1000
}
and that would produce migration which eventually will run sql like this:
CREATE/ALTER TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01, autovacuum_vacuum_threshold = 1000);
For now it could be done with RunSQL(sql='ALTER TABLE .... WITH (...);') migration, but it would be better to have the settings on the model class itself for better visibility and managed by django.
What do you think ?
Change History (2)
comment:1 by , 2 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 2 years ago
| Description: | modified (diff) |
|---|