Skip to content
This repository has been archived by the owner on Oct 15, 2024. It is now read-only.

spec implicit global position #1499

Closed
tom-wa opened this issue May 21, 2017 · 9 comments
Closed

spec implicit global position #1499

tom-wa opened this issue May 21, 2017 · 9 comments
Assignees
Labels

Comments

@tom-wa
Copy link
Contributor

tom-wa commented May 21, 2017

it seems like the spec plugin currently only gets called after all normal (validation) plugins were called which doesn't make much sense because the validation plugins need the metadata copied by spec
with FOREACH everything works as expected

@tom-wa tom-wa changed the title spec global position spec implicit global position May 21, 2017
@markus2330
Copy link
Contributor

So currently spec+validation plugins do not work together?

Is this a step towards #1291?

@tom-wa
Copy link
Contributor Author

tom-wa commented May 23, 2017

i think there are some issues with the placements and init/foreach/maxonce but i'm not really sure. i just noticed that by default spec gets called after all other postgetstorage plugins, with foreach before (+ after when also using postgetcleanup as placement)

@markus2330
Copy link
Contributor

@mpranj Can you comment on this?

We certainly need documentation what the placements are for and test cases which specify how they should behave.

@mpranj
Copy link
Member

mpranj commented May 25, 2017

I'm pretty sure there are some issues since it is unfinished. Example: init/deinit/maxonce doesn't exist at all for postgetstorage and postgetcleanup.

Regarding foreach: these plugins are called exactly like you implemented it @tom-wa. I just did some refactoring for the global plugins mounting and then extended it to support the positions/subpositions. I don't think I changed the semantics of any position that was already there.

The proposal (doc/decisions/global_plugins.md) does not specify the ordering of plugins inside one position. Maybe I'm misunderstanding your problem, but we could add an additional position for spec to make sure it is called before the other plugins. Alternatively we could enforce mounting spec at the first position (exploiting the list plugin).

When I kdb global-mount timeofday it inserts spec still at #0 and timeofday at #1 inside the list plugin, but I never checked which one is really called first.

Regarding the placement names and semantics, I tried to clarify that in #677. Maybe it's better to start with a short list of global positions that are very clear in their meaning. It's trivial to add positions later if you know where you need them.

If you could give me a more concrete example of what you did, what you expected to see and what actually happened I can look a bit more into it.

@tom-wa
Copy link
Contributor Author

tom-wa commented May 25, 2017

Example: init/deinit/maxonce doesn't exist at all for postgetstorage and postgetcleanup.

that might be the issue, because spec gets mounted in mount.c using MAXONCE

The proposal (doc/decisions/global_plugins.md) does not specify the ordering of plugins inside one position. Maybe I'm misunderstanding your problem, but we could add an additional position for spec to make sure it is called before the other plugins.

the global postgetstorage plugins need to be called before ( postgetstorage ) and after ( postgetcleanup ) the other (local ?) backends postgetstorage plugins are called

@mpranj
Copy link
Member

mpranj commented May 25, 2017

Thanks! I'll add the MAXONCE then and check whether that fixes the problem.

@stale
Copy link

stale bot commented May 6, 2020

I mark this issue stale as it did not have any activity for one year. I'll close it in two weeks if no further activity occurs. If you want it to be alive again, ping the issue by writing a message here or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@stale stale bot added the stale label May 6, 2020
@mpranj mpranj removed the stale label May 6, 2020
@stale
Copy link

stale bot commented May 7, 2021

I mark this issue stale as it did not have any activity for one year. I'll close it in two weeks if no further activity occurs. If you want it to be alive again, ping the issue by writing a message here or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@stale stale bot added the stale label May 7, 2021
@stale
Copy link

stale bot commented May 22, 2021

I closed this issue now because it has been inactive for more than one year. If I closed it by mistake, please do not hesitate to reopen it or create a new issue with the remainder of this issue.
Thank you for your contributions 💖

@stale stale bot closed this as completed May 22, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants