Commit Graph

4613 Commits (ffc05ace691ac07280175ac94f84c1d987262026)

Author SHA1 Message Date
Sean Chittenden 45bd128f12 Rely exclusively on error to signal failure
Pointed out by: slackpad
2016-04-01 10:34:45 -07:00
Sean Chittenden 7a814fce63 Print a helpful message re: duplicate addresses
IP sockets provide nice endpoints where the kernel will fail to bind and will error out saying socket already in use.  UNIX sockets, however, don't enjoy this nice property when cleaning up stale sockets on listen.  Given the number of addresses in Consul, provide operators with a helpful message that indicates the source of the reused address.

Before this fix, it was possible for the HTTP socket to unlink the RPC socket, leading to confusing blocked behavior when running commands like `consul info`.

```
% cat tmp.config.json
{
    "addresses": {
	"http": "unix:///tmp/.consul.sock",
	"rpc": "unix:///tmp/.consul.sock"
    },
    "unix_sockets": {
	"mode": "0700"
    }
}
% consul agent -config-file tmp.config.json -advertise=127.0.0.1 -data-dir=/tmp/
==> All listening endpoints must be unique: HTTP address already configured for RPC
Exit 1
```
2016-04-01 10:20:45 -07:00
Sean Chittenden a440433ac8 Merge pull request #1909 from hashicorp/f-toggle-skip-leave-on-int-server
skip_leave_on_int's default changes based on agent mode
2016-03-31 18:07:39 -07:00
Sean Chittenden bd05093986 Add a note re: pre-0.7 behavior 2016-03-31 18:06:58 -07:00
Sean Chittenden e83e878add Add changelog entry for skip_leave_on_interrupt default behavior changing 2016-03-31 17:58:06 -07:00
Sean Chittenden 5994c9efbf skip_leave_on_int's default changes based on agent mode
`skip_leave_on_int`'s behavior now changes based on whether or not the agent is acting as a client or server.

Fixes: 1687
2016-03-31 17:45:14 -07:00
Sean Chittenden cbe0910dc8 Merge pull request #1908 from hashicorp/b-empty-node-name
B empty node name
2016-03-31 15:14:19 -07:00
Sean Chittenden 0f41b0f7e1 Merge branch 'master' of ssh://github.com/hashicorp/consul into b-empty-node-name 2016-03-31 15:12:43 -07:00
Sean Chittenden ec9b9be736 Guard against a node name containing pure whitespace for real 2016-03-31 15:10:19 -07:00
Sean Chittenden 9862bb9061 Merge pull request #1907 from hashicorp/b-empty-node-name
Node names are not allowed to be empty
2016-03-31 15:09:26 -07:00
Sean Chittenden ff529ffa40 Guard against a node name containing pure whitespace 2016-03-31 15:02:58 -07:00
Sean Chittenden 583abab552 Node names are not allowed to be empty 2016-03-31 14:47:55 -07:00
Sean Chittenden b0b387411a Add a changelog entry for #1712 2016-03-30 14:52:24 -07:00
Sean Chittenden d1ef48b97f Merge pull request #1898 from hashicorp/b-dns-single-record
Fix DNS tests
2016-03-30 12:40:01 -07:00
Sean Chittenden 53380f8e92 Change tests to accept an "at least this many" answers semantic
The size of answers vary based on the target platform.  Accomodate this variance.
2016-03-30 11:48:32 -07:00
Sean Chittenden 4584e70636 Add lib.AbsInt() helper function 2016-03-30 11:47:37 -07:00
Sean Chittenden 7a7063c072 Fix tests
I'm not sure how I thought this passed last night, it was obviously wrong.
2016-03-30 10:16:05 -07:00
Roman Landenband 2a034373ed fix correct RPC entity 2016-03-30 12:21:52 +03:00
Sean Chittenden f44f411b70 Merge pull request #1712 from hashicorp/b-dns-single-record
Expose a tunable to adjust the number of DNS records in an answer (useful for defeating RFC3484 §6 Rule 9).
2016-03-30 01:17:16 -07:00
Sean Chittenden 19721f5c3d Editorialize the comment re: UDPAnswerLimit
Prodded by: slackpad & fusiondog
2016-03-30 01:15:40 -07:00
Sean Chittenden 5ba7e74bb8 Use table-driven test for response limits
Much more exhaustive testing and shows where the limits are of the 512B limitation (quering by ID is less space efficient than querying by just a prepared query or service).
2016-03-30 01:05:49 -07:00
Sean Chittenden fe0a7283d3 Reword `udp_answer_limit` for the better. 2016-03-29 23:48:22 -07:00
Sean Chittenden 0cb965f901 Remove duplicate paste-o
Pointed out by: slackpad
2016-03-29 23:31:31 -07:00
Sean Chittenden ce88cde7b0 Test services and PQT limits 2016-03-29 23:08:58 -07:00
Sean Chittenden e1e441fdee Improve the use of constants across DNS tests 2016-03-29 23:08:40 -07:00
Sean Chittenden fcee9779ae Use industry jargon re: DNS round-robin
s/randomized DNS round-robin/round-robin DNS/
2016-03-29 23:07:42 -07:00
Sean Chittenden c2d4354563 Use a non-default config value 2016-03-29 23:06:31 -07:00
Sean Chittenden 1dd4234683 Test missing config inputs
Alpha sort where appropriate to make it easier to keep in sync in the future.
2016-03-29 23:06:17 -07:00
Sean Chittenden 69696a9c1b Correctly detect that an answer has been truncated 2016-03-29 19:52:31 -07:00
Sean Chittenden 88c42f4056 Move lib's tests to lib_test
This suite of tests is only testing the exported functions
2016-03-29 19:51:37 -07:00
Sean Chittenden efe940e7c4 Remove dead and incorrect code
This functionality is handled further upstream in `trimUDPAnswers()`
2016-03-29 19:38:26 -07:00
Sean Chittenden d4f7f143f2 Whitespace, indent markdown correctly 2016-03-29 19:27:36 -07:00
Sean Chittenden c5c8daf07a Trim UDP responses per configuration 2016-03-29 19:27:21 -07:00
Sean Chittenden 4b5674bee3 Merge branch 'b-dns-single-record' of ssh://github.com/hashicorp/consul into b-dns-single-record
# Conflicts:
#	command/agent/dns.go
2016-03-29 19:24:53 -07:00
Sean Chittenden 9fb64ab114 Allow adjusting the number of DNS records in a response...
Based on work done by @fusiondog in #1583, extend the concept to use an integer instead of a boolean.

Fixes: #1583 && #1481
2016-03-29 19:23:56 -07:00
Patrick Feliciano 74623c372a Adding singleton option to DNS for getaddrinfo bug. 2016-03-29 19:23:07 -07:00
Seth Hoenig c3637e6ed7 doc: fix trivial typo s/NewFSMPath/NewFSM/ 2016-03-29 20:52:17 -05:00
Sean Chittenden cff05be5b4 Merge pull request #1894 from hashicorp/f-rename-server-manager
F rename server manager
2016-03-29 17:44:26 -07:00
Sean Chittenden 7cdc056ca5 Rename server_details package to agent 2016-03-29 17:39:19 -07:00
Sean Chittenden 80f9f54bb3 Add a quick package doc for the servers package 2016-03-29 16:22:53 -07:00
Sean Chittenden 5501feecbe Rename serverConfig to serverList
serverList is a vastly more accurate name.  Chase accordingly.  No functional change other than types and APIs.
2016-03-29 16:17:16 -07:00
Sean Chittenden 6185f931d8 Gratuitous rename 1/2
Reduce cognative load and perform an overdue rename.  No functional change.

Rename the `server_manager` package to `servers`.  Rename the `ServerManager` package to `Manager`.  In `client`, rename `serverMgr` to `servers`.
2016-03-29 16:12:00 -07:00
Sean Chittenden 5cffcd56c3 Merge pull request #1880 from hashicorp/f-pretest-server
Pre-connect new rebalanced server
2016-03-29 11:12:59 -07:00
Sean Chittenden 3666c87d2f Remove two unused constants 2016-03-29 11:11:41 -07:00
Sean Chittenden 299d058d54 Remove useless comment residual from decomposing functions 2016-03-29 10:53:00 -07:00
Sean Chittenden ec25ad84a6 EDYSLEXICMOMENT 2016-03-29 10:50:10 -07:00
Roman Landenband aebae0349b clerify RPC usage 2016-03-29 15:10:28 +03:00
Hrishikesh Barua e4aef3a49a Get latest updates 2016-03-29 17:21:32 +05:30
Sean Chittenden b684b15d94 Refactor out recocileServerList anon function
Add testing to reconcileServerList and test various server sizes.

Test that a percentage of nodes fail their Ping (50% in testing atm)
2016-03-29 02:45:38 -07:00
Sean Chittenden c56f039884 Teach fauxConnPool to fail a pct of the time
50% failure rate seems legit as a starting point w/ 100 servers.
2016-03-28 14:53:29 -07:00