[IMP] various: update query counters

Notably after odoo/odoo@f9442f47eb query counters are heavily impacted
and a lot of them has lessened.

closes odoo/odoo#83832

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit is contained in:
Thibault Delavallée
2022-02-02 18:14:54 +00:00
parent bc9943f188
commit ef9429231c
14 changed files with 60 additions and 60 deletions
@@ -24,7 +24,7 @@ class TestLeadConvertMass(crm_common.TestLeadConvertMassCommon):
with self.assertQueryCount(user_sales_manager=0):
test_leads = self.env['crm.lead'].browse(test_leads.ids)
with self.assertQueryCount(user_sales_manager=254): # crm only: 251 - often 251, sometimes +3 on runbot
with self.assertQueryCount(user_sales_manager=173): # crm only: 170 (often), sometimes +3 on runbot
test_leads._handle_salesmen_assignment(user_ids=user_ids, team_id=False)
self.assertEqual(test_leads.team_id, self.sales_team_convert | self.sales_team_1)
@@ -42,7 +42,7 @@ class TestLeadConvertMass(crm_common.TestLeadConvertMassCommon):
with self.assertQueryCount(user_sales_manager=0):
test_leads = self.env['crm.lead'].browse(test_leads.ids)
with self.assertQueryCount(user_sales_manager=222): # crm only: 217 - generally 218 runbot / 219 enterprise, sometimes +2/+3 on runbot
with self.assertQueryCount(user_sales_manager=139): # crm only: 136 (often), sometimes +2/+3 on runbot
test_leads._handle_salesmen_assignment(user_ids=user_ids, team_id=team_id)
self.assertEqual(test_leads.team_id, self.sales_team_convert)
@@ -166,7 +166,7 @@ class TestLeadConvertMass(crm_common.TestLeadConvertMassCommon):
test_leads = self._create_leads_batch(count=50, user_ids=[False])
user_ids = self.assign_users.ids
with self.assertQueryCount(user_sales_manager=1338): # still some randomness (1268 generally on runbot - 1269 enterprise) - crm only: 1259
with self.assertQueryCount(user_sales_manager=1038): # 1038 generally on runbot - crm only: 1029
mass_convert = self.env['crm.lead2opportunity.partner.mass'].with_context({
'active_model': 'crm.lead',
'active_ids': test_leads.ids,
+3 -3
View File
@@ -48,7 +48,7 @@ class TestLeadAssignPerf(TestLeadAssignCommon):
leads.flush()
with self.with_user('user_sales_manager'):
with self.assertQueryCount(user_sales_manager=1378): # 1366-1369 generally
with self.assertQueryCount(user_sales_manager=1289): # 1281-1289 generally - crm only: 1204
self.env['crm.team'].browse(self.sales_teams.ids)._action_assign_leads(work_days=2)
# teams assign
@@ -92,7 +92,7 @@ class TestLeadAssignPerf(TestLeadAssignCommon):
leads.flush()
with self.with_user('user_sales_manager'):
with self.assertQueryCount(user_sales_manager=674): # 668-669 generally, sometimes 672
with self.assertQueryCount(user_sales_manager=589): # 584-585 generally, sometimes 589
self.env['crm.team'].browse(self.sales_teams.ids)._action_assign_leads(work_days=2)
# teams assign
@@ -174,7 +174,7 @@ class TestLeadAssignPerf(TestLeadAssignCommon):
leads.flush()
with self.with_user('user_sales_manager'):
with self.assertQueryCount(user_sales_manager=7152): # 7143-7149 generally
with self.assertQueryCount(user_sales_manager=6547): # 6539-6546 generally
self.env['crm.team'].browse(sales_teams.ids)._action_assign_leads(work_days=30)
# teams assign
@@ -70,7 +70,7 @@ class TestSyncOdoo2Google(TestSyncGoogle):
})
partner_model = self.env.ref('base.model_res_partner')
partner = self.env['res.partner'].search([], limit=1)
with self.assertQueryCount(__system__=1112):
with self.assertQueryCount(__system__=617):
events = self.env['calendar.event'].create([{
'name': "Event %s" % (i),
'start': datetime(2020, 1, 15, 8, 0),
@@ -323,7 +323,7 @@ class TestCompanyLeave(TransactionCase):
})
company_leave._compute_date_from_to()
with self.assertQueryCount(__system__=659, admin=865):
with self.assertQueryCount(__system__=249, admin=865):
# Original query count: 1987
# Without tracking/activity context keys: 5154
company_leave.action_validate()
@@ -111,7 +111,7 @@ class TestWorkEntryHolidaysPerformancesBigData(TestWorkEntryHolidaysBase):
def test_work_entries_generation_perf(self):
# Test Case 7: Try to generate work entries for
# a hundred employees over a month
with self.assertQueryCount(__system__=11319, admin=11522):
with self.assertQueryCount(__system__=2607, admin=2807):
work_entries = self.contracts._generate_work_entries(date(2020, 7, 1), date(2020, 8, 31))
# Original work entries to generate when we don't adapt date_generated_from and
+3 -3
View File
@@ -48,7 +48,7 @@ class TestPERF(common.TransactionCase):
@warmup
def test_empty_sales_orders_batch_creation_perf(self):
# 1 SO insert, 2 SOL insert, 1 SO sequence fetch, 1 warehouse fetch, 3 followers queries ?
with self.assertQueryCount(admin=41):
with self.assertQueryCount(admin=38):
self.env['sale.order'].create([{
'partner_id': self.partners[0].id,
'user_id': self.salesmans[0].id,
@@ -59,7 +59,7 @@ class TestPERF(common.TransactionCase):
def test_dummy_sales_orders_batch_creation_perf(self):
""" Dummy SOlines (notes/sections) should not add any custom queries other than their insert"""
# + 4 SOL insert
with self.assertQueryCount(admin=46):
with self.assertQueryCount(admin=40):
self.env['sale.order'].create([{
'partner_id': self.partners[0].id,
'user_id': self.salesmans[0].id,
@@ -73,7 +73,7 @@ class TestPERF(common.TransactionCase):
@warmup
def test_light_sales_orders_batch_creation_perf_without_taxes(self):
self.products[0].taxes_id = [Command.set([])]
with self.assertQueryCount(admin=59):
with self.assertQueryCount(admin=51):
self.env['sale.order'].create([{
'partner_id': self.partners[0].id,
'user_id': self.salesmans[0].id,
@@ -42,7 +42,7 @@ class TestCrmPerformance(CrmPerformanceCase):
country_be = self.env.ref('base.be')
lang_be_id = self.env['res.lang']._lang_get_id('fr_BE')
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=282): # tcf only: 282 (~281 - 275) - com runbot: 274
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=244): # 236, sometimes +6
self.env.cr._now = self.reference_now # force create_date to check schedulers
crm_values = [
{'country_id': country_be.id,
@@ -70,7 +70,7 @@ class TestCrmPerformance(CrmPerformanceCase):
country_be = self.env.ref('base.be')
lang_be = self.env['res.lang']._lang_get('fr_BE')
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=188): # tcf only: 173 - com runbot: 174
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=188): # tcf only: 173 - com runbot: 174/175
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['crm.lead']) as lead_form:
lead_form.country_id = country_be
@@ -89,7 +89,7 @@ class TestCrmPerformance(CrmPerformanceCase):
@warmup
def test_lead_create_form_partner(self):
""" Test a single lead creation using Form with a partner """
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=193): # tcf only: 178 - com runbot: 179
with freeze_time(self.reference_now), self.assertQueryCount(user_sales_leads=193): # tcf only: 178 - com runbot: 179/180
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['crm.lead']) as lead_form:
lead_form.partner_id = self.partners[0]
@@ -99,7 +99,7 @@ class TestDiscussFullPerformance(TransactionCase):
self.maxDiff = None
self.users[0].flush()
self.users[0].invalidate_cache()
with self.assertQueryCount(emp=98):
with self.assertQueryCount(emp=90):
init_messaging = self.users[0].with_user(self.users[0])._init_messaging()
self.assertEqual(init_messaging, {
@@ -36,7 +36,7 @@ class TestEventPerformance(EventPerformanceCase):
batch_size = 20
# simple without type involved
with freeze_time(self.reference_now), self.assertQueryCount(event_user=440): # tef only: 440 (434) - com runbot: 434 - ent runbot 440
with freeze_time(self.reference_now), self.assertQueryCount(event_user=343): # 337 (sometimes +6)
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = [
dict(self.event_base_vals,
@@ -52,7 +52,7 @@ class TestEventPerformance(EventPerformanceCase):
batch_size = 20
# simple without type involved + website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=5585): # tef only: 5160 (5155) - com runbot: 5159 - ent runbot 5584
with freeze_time(self.reference_now), self.assertQueryCount(event_user=5488): # tef only: 5062 (5058) - com runbot: 5062 - ent runbot 5482-5487
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = [
dict(self.event_base_vals,
@@ -70,7 +70,7 @@ class TestEventPerformance(EventPerformanceCase):
event_type = self.env['event.type'].browse(self.test_event_type.ids)
# complex with type
with freeze_time(self.reference_now), self.assertQueryCount(event_user=786): # tef only: 785 (779) - com runbot: 779 - ent runbot 779
with freeze_time(self.reference_now), self.assertQueryCount(event_user=449): # 443 (sometimes +6)
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = [
dict(self.event_base_vals,
@@ -89,7 +89,7 @@ class TestEventPerformance(EventPerformanceCase):
event_type = self.env['event.type'].browse(self.test_event_type.ids)
# complex with type + website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=5937): # tef only: 5512 (5507) - com runbot: 5511 - ent runbot 5936
with freeze_time(self.reference_now), self.assertQueryCount(event_user=5601): # tef only: 5171 - com runbot: 5175 - ent runbot 5595-5600
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = [
dict(self.event_base_vals,
@@ -107,7 +107,7 @@ class TestEventPerformance(EventPerformanceCase):
has_social = 'social_menu' in self.env['event.event'] # otherwise view may crash in enterprise
# no type, no website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=228): # tef only: 178 - com runbot: 177
with freeze_time(self.reference_now), self.assertQueryCount(event_user=226): # tef only: 176 - com runbot: 176
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.event']) as event_form:
event_form.name = 'Test Event'
@@ -125,7 +125,7 @@ class TestEventPerformance(EventPerformanceCase):
has_social = 'social_menu' in self.env['event.event'] # otherwise view may crash in enterprise
# no type, website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=736): # tef only: 624 - com runbot: 624
with freeze_time(self.reference_now), self.assertQueryCount(event_user=735): # tef only: 622 - com runbot: 623
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.event']) as event_form:
event_form.name = 'Test Event'
@@ -144,7 +144,7 @@ class TestEventPerformance(EventPerformanceCase):
has_social = 'social_menu' in self.env['event.event'] # otherwise view may crash in enterprise
# type and website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=784): # tef only: 673 - com runbot: 675
with freeze_time(self.reference_now), self.assertQueryCount(event_user=770): # tef only: 660 - com runbot: 663
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.event']) as event_form:
event_form.name = 'Test Event'
@@ -159,7 +159,7 @@ class TestEventPerformance(EventPerformanceCase):
def test_event_create_single_notype(self):
""" Test a single event creation """
# simple without type involved
with freeze_time(self.reference_now), self.assertQueryCount(event_user=41): # tef only: 41 (35) - com runbot: 35
with freeze_time(self.reference_now), self.assertQueryCount(event_user=39): # 33 (sometimes +6)
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = dict(
self.event_base_vals,
@@ -172,7 +172,7 @@ class TestEventPerformance(EventPerformanceCase):
def test_event_create_single_notype_website(self):
""" Test a single event creation """
# simple without type involved + website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=379): # tef only: 353 (348) - com runbot: 352 - ent runbot 378
with freeze_time(self.reference_now), self.assertQueryCount(event_user=377): # tef only: 351 (346) - com runbot: 350 - ent runbot 376
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = dict(
self.event_base_vals,
@@ -187,7 +187,7 @@ class TestEventPerformance(EventPerformanceCase):
event_type = self.env['event.type'].browse(self.test_event_type.ids)
# complex with type
with freeze_time(self.reference_now), self.assertQueryCount(event_user=82): # tef only: 81 (75) - com runbot: 75 - ent runbot 75
with freeze_time(self.reference_now), self.assertQueryCount(event_user=69): # 62 (sometimes +6)
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = dict(
self.event_base_vals,
@@ -203,7 +203,7 @@ class TestEventPerformance(EventPerformanceCase):
event_type = self.env['event.type'].browse(self.test_event_type.ids)
# complex with type + website
with freeze_time(self.reference_now), self.assertQueryCount(event_user=426): # tef only: 400 (395) - com runbot: 399 - ent runbot 425
with freeze_time(self.reference_now), self.assertQueryCount(event_user=413): # tef only: 388 (382) - com runbot: 386 - ent runbot 412
self.env.cr._now = self.reference_now # force create_date to check schedulers
event_values = dict(
self.event_base_vals,
@@ -225,7 +225,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
"""
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=835): # tef only: 789 - com runbot 832 - ent runbot 834
with freeze_time(self.reference_now), self.assertQueryCount(event_user=720): # tef only: 673 - com runbot 716 - ent runbot 719
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = [
dict(reg_data,
@@ -249,7 +249,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
"""
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=319): # tef only: 276 - com runbot 315 - ent runbot 318
with freeze_time(self.reference_now), self.assertQueryCount(event_user=244): # tef only: 200 - com runbot 239 - ent runbot 243
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = [
dict(reg_data,
@@ -271,7 +271,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
form like) """
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=905): # tef only: 859 - com runbot 902
with freeze_time(self.reference_now), self.assertQueryCount(event_user=730): # tef only: 684 - com runbot 727
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = [
dict(reg_data,
@@ -292,7 +292,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
""" Test a single registration creation using Form """
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=231): # tef only: 211 - com runbot 216
with freeze_time(self.reference_now), self.assertQueryCount(event_user=229): # tef only: 209 - com runbot 215
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.registration']) as reg_form:
reg_form.event_id = event
@@ -308,7 +308,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
""" Test a single registration creation using Form """
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=234): # tef only: 214 - com runbot 218
with freeze_time(self.reference_now), self.assertQueryCount(event_user=232): # tef only: 212 - com runbot 217
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.registration']) as reg_form:
reg_form.event_id = event
@@ -321,7 +321,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
""" Test a single registration creation using Form """
event = self.env['event.event'].browse(self.test_event.ids)
with freeze_time(self.reference_now), self.assertQueryCount(event_user=141): # tef only: 123 - com runbot 124
with freeze_time(self.reference_now), self.assertQueryCount(event_user=141): # tef only: 123 - com runbot 125
self.env.cr._now = self.reference_now # force create_date to check schedulers
with Form(self.env['event.registration'].with_context(event_lead_rule_skip=True)) as reg_form:
reg_form.event_id = event
@@ -335,7 +335,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
event = self.env['event.event'].browse(self.test_event.ids)
# simple customer data
with freeze_time(self.reference_now), self.assertQueryCount(event_user=143): # tef only: 136 - com runbot 141
with freeze_time(self.reference_now), self.assertQueryCount(event_user=141): # tef only: 134 - com runbot 139
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = dict(
self.customer_data[0],
@@ -349,7 +349,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
event = self.env['event.event'].browse(self.test_event.ids)
# partner-based customer
with freeze_time(self.reference_now), self.assertQueryCount(event_user=150): # tef only: 144 - com runbot 149
with freeze_time(self.reference_now), self.assertQueryCount(event_user=148): # tef only: 142 - com runbot 147
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = {
'event_id': event.id,
@@ -379,7 +379,7 @@ class TestRegistrationPerformance(EventPerformanceCase):
event = self.env['event.event'].browse(self.test_event.ids)
# website customer data
with freeze_time(self.reference_now), self.assertQueryCount(event_user=154): # tef only: 145 - com runbot 150
with freeze_time(self.reference_now), self.assertQueryCount(event_user=150): # tef only: 141 - com runbot 146
self.env.cr._now = self.reference_now # force create_date to check schedulers
registration_values = dict(
self.website_customer_data[0],
+14 -14
View File
@@ -196,7 +196,7 @@ class TestBaseMailPerformance(BaseMailPerformance):
@users('__system__', 'employee')
@warmup
def test_create_mail_simple_multi(self):
with self.assertQueryCount(__system__=19, employee=19):
with self.assertQueryCount(__system__=7, employee=7):
self.env['mail.test.simple'].create([{'name': 'Test'}] * 5)
@users('__system__', 'employee')
@@ -351,7 +351,7 @@ class TestMailAPIPerformance(BaseMailPerformance):
}).create({})
composer._onchange_template_id_wrapper()
with self.assertQueryCount(__system__=33, employee=39):
with self.assertQueryCount(__system__=32, employee=38):
composer._action_send_mail()
# remove created partner to ensure tests are the same each run
@@ -469,11 +469,11 @@ class TestMailAPIPerformance(BaseMailPerformance):
record.write({'name': 'Zizizanewtestname'})
record.flush()
with self.assertQueryCount(__system__=5, employee=5):
with self.assertQueryCount(__system__=3, employee=3):
record.write({'field_%s' % (i): 'Tracked Char Fields %s' % (i) for i in range(3)})
record.flush()
with self.assertQueryCount(__system__=6, employee=6):
with self.assertQueryCount(__system__=4, employee=4):
record.write({'field_%s' % (i): 'Field Without Cache %s' % (i) for i in range(3)})
record.flush()
record.write({'field_%s' % (i): 'Field With Cache %s' % (i) for i in range(3)})
@@ -570,7 +570,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
self.container.message_subscribe(self.user_portal.partner_id.ids)
record = self.container.with_user(self.env.user)
with self.assertQueryCount(__system__=63, employee=64):
with self.assertQueryCount(__system__=53, employee=54): # about 20 (19?) queries per additional customer group
record.message_post(
body='<p>Test Post Performances</p>',
message_type='comment',
@@ -587,7 +587,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
record = self.container.with_user(self.env.user)
template_id = self.env.ref('test_mail.mail_test_container_tpl').id
with self.assertQueryCount(__system__=72, employee=73): # about 20 queries per additional customer group
with self.assertQueryCount(__system__=61, employee=62): # about 20 (19 ?) queries per additional customer group
record.message_post_with_template(template_id, message_type='comment', composition_mode='comment')
self.assertEqual(record.message_ids[0].body, '<p>Adding stuff on %s</p>' % record.name)
@@ -611,7 +611,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
self.assertEqual(rec1.message_partner_ids, self.env.user.partner_id | self.user_portal.partner_id)
# subscribe new followers with forced given subtypes
with self.assertQueryCount(__system__=7, employee=7):
with self.assertQueryCount(__system__=4, employee=4):
rec.message_subscribe(
partner_ids=pids[:4],
subtype_ids=subtype_ids
@@ -620,7 +620,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
self.assertEqual(rec1.message_partner_ids, self.env.user.partner_id | self.user_portal.partner_id | self.partners[:4])
# subscribe existing and new followers with force=False, meaning only some new followers will be added
with self.assertQueryCount(__system__=6, employee=6):
with self.assertQueryCount(__system__=5, employee=5):
rec.message_subscribe(
partner_ids=pids[:6],
subtype_ids=None
@@ -629,7 +629,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
self.assertEqual(rec1.message_partner_ids, self.env.user.partner_id | self.user_portal.partner_id | self.partners[:6])
# subscribe existing and new followers with force=True, meaning all will have the same subtypes
with self.assertQueryCount(__system__=7, employee=7):
with self.assertQueryCount(__system__=4, employee=4):
rec.message_subscribe(
partner_ids=pids,
subtype_ids=subtype_ids
@@ -670,7 +670,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
customer_id = self.customer.id
user_id = self.user_portal.id
with self.assertQueryCount(__system__=109, employee=110):
with self.assertQueryCount(__system__=89, employee=90):
rec = self.env['mail.test.ticket'].create({
'name': 'Test',
'container_id': container_id,
@@ -699,7 +699,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
rec1 = rec.with_context(active_test=False) # to see inactive records
self.assertEqual(rec1.message_partner_ids, self.user_portal.partner_id | self.env.user.partner_id)
self.assertEqual(len(rec1.message_ids), 1)
with self.assertQueryCount(__system__=77, employee=77):
with self.assertQueryCount(__system__=58, employee=58):
rec.write({
'name': 'Test2',
'container_id': self.container.id,
@@ -736,7 +736,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
rec1 = rec.with_context(active_test=False) # to see inactive records
self.assertEqual(rec1.message_partner_ids, self.user_portal.partner_id | self.env.user.partner_id)
with self.assertQueryCount(__system__=85, employee=85):
with self.assertQueryCount(__system__=65, employee=65):
rec.write({
'name': 'Test2',
'container_id': container_id,
@@ -769,7 +769,7 @@ class TestMailComplexPerformance(BaseMailPerformance):
rec1 = rec.with_context(active_test=False) # to see inactive records
self.assertEqual(rec1.message_partner_ids, self.partners | self.env.user.partner_id | self.user_portal.partner_id)
with self.assertQueryCount(__system__=29, employee=30):
with self.assertQueryCount(__system__=28, employee=29):
rec.write({
'name': 'Test2',
'customer_id': customer_id,
@@ -1007,7 +1007,7 @@ class TestMailHeavyPerformancePost(BaseMailPerformance):
]
self.attachements = self.env['ir.attachment'].with_user(self.env.user).create(self.vals)
attachement_ids = self.attachements.ids
with self.assertQueryCount(employee=70):
with self.assertQueryCount(employee=67):
self.cr.sql_log = self.warm and self.cr.sql_log_count
record.with_context({}).message_post(
body='<p>Test body <img src="cid:cid1"> <img src="cid:cid2"></p>',
@@ -52,7 +52,7 @@ class TestSMSPerformance(BaseMailPerformance, sms_common.SMSCase):
def test_message_sms_record_10_partners(self):
record = self.test_record.with_user(self.env.user)
pids = self.partners.ids
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=44):
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=26):
messages = record._message_sms(
body='Performance Test',
partner_ids=pids,
@@ -120,7 +120,7 @@ class TestSMSMassPerformance(BaseMailPerformance, sms_common.MockSMS):
'mass_keep_log': False,
})
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=106):
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=57):
composer.action_send_sms()
@mute_logger('odoo.addons.sms.models.sms_sms')
@@ -137,5 +137,5 @@ class TestSMSMassPerformance(BaseMailPerformance, sms_common.MockSMS):
'mass_keep_log': True,
})
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=157):
with self.mockSMSGateway(sms_allow_unlink=True), self.assertQueryCount(employee=59):
composer.action_send_sms()
+1 -1
View File
@@ -589,7 +589,7 @@ class test_m2o(ImporterCase):
# 1 x RELEASE SAVEPOINT _load_records
# 1 x RELEASE SAVEPOINT load
# => 10
with self.assertQueryCount(10):
with self.assertQueryCount(8):
result = self.import_(['value'], [
# import by name_get
[name1],
@@ -3785,6 +3785,6 @@ class TestPrecompute(common.TransactionCase):
model.flush()
model.invalidate_cache()
# check the number of queries: 1 SELECT + 3 INSERT
with self.assertQueryCount(4):
# check the number of queries: 1 SELECT + 1 INSERT
with self.assertQueryCount(2):
model.create([{'partner_id': pid} for pid in partners.ids])
@@ -132,7 +132,7 @@ class TestPerformance(SavepointCaseWithUserDemo):
rec1.write({'line_ids': [Command.create({'value': 0})]})
self.assertEqual(len(rec1.line_ids), 1)
with self.assertQueryCount(15):
with self.assertQueryCount(5):
rec1.invalidate_cache()
rec1.write({'line_ids': [Command.create({'value': val}) for val in range(1, 12)]})
self.assertEqual(len(rec1.line_ids), 12)
@@ -260,7 +260,7 @@ class TestPerformance(SavepointCaseWithUserDemo):
rec1.write({'tag_ids': [Command.create({'name': 0})]})
self.assertEqual(len(rec1.tag_ids), 1)
with self.assertQueryCount(14):
with self.assertQueryCount(4):
rec1.invalidate_cache()
rec1.write({'tag_ids': [Command.create({'name': val}) for val in range(1, 12)]})
self.assertEqual(len(rec1.tag_ids), 12)
@@ -372,7 +372,7 @@ class TestPerformance(SavepointCaseWithUserDemo):
@warmup
def test_create_base_with_lines(self):
""" Create records with one2many lines. """
with self.assertQueryCount(__system__=12, demo=12):
with self.assertQueryCount(__system__=3, demo=3):
self.env['test_performance.base'].create({
'name': 'X',
'line_ids': [Command.create({'value': val}) for val in range(10)],
@@ -386,7 +386,7 @@ class TestPerformance(SavepointCaseWithUserDemo):
self.env['test_performance.base'].create({'name': 'X'})
# create N tags: add O(N) queries
with self.assertQueryCount(13):
with self.assertQueryCount(4):
self.env['test_performance.base'].create({
'name': 'X',
'tag_ids': [Command.create({'name': val}) for val in range(10)],