TIP: You can type at any time to perform a new search.
Database Size
database_size · OCA/server-tools
- Repository
- OCA/server-tools · module folder · Try on Runboat
- Module version
- 1.0.2
- Category
- Tools
- Folder size
- 0.32 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/server-tools
- Last tracking update
- 2026-08-07 08:42:58
- Authors
- Odoo Community Association (OCA), Opener B.V.
- Maintainers
- Odoo Community Association (OCA), Opener B.V.
- Committers
- Stefan Rijnhart, Weblate, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
Monitor the size of your Odoo instance.
Code Analysis ⓘ
Views touched (6)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
ir_model_size_report_view_search |
ir.model.size.report | search | New | |
ir_model_size_report_view_tree |
ir.model.size.report | list | New | |
ir_model_size_view_form |
ir.model.size | form | New | |
ir_model_size_view_search |
ir.model.size | search | New | |
ir_model_size_view_tree |
ir.model.size | list | New | |
res_config_settings_view_form |
Database Size Settings | res.config.settings | form | Inherits base_setup.res_config_settings_view_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (5)
New fields (3)
-
ir_model_size_idMany2one → ir.model.sizecomodel_name='ir.model.size'index=Trueondelete='cascade'required=True -
nameCharrequired=True -
sizeInteger
No public methods.
New fields (3)
-
ir_model_size_idMany2one → ir.model.sizecomodel_name='ir.model.size'index=Trueondelete='cascade'required=True -
nameCharrequired=True -
sizeInteger
No public methods.
New fields (13)
-
attachment_sizeIntegerhelp='Attachment Size in MB. Includes overlap of files that are also attached to other models.' -
indexes_sizeIntegercompute='_compute_indexes_size'help='Total Size of Indexes in MB'store=Truestring='Index Size' -
ir_model_index_size_idsOne2many → ir.model.index.sizecomodel_name='ir.model.index.size'inverse_name='ir_model_size_id'string='Indexes' -
ir_model_relation_size_idsOne2many → ir.model.relation.sizecomodel_name='ir.model.relation.size'inverse_name='ir_model_size_id'string='Relations' -
measurement_dateDatehelp="For the exact time, check the record's write_date."required=True args: 'Date of Measurement' -
modelCharindex=True -
model_nameCharcompute='_compute_model_name'store=True -
relations_sizeIntegercompute='_compute_relations_size'help='Total Size of many2many relations in MB'store=Truestring='Many2many Tables Size' -
table_sizeIntegerhelp='Bare Table Size in MB.'string='Bare Table Size' -
total_database_sizeIntegercompute='_compute_total_sizes'help='Total Model Size in MB. This includes many2many tables'store=True -
total_model_sizeIntegercompute='_compute_total_sizes'help='Total model size in MB. This includes attachments.'store=True -
total_table_sizeIntegerhelp='Total Table Size in MB. This includes indexes and toast tables' -
tuplesIntegerhelp='Rows in use, including dead tuples'string='Estimated Rows'
-
read_group(self, domain, fields, groupby, offset=0, limit=None, orderby=False, lazy=True)@api.modelEnforce that grouped results are ordered. Odoo will happily use the grouping field for ordering unless groupby is a list, and as it happens the grouping is usually passed as a list, for example: ['measurement_date:day']
New fields (22)
-
attachment_sizeInteger -
diff_total_database_sizeIntegerargs: 'Change in Total Database Size' -
diff_total_model_sizeIntegerargs: 'Change in Total Model Size' -
historical_attachment_sizeInteger -
historical_indexes_sizeIntegerargs: 'Historical Index Size' -
historical_measurement_dateDateargs: 'Historical Date of Measurement' -
historical_relations_sizeIntegerargs: 'Historical Many2many Tables Size' -
historical_table_sizeIntegerargs: 'Historical Bare Table Size' -
historical_total_database_sizeInteger -
historical_total_model_sizeInteger -
historical_total_table_sizeInteger -
historical_tuplesIntegerargs: 'Historical Estimated Rows' -
indexes_sizeIntegerargs: 'Index Size' -
measurement_dateDateargs: 'Date of Measurement' -
modelChar -
model_nameChar -
relations_sizeIntegerargs: 'Many2many Tables Size' -
table_sizeIntegerargs: 'Bare Table Size' -
total_database_sizeInteger -
total_model_sizeInteger -
total_table_sizeInteger -
tuplesIntegerargs: 'Estimated Rows'
-
action_open_model_sizes(self)Open the model_sizes from the report line. At this point, the 'virtual' report record might not exist anymore so we fetch the dates from the context. -
search(self, domain, offset=0, limit=None, order=None)@api.modelMove the requested dates from the domain into the context -
search_count(self, domain, limit=None)@api.modelMove the requested dates from the domain into the context
New fields (3)
-
database_size_purgeBooleanconfig_parameter='database_size.purge_enable'string='Purge Older Model Size Measurements' -
database_size_retention_dailyIntegerconfig_parameter='database_size.retention_daily'default='366'help='The period of time (in days) during which the daily database size measurements are kept. If set to 0, measurements will be kept forever.'string='Keep Daily Measurements for' -
database_size_retention_monthlyIntegerconfig_parameter='database_size.retention_monthly'default='0'help='The period of time (in days) during which database size measurmeents are kept of the first day of each month. If set to 0, measurements will be kept forever.'string='Keep Monthly Measurements for'
No public methods.
- Status
- Open migration PR — not merged yet for this version
- CI status
- green — ready to merge
- Open since
- 83 days ago
- Last activity
- 48 days ago
- Repository
- OCA/server-tools
- Pull request
- [19.0][MIG] database_size: Migration to 19.0 (#3632)