-
Notifications
You must be signed in to change notification settings - Fork 175
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
Using closed intervals to avoid gaps in partially cached timeseries #522
Using closed intervals to avoid gaps in partially cached timeseries #522
Conversation
66f68d1
to
8b4fa55
Compare
The Also, worth mentioning that it looks like In the case the scenario mentioned above is right, does it make sense to open an issue or should I go ahead and fix it this same PR? |
@samuelgmartinez it actually looks like the test action is failing in the locks package (which we just updated recently and have been waiting on more feedback from the reporter before cutting a release). It looks like it is timing out after 2 minutes when it should normally take about 6 seconds. I will review this package again and get it fixed up in a separate PR, and merge it back here once it's fixed up. Your changes look good. If you would not mind doing the URL changes in a separate PR, that would be great, since it would affect more than just influxdb (no need to file an issue). Thanks for your contributions, we really appreciate it! === RUN TestLocksConcurrent
FAIL github.com/tricksterproxy/trickster/pkg/locks 122.207s |
I pushed a fix for the Creates a
Also, marked the PR as ready to review. Let me know if you want any changes. For the Prometheus use cases, I rather open a new PR with a proper testing environment to validate the parameters sent to the origin work as expected. |
@@ -310,7 +310,7 @@ checkCache: | |||
if resp.StatusCode == http.StatusOK && len(body) > 0 { | |||
nts, err := client.UnmarshalTimeseries(body) | |||
if err != nil { | |||
pr.Logger.Error("proxy object unmarshaling failed", | |||
pr.Logger.Error("proxy object unmarshalling failed", |
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.
👍🏻
Thanks for this! Separately, we took a hard look at the Locks package to make sure the sporadic timeouts was also testing issue and not a deficiency in the locks class itself. We determined that test in question was just overwhelming the github actions VM vs. running in a more beefy local dev environment. I will push a separate PR that modifies that test to not be as intense for the CI process. We will also do a quick check of anywhere else that time.Now() is being used, to ensure everything is UTC. The work you have put into all of this much appreciated. |
I'll try to open a new PR to backport it to the master branch. I just saw that the code was refactored and some packages changed. Regarding this fix being rolled out, do you have a plan to release this as part of the 1.1.4? Thanks for your feedback and for maintaining the project! 💪 |
we will publish 1.1.4-rc2 today as a pre-release here and on Docker Hub, and give it a good 24-hour soak, and then cut stable release. For |
You are good to go with the pre-release here on github and at |
We'll deploy it tomorrow (European timezone) on our test env and I'll file an issue if we run into any bug. |
@samuelgmartinez our 24-hour soak looks good, and we're all set to cut the release, but i'll hold of for a thumbs up from you that it resolved your issues. thanks so much |
@jranson We deployed it in our lab environment and it looks like the issues are now fixed and it's worked as expected. |
As explained in #466, when the date range specified is partially catched, the
missRanges
are not calculated properly, generating queries that return gaps in the series.