Skip to content
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

Consider vendoring dependencies #5342

Closed
matwey opened this issue Jan 12, 2016 · 1 comment
Closed

Consider vendoring dependencies #5342

matwey opened this issue Jan 12, 2016 · 1 comment

Comments

@matwey
Copy link

matwey commented Jan 12, 2016

Hello,

go get does just perfect when the recent version of influxdb is built.
But if somebody wants (for some reason) to build some specific old influxdb version from the sources, or somebody does git bisect, then influxdb code base may appear to be inconsistent with the dependencies (which are taken from master by go get). This may lead either to build failures or behaviour bugs.

[1] https://golang.org/s/go15vendor

@tinco
Copy link
Contributor

tinco commented Feb 10, 2016

This issue should receive high priority, as it is InfluxDB builds are not reproducible, and it might lead to strange behaviour of tagged releases.

Today my team was debugging an issue with clustering on 0.10. We figured we would check InfluxDB out from git, using the 0.10 branch, add some log statements and compile and run that in our test environment.

What we found was that the '0.10' we built had a new bug that totally prevents clustering from working at all. Anytime we add a second node to the cluster it says: "leadership lost while committing log", an error that comes from raft. Surprised at the difference in behaviour between our 0.10 and the 0.10 that is in Debian we looked at the dependencies and see that they are not constrained at all.

That means that any build of InfluxDB on a new machine just builds master of hashicorp/raft, which does not seem to have any structured release scheme at all. The hashicorp/consul project seems to acknowledge this as they have a build system that forces their builds to run on a specific commit of raft.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants