Commit Graph

21 Commits

Author SHA1 Message Date
Fedor Isakov ad3ea9d63d Apply all migrations from 2022.2 2022-11-21 11:25:13 +01:00
Fedor Isakov f8b17e4de7 Fix compilation 2022-09-02 16:28:31 +02:00
Fedor Isakov 6030332107 Introduce profiling into program produce/evaluation steps 2022-09-02 15:49:30 +02:00
Fedor Isakov 88aaf7898c Ensure only relevant aspects selected for certain queries
While check/checkTypeOf queries are required to
process a whole root, other types of queries
can be sensitive to what aspects to include in
the processing.

Aspects are sorted in strongly-connected components,
among which the relevant one is selected.
2022-06-06 13:00:52 +02:00
Fedor Isakov c112a59116 Switch to collection of QueryTemplate instead of single instance
The deisgn decision to have only one instance of QueryTemplate
leads to the necessity to keep AspectClique separated for
every "typesystem". Whereas QueryTemplate are really perfectly
composable, and thus only one AspectClique is neeeded.

Also drop a rudimentary unused feature.
2022-05-26 09:58:31 +02:00
Fedor Isakov e7054ed124 Drop usages of invalidatedFeedbackKeys, minor fixes 2022-05-09 13:32:14 +02:00
Fedor Isakov bd249c5d0c Drop obsolete feature: incremental specification 2022-04-21 16:05:31 +02:00
Fedor Isakov af8c50f3e5 Refactor TypecheckingService: parameterize Request with Query 2021-11-04 12:48:11 +01:00
Fedor Isakov 82b04c23ae Introduce TYPE_COLLECTOR parameter to pass to template application session
The older technique that passed "typeCollector" to query is replaced
with passing this object as a session parameter.
Can be accessed with "CustomSessionParameter".
2021-09-21 17:54:51 +02:00
Fedor Isakov 1d620cdd63 Drop obsolete unused features, cleanup the code 2021-05-18 12:32:03 +02:00
Fedor Isakov 1bb8763816 Refactor AspectLookup to depend on repository, cache results 2021-05-18 12:32:03 +02:00
Fedor Isakov ab87c8a129 Support strong convert/coerce queries 2021-04-28 08:54:25 +02:00
Fedor Isakov cff18e7ca5 Optimize RulePlanHandler
Avoid iterating over LinkedHashMap (ineffective).
Do topo-sort only once on creating the object.
2021-04-21 10:40:51 +02:00
Fedor Isakov ff6b5ec6ae Apply migrations and rebuild project 2021-04-14 13:19:50 +02:00
Fedor Isakov 49357ab87a Drop all usages of "principal store" and "preamble" feature 2021-04-13 22:57:06 +02:00
Fedor Isakov 008887944d Refactor "incremental" tests launcher to not rely on incrementality
The incremental algorithm using history and replay/revalidate of
matches is deprecated and will be removed soon. The incremental tests
are now relying on the UpdataRecorder and RulePlanHandler to
implement incrementality.
2021-04-12 12:47:44 +02:00
Fedor Isakov 28dd6c7a12 Implement feedback invalidation based on (in)validated rules
Refactor supervisor/feedback consumer to support feedback basis.
Track (in)validated rules tags in RulePlanHandler.
Both (in)- and validated rules cause associated feedback to be cleared.

Disable passing SessionToken in WatchingIncremental strategy;
this forces the correct journal recording but turns off incrementality.
2021-04-08 08:51:40 +02:00
Fedor Isakov 7c89dfdffd Refactoring in program producing: getting ready to drop incrementality
Optionally produce partial program in incremental mode.
A partial program includes all "static" rules plus the "required closure"
of all changed nodes.
Produce program for required nodes unconditionally.
Mark all rule updates as validated only if exlicitly asked for it.
2021-04-08 08:51:39 +02:00
Fedor Isakov b5ffb8c83c Drop TypesModuleOwner, stop caring to store types in a model
This feature causes major problems and is really hard to maintain,
while its utility is questionable.
2021-04-08 08:51:39 +02:00
Fedor Isakov 99e248c5b3 Fix incremental update of reported feedback
Correctly detect cache up-to-date.
Refactor feedback reporting, provide origin node as the key.
Drop invalidated feedback correctly.
Code cleanup.
2021-03-23 12:48:06 +01:00
Fedor Isakov 4755c0dfa0 Extract test helper classes into separate redistributable module 2021-02-14 15:12:58 +01:00