-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support stable prioritization of MinedConditions #1105
Comments
Dear @HannesWell It needs to say, that actual products never licensed both ways simultaneousely. Been that said, the feature looks worthful. Adding But paying attention to the order of services in a registry can be a way. Till this moment we declared that order of services is not relyable. It means that
Any change to AccessCycle logic mean major version increment, so we plan it for 3.0.0. |
Thank you @eparovyshnaya for your assessment and I'm glad you like the idea. For now I found a simple workaround, using the JointRegistry, to create a registry that maintains a stable service order. Actually one could also use a custom implementation of the
However this works well actually, the only problem that prevents me from using the described feature now, is is that in the end of the condition mining the stable order is lost because It should be sufficient to change that collector to one that ensures stable ordering, for example Are you willing to accept a PR that in both cases changes the |
This ensure the order of mined conditions is maintained throughout the process, as described in: eclipse-passage#1105
Dear @HannesWell As this particular case brings no crucial benefit in practice (it hardly appears in real life), there is no need for quick fixes. To implement general service ordering feature, it requires some rethinking of major part of Passage Core. It also demands public interfaces changes and Access Cycle (main part of Passage) logic change, both can happen only in major release. |
Dear @eparovyshnaya, All I'm asking for now is to accept a PR to change the stream pipelines in I understand that this is not crucial for you, but I would appreciate if that small change is implemented and therefore offer to do the work and create a PR. As far as I can tell that should be totally sufficient to make it work in in conjunction with a custom stable-order Registry. I'm totally fine to relay on a workaround for now. |
This ensure the order implied by the order of services in the registry is maintained throughout the mining-process, as described in: eclipse-passage#1105
Dear @HannesWell, it is merged. |
Dear @eparovyshnaya you are very welcome and thanks a lot! Btw. passage does not publish snapshot repos, only milestones, does it? |
@HannesWell |
Thank you @eparovyshnaya, I obviously oversaw that when searching Passage's repos. |
In situations where multiple mined-conditions are available to satisfy a requirement it would be very convenient if there were means to prioritize certain conditions over others. From my observation it is currently random which condition is selected (i.e. depends on the order of elements in a HashMap/-Set).
For example we are using a custom access-cycle configuration that uses two
LocalConditions
and oneRemoteConditions
miner, similar like theFocusedAccessCycleConfiguration.Wide
configuration does, so this issue probably also applies to all that use that config.When a user has a operational floating server available plus a valid local personal license, it would be good if the Access-Cyle would always select the personal and acquires the corresponding grant over the floating-license.
This reduces the number of occupied floating seats without the need to disable the floating license locally.
At the moment I can think of two ways to implement this:
The priorities are then implicitly defined in the AccessCycleConfiguration through the order of the condition miners passed to the registry.
The priorities are then defined explicitly by assigning an integer priority to each condition.
The first approach seems to be a bit simpler to implement to me but has the disadvantage that it the priorities are not explicitly modeled and that it has to be ensured that the order is also maintained in the entire mining process.
If you are interested I can offer to provide a PR to implement this in the way you prefer.
The text was updated successfully, but these errors were encountered: