-
Notifications
You must be signed in to change notification settings - Fork 140
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
expr: refactor for avoid global evaluator usage #818
Conversation
21b4f0b
to
c1b3322
Compare
8d21b2c
to
fdddd1f
Compare
@carrieedwards @npazosmendez Hi, what you think about this ? Global Evaluator (or store it on created function instanse) is a ugly. Pass evaluator to function in Do method some better, but not ideal also. One reason for do this at now - use evaluator for refetch in moving. But change Do is bad idea. |
Hey @msaf1980, thanks for the ping. I will take a look at this later today. |
This looks reasonable. I agree that the big refactor of One question: did the global evaluator bring you any particular problems? I agree it's not a nice pattern, but I wonder what motivated you in such big refactor. |
fdddd1f
to
fbef765
Compare
Reason for do this - use expr methods in separate product (in future - with multiply storages). Use for configure it with carbonapi app config is bad design (and possible with one storage only). |
There's other cases that are even more tricky, or maybe even impossible. For example aliasQuery |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but another review would be nice since this is a big PR
We planned separate in some steps:
But it's not easy and require a lot of time - get step require changes in Storage API. May be change Do signnature and pass-in evaluator is a simple solution at now with hard refactor (complete separate Fetch and Eval steps) in future. Compromise variant #811 not solved all of problems. |
Try to refactor expr package for avoid global evaluator usage