Closed moylop260 closed 6 years ago
Use SQL-CREATETABLE-UNLOGGED recommended for non-durability databases
Maybe patching odoo code
Or using ALTER TABLE "res_users" SET UNLOGGED; Note: The last command requires trace all parent tables in order to avoid a error similar to:
ALTER TABLE "res_users" SET UNLOGGED;
ERROR: could not change table "res_users" to unlogged because it references logged table "ir_model"
UPDATED: Running the following command
rgrep "CREATE TABLE" . --include=*.py --include=*.sql ./odoo/addons/base/base.sql:CREATE TABLE ir_actions ( ./odoo/addons/base/base.sql:CREATE TABLE ir_act_window (primary key(id)) INHERITS (ir_actions); ./odoo/addons/base/base.sql:CREATE TABLE ir_act_report_xml (primary key(id)) INHERITS (ir_actions); ./odoo/addons/base/base.sql:CREATE TABLE ir_act_url (primary key(id)) INHERITS (ir_actions); ./odoo/addons/base/base.sql:CREATE TABLE ir_act_server (primary key(id)) INHERITS (ir_actions); ./odoo/addons/base/base.sql:CREATE TABLE ir_act_client (primary key(id)) INHERITS (ir_actions); ./odoo/addons/base/base.sql:CREATE TABLE res_users ( ./odoo/addons/base/base.sql:CREATE TABLE res_groups ( ./odoo/addons/base/base.sql:CREATE TABLE ir_module_category ( ./odoo/addons/base/base.sql:CREATE TABLE ir_module_module ( ./odoo/addons/base/base.sql:CREATE TABLE ir_module_module_dependency ( ./odoo/addons/base/base.sql:CREATE TABLE ir_model_data ( ./odoo/addons/base/base.sql:CREATE TABLE res_currency ( ./odoo/addons/base/base.sql:CREATE TABLE res_company ( ./odoo/addons/base/base.sql:CREATE TABLE res_partner ( ./odoo/tools/sql.py: cr.execute('CREATE TABLE "{}" (id SERIAL NOT NULL, PRIMARY KEY(id))'.format(tablename)) ./odoo/fields.py: CREATE TABLE "{rel}" ("{id1}" INTEGER NOT NULL, ./addons/base_import/static/csv/database_import_test.sql:CREATE TABLE companies ( ./addons/base_import/static/csv/database_import_test.sql:CREATE TABLE persons (
There are 5 files where a database is created.
Apply a patch similar to:
find . -type f -name "*.sql" -exec sed -i "s/CREATE TABLE/CREATE TABLE UNLOGGED/g" {} \;
find . -type f -name "*.py" -exec sed -i "s/CREATE TABLE/CREATE TABLE UNLOGGED/g" {} \;
Note: Use the real name of files because of there is 1 sql and 2 py
Use SQL-CREATETABLE-UNLOGGED recommended for non-durability databases
Maybe patching odoo code
Or using
ALTER TABLE "res_users" SET UNLOGGED;
Note: The last command requires trace all parent tables in order to avoid a error similar to:ALTER TABLE "res_users" SET UNLOGGED;
ERROR: could not change table "res_users" to unlogged because it references logged table "ir_model"
UPDATED: Running the following command
There are 5 files where a database is created.
Apply a patch similar to:
find . -type f -name "*.sql" -exec sed -i "s/CREATE TABLE/CREATE TABLE UNLOGGED/g" {} \;
find . -type f -name "*.py" -exec sed -i "s/CREATE TABLE/CREATE TABLE UNLOGGED/g" {} \;
Note: Use the real name of files because of there is 1 sql and 2 py