- Issue created by @wim leers
- π¦πΊAustralia larowlan π¦πΊπ.au GMT+10
wim leers β credited larowlan β .
- π¦πΊAustralia larowlan π¦πΊπ.au GMT+10
I can knock up a proof of concept for this if you like
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
π Calculate field and component dependencies on save and store them in an easy to retrieve format Active is in.
@larowlan: I'd love to take you up on your offer! ππ
- Merge request !989Resolve #3521202 "Evaluate storing xb dependencies in a table" β (Merged) created by larowlan
- π¦πΊAustralia larowlan π¦πΊπ.au GMT+10
POC in draft MR
Need to move ComponentAuditTest to a Kernel test, mocking database calls is the trigger to move it from a Unit testFieldTypeUninstallValidatorTest and ComponentAuditControllerTest are passing with this stored for querying.
- π¦πΊAustralia larowlan π¦πΊπ.au GMT+10
New title as we want to proceed with this.
Here's the explain for selecting all entities using e.g. a particular component. We use the same
buildDependencyQuery
code path for the uninstall validator so the query is the same with only the params changed.+--+-----------+------------+----------+----+--------------------------------+----------+-------+-----------+----+--------+-----------+ |id|select_type|table |partitions|type|possible_keys |key |key_len|ref |rows|filtered|Extra | +--+-----------+------------+----------+----+--------------------------------+----------+-------+-----------+----+--------+-----------+ |1 |SIMPLE |dependencies|null |ref |PRIMARY,source_entity,dependency|dependency|267 |const,const|1 |100 |Using index| +--+-----------+------------+----------+----+--------------------------------+----------+-------+-----------+----+--------+-----------+
This is ready for review now
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
This looks great!
Scariest/hardest to review were
ComponentTreeDependencyRepository
andComponentTreeDependencyRepositoryTest
.But that test is β¦ impressively leading by example π€© I think @catch will be quite happy with #12 π My literally only question is Why not use a
MERGE
query?. Not worth holding this big leap forward up for though.Plus, it puts is in a much better place to do π Allow XB to be used on all node types Active later already π
The only failure here is unrelated to this MR: it's due to 11.1.7 being used on GitLab CI by default now, and that's being fixed over at π JavaScriptComponentValidationTest::testInvalidSlotIdentifiedByConfigSchema fails Active .
- π§πͺBelgium wim leers Ghent π§πͺπͺπΊ
None, except β¦ a measurably faster UI, and hence perhaps live usage counts at
/admin/appearance/component
?Implemented:
β¦ which now definitely means we'll need to do π [later phase] Make Component `audit` operation scalable Postponed β but that's intentional π
-
wim leers β
committed 57155bf4 on 0.x authored by
larowlan β
Issue #3521202 by wim leers, larowlan, catch: Store XB field type's "...
-
wim leers β
committed 57155bf4 on 0.x authored by
larowlan β