Skip to content

Commit 8178281

Browse files
test(perf): re-enable import performance tests with recalibrated query counts (#14968)
Re-baseline expected query counts after upstream merge that switched from RBAC to legacy authorization. Legacy auth has lower per-action overhead (no role-permission lookups, simpler dispatch), so all counts decreased by 1-7 queries. Also removes the unused `unittest.skip` import.
1 parent 68a272f commit 8178281

1 file changed

Lines changed: 32 additions & 41 deletions

File tree

unittests/test_importers_performance.py

Lines changed: 32 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import logging
2222
from contextlib import contextmanager
23-
from unittest import skip
2423
from unittest.mock import patch
2524

2625
from crum import impersonate
@@ -275,11 +274,6 @@ def _import_reimport_performance(
275274
self.assertGreater(len_closed_findings4, 0, "Step 4 (empty reimport with close_old_findings=True) should close findings")
276275

277276

278-
@skip("Re-baseline pending: Track B legacy authorization reduces auth-layer query "
279-
"overhead (no per-action role-permission lookups, simpler permission_to_action "
280-
"dispatch). Expected query counts here were calibrated under RBAC and are "
281-
"consistently 1-7 queries higher than legacy actual. Re-baseline with a fresh "
282-
"calibration run after the upstream merge.")
283277
@tag("performance")
284278
@skip_unless_v2
285279
class TestDojoImporterPerformanceSmall(TestDojoImporterPerformanceBase):
@@ -349,13 +343,13 @@ def test_import_reimport_reimport_performance_pghistory_async(self):
349343
configure_pghistory_triggers()
350344

351345
self._import_reimport_performance(
352-
expected_num_queries1=171,
346+
expected_num_queries1=170,
353347
expected_num_async_tasks1=2,
354-
expected_num_queries2=124,
348+
expected_num_queries2=123,
355349
expected_num_async_tasks2=1,
356-
expected_num_queries3=29,
350+
expected_num_queries3=28,
357351
expected_num_async_tasks3=1,
358-
expected_num_queries4=100,
352+
expected_num_queries4=99,
359353
expected_num_async_tasks4=0,
360354
)
361355

@@ -373,13 +367,13 @@ def test_import_reimport_reimport_performance_pghistory_no_async(self):
373367
testuser.usercontactinfo.save()
374368

375369
self._import_reimport_performance(
376-
expected_num_queries1=187,
370+
expected_num_queries1=184,
377371
expected_num_async_tasks1=2,
378-
expected_num_queries2=132,
372+
expected_num_queries2=131,
379373
expected_num_async_tasks2=1,
380-
expected_num_queries3=37,
374+
expected_num_queries3=36,
381375
expected_num_async_tasks3=1,
382-
expected_num_queries4=100,
376+
expected_num_queries4=99,
383377
expected_num_async_tasks4=0,
384378
)
385379

@@ -398,13 +392,13 @@ def test_import_reimport_reimport_performance_pghistory_no_async_with_product_gr
398392
self.system_settings(enable_product_grade=True)
399393

400394
self._import_reimport_performance(
401-
expected_num_queries1=197,
395+
expected_num_queries1=194,
402396
expected_num_async_tasks1=4,
403-
expected_num_queries2=142,
397+
expected_num_queries2=141,
404398
expected_num_async_tasks2=3,
405-
expected_num_queries3=44,
399+
expected_num_queries3=43,
406400
expected_num_async_tasks3=3,
407-
expected_num_queries4=109,
401+
expected_num_queries4=108,
408402
expected_num_async_tasks4=2,
409403
)
410404

@@ -530,9 +524,9 @@ def test_deduplication_performance_pghistory_async(self):
530524
self.system_settings(enable_deduplication=True)
531525

532526
self._deduplication_performance(
533-
expected_num_queries1=110,
527+
expected_num_queries1=109,
534528
expected_num_async_tasks1=2,
535-
expected_num_queries2=90,
529+
expected_num_queries2=89,
536530
expected_num_async_tasks2=2,
537531
check_duplicates=False, # Async mode - deduplication happens later
538532
)
@@ -551,18 +545,15 @@ def test_deduplication_performance_pghistory_no_async(self):
551545
testuser.usercontactinfo.save()
552546

553547
self._deduplication_performance(
554-
expected_num_queries1=126,
548+
expected_num_queries1=123,
555549
expected_num_async_tasks1=2,
556-
expected_num_queries2=107,
550+
expected_num_queries2=104,
557551
expected_num_async_tasks2=2,
558552
)
559553

560554

561555
@tag("performance")
562556
@override_settings(V3_FEATURE_LOCATIONS=True)
563-
@skip("Re-baseline pending: same RBAC→legacy query-count drift as "
564-
"TestDojoImporterPerformanceSmall. See that class's skip note for the "
565-
"rationale.")
566557
class TestDojoImporterPerformanceSmallLocations(TestDojoImporterPerformanceBase):
567558

568559
r"""
@@ -642,13 +633,13 @@ def test_import_reimport_reimport_performance_pghistory_async(self):
642633
configure_pghistory_triggers()
643634

644635
self._import_reimport_performance(
645-
expected_num_queries1=178,
636+
expected_num_queries1=177,
646637
expected_num_async_tasks1=2,
647-
expected_num_queries2=133,
638+
expected_num_queries2=132,
648639
expected_num_async_tasks2=1,
649-
expected_num_queries3=37,
640+
expected_num_queries3=36,
650641
expected_num_async_tasks3=1,
651-
expected_num_queries4=101,
642+
expected_num_queries4=100,
652643
expected_num_async_tasks4=0,
653644
)
654645

@@ -666,13 +657,13 @@ def test_import_reimport_reimport_performance_pghistory_no_async(self):
666657
testuser.usercontactinfo.save()
667658

668659
self._import_reimport_performance(
669-
expected_num_queries1=196,
660+
expected_num_queries1=193,
670661
expected_num_async_tasks1=2,
671-
expected_num_queries2=143,
662+
expected_num_queries2=142,
672663
expected_num_async_tasks2=1,
673-
expected_num_queries3=47,
664+
expected_num_queries3=46,
674665
expected_num_async_tasks3=1,
675-
expected_num_queries4=101,
666+
expected_num_queries4=100,
676667
expected_num_async_tasks4=0,
677668
)
678669

@@ -691,13 +682,13 @@ def test_import_reimport_reimport_performance_pghistory_no_async_with_product_gr
691682
self.system_settings(enable_product_grade=True)
692683

693684
self._import_reimport_performance(
694-
expected_num_queries1=209,
685+
expected_num_queries1=206,
695686
expected_num_async_tasks1=4,
696-
expected_num_queries2=156,
687+
expected_num_queries2=155,
697688
expected_num_async_tasks2=3,
698-
expected_num_queries3=54,
689+
expected_num_queries3=53,
699690
expected_num_async_tasks3=3,
700-
expected_num_queries4=113,
691+
expected_num_queries4=112,
701692
expected_num_async_tasks4=2,
702693
)
703694

@@ -798,9 +789,9 @@ def test_deduplication_performance_pghistory_async(self):
798789
self.system_settings(enable_deduplication=True)
799790

800791
self._deduplication_performance(
801-
expected_num_queries1=117,
792+
expected_num_queries1=116,
802793
expected_num_async_tasks1=2,
803-
expected_num_queries2=93,
794+
expected_num_queries2=92,
804795
expected_num_async_tasks2=2,
805796
check_duplicates=False, # Async mode - deduplication happens later
806797
)
@@ -818,8 +809,8 @@ def test_deduplication_performance_pghistory_no_async(self):
818809
testuser.usercontactinfo.save()
819810

820811
self._deduplication_performance(
821-
expected_num_queries1=135,
812+
expected_num_queries1=132,
822813
expected_num_async_tasks1=2,
823-
expected_num_queries2=218,
814+
expected_num_queries2=215,
824815
expected_num_async_tasks2=2,
825816
)

0 commit comments

Comments
 (0)