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

Test suite overhaul parallel #2333

Merged
merged 41 commits into from
Apr 18, 2015
Merged

Test suite overhaul parallel #2333

merged 41 commits into from
Apr 18, 2015

Conversation

otoolep
Copy link
Contributor

@otoolep otoolep commented Apr 18, 2015

No description provided.

@@ -25,6 +25,9 @@ const (
// Use a prime batch size, so that internal batching code, which most likely
// uses nice round batches, has to deal with leftover.
batchSize = 4217

openTSDBTestTimeout = 10 * time.Second
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do these really take this long sometimes?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably not since, I finally fixed the inputs. Easy to change.

@corylanou
Copy link
Contributor

Some question around the listen/accept with return vs. continue. Otherwise, looks awesome! Super excited to see this in. Thanks for all the hard work!

@toddboom
Copy link
Contributor

👍 from me after cory's comments

@otoolep
Copy link
Contributor Author

otoolep commented Apr 18, 2015

openTSDB and Graphite TCP listeners only return when a specific error is returned.

@otoolep
Copy link
Contributor Author

otoolep commented Apr 18, 2015

  • Explicitly control entire build enviroment, no more control by Circle.
  • Trojan work by @corylanou to use an unused port for every network service.
  • Properly shutdown Graphite and openTSDB inputs. Simply allow them to shutdown hard and use wait groups to sync with that.
  • Keep the "partial replication test" skipped. DQs need work, as this test fails regularly.
  • Rebase with all the fixes that have gone in recently.

for {
conn, err := ln.Accept()
if _, ok := err.(*net.OpError); ok && strings.Contains(err.Error(), "use of closed network connection") {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested this. This is the error that comes out when the listener is closed.

@corylanou
Copy link
Contributor

+1

@corylanou
Copy link
Contributor

@otoolep Just did some more research and the right way to handle that error is to see if it's a TempError:

http://golang.org/pkg/net/#OpError.Temporary

If it's not, then it's for sure game over.

@otoolep
Copy link
Contributor Author

otoolep commented Apr 18, 2015

I'll revert logging heartbeat failures at trace. I have a different way to address the issue.

@otoolep otoolep force-pushed the test_suite_overhaul_parallel branch from 0ffa9ee to 0b1fc43 Compare April 18, 2015 16:56
@otoolep
Copy link
Contributor Author

otoolep commented Apr 18, 2015

All comments addressed.

17 test runs, 1 failure (clustering issue?) 16 passes. Merging.

otoolep added a commit that referenced this pull request Apr 18, 2015
@otoolep otoolep merged commit 81cd0ac into master Apr 18, 2015
@otoolep otoolep deleted the test_suite_overhaul_parallel branch April 18, 2015 17:01
if h, _ = os.Hostname(); h == "" {
h = "localhost"
}
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

on OSX, if i run influxd -hostname localhost, h will initially be "::" and then will become the result of os.Hostname() when what i really want is for it to be "localhost" (or whatever i specify via -hostname). it was working that way before this change.

  • any ideas on how to make it work again?
  • thoughts on how to add a test to prevent a regression?
  • ...and why do you treat "::" differently to "0.0.0.0"? shouldn't they either both be changed or not changed?

tracked at #2350

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

Successfully merging this pull request may close these issues.

4 participants