James Phillips
f7df065c39
memberlist: Monkey patch memberlist to fix port 0 behavior.
...
https://github.com/hashicorp/memberlist/pull/128
2017-07-07 09:22:34 +02:00
James Phillips
e2935e7509
test: Changes WAN/LAN join confirmer to use port number vs. address.
...
This fixes TestServer_JoinSeparateLanAndWanAddresses which sets bogus
advertise addresses as part of the test. Port numbers uniquely identify
members since everything is running on localhost.
2017-07-07 09:22:34 +02:00
Frank Schroeder
98dc634f17
test: make joinLAN/WAN reliable
...
only return if the members can see each other
2017-07-07 09:22:34 +02:00
Frank Schroeder
74d3c4d896
rpc: make TestServer_JoinSeparateLanAndWanAddresses more robust
2017-07-07 09:22:34 +02:00
Frank Schroeder
ae59198e38
rpc: make TestClient_SnapshotRPC_TLS more robust
2017-07-07 09:22:34 +02:00
Frank Schroeder
f4af0b6ab6
agent: make timing sensitive tests more robust
...
* make timing less aggressive
* mark timing tests as non-parallel
2017-07-07 09:22:34 +02:00
Frank Schroeder
37a7e52dd9
agent: fix TestCheckHTTP_TLSSkipVerify_true_pass
...
Make check timing less aggressive and give the test some time
to execute.
2017-07-07 09:22:34 +02:00
Frank Schroeder
88efbb0cc1
api: fix TestAPI_CatalogNodes test
2017-07-07 09:22:34 +02:00
Frank Schroeder
e203e10031
retry: relax timing for test a bit
2017-07-07 09:22:34 +02:00
Frank Schroeder
162e3e6298
command: make TestExecCommandRun_CrossDC more resilient
...
Wait after WAN join that both members see each other.
2017-07-07 09:22:34 +02:00
Frank Schroeder
46221d2b56
agent: do not modify agent config after NewAgent
2017-07-07 09:22:34 +02:00
Frank Schroeder
217d34f66d
agent: fix pending data races between localState and agent
...
This patch creates a local config structure for the local state
which is independent from the agent but populated from its
configuration. This avoids data races between the agent configuration
which can change during tests and concurrent go routines using the
configuraiton at the same time.
2017-07-07 09:22:34 +02:00
Frank Schroeder
6715a7a0c2
dns: fix data race in TestDNS_ServiceLookup_FilterACL
...
The agent config cannot be modified after start.
2017-07-07 09:22:34 +02:00
Frank Schroeder
62b695fb17
agent: fix data race in TestAgentAntiEntropy_EnableTagOverride
2017-07-07 09:22:34 +02:00
Frank Schroeder
188ea638d5
agent: clone partial consul config
...
The agent configuration for the consul server is a partial configuration
which needs to be cloned to avoid data races.
This is a stop-gap measure before moving the configuration into
a separate package.
2017-07-07 09:22:34 +02:00
Frank Schroeder
53e409758b
dns: fix data races in DNS compression tests
...
Make the DisableCompression value configurable at runtime
to allow tests to change it without restarting/recreating
the server.
2017-07-07 09:22:34 +02:00
Frank Schroeder
9a99069aad
agent: fix failing test from localState decoupling
...
Would be nice to know what changed though.
2017-07-07 09:22:34 +02:00
Frank Schroeder
24d8bdfb02
agent: fix data race between consul server and local state
2017-07-07 09:22:34 +02:00
Frank Schroeder
4322b7217c
serf: monkey patch data race in github.com/hashicorp/serf
...
https://github.com/hashicorp/serf/pull/476
This should be replaced when the patch is merged upstream
and the library is upgraded.
2017-07-07 09:22:34 +02:00
Frank Schroeder
0ed76615d3
rpc: monkey patch fix for data races for localState
...
The tests that use the localState of the agent access the internal
variables and call methods which are not guarded by locks creating
data races in tests. While the use of internal variables is somewhat
easy to spot the fact that not all methods are thread-safe is a
surprise.
A proper fix requires the localState struct to be moved into its own
package so that tests in the agent can only access the external
interface.
However, the localState is currently dependent on the agent.Config
which would create a circular dependency. Therefore, the Config
struct needs to be moved first for this to happen.
This patch literally monkey patches the use of the lock around the
cases which have data races and marks them with a
// todo(fs): data race comment.
2017-07-07 09:22:34 +02:00
Frank Schroeder
96c03ce73b
rpc: try shutting down leader first to avoid hang in TestLeader_LeftServer
2017-07-07 09:22:34 +02:00
Frank Schroeder
2eb2941e8c
rpc: fix logging and try quicker timing of TestServer_JoinSeparateLanAndWanAddresses
2017-07-07 09:22:34 +02:00
Frank Schroeder
98510f898c
rpc: less agressive raft timeouts
...
Allowing more time for raft to consolidate should
drop the number of leader elections.
2017-07-07 09:22:34 +02:00
Frank Schroeder
50c81a9397
rpc: run agent/consul tests in parallel
2017-07-07 09:22:34 +02:00
Frank Schroeder
b3189a566a
rpc: refactor sessionTimers and fix racy tests
...
The sessionTimers map was secured by a lock which wasn't used
properly in the tests. This lead to data races and failing tests
when accessing the length or the members of the map.
This patch adds a separate SessionTimers struct which is safe
for concurrent use and which ecapsulates the behavior of the
sessionTimers map.
2017-07-07 09:22:34 +02:00
Frank Schroeder
06ad8e96be
rpc: fix TestServer_Leave
...
wait for the leader election.
2017-07-07 09:22:34 +02:00
Frank Schroeder
4a073aec1c
rpc: fix TestSession_Renew
...
make the timing less tight
2017-07-07 09:22:34 +02:00
Frank Schroeder
77ff9f680f
rpc: fix TestReadyForConsistentRead
...
timing was too tight. Standardized name.
2017-07-07 09:22:34 +02:00
Frank Schroeder
e3252f921a
rpc: fix for 'no leader' in TLS tests
...
Ensure both servers know about each other before looking
for a leader.
2017-07-07 09:22:34 +02:00
Frank Schroeder
2497b8416b
rpc: fix TestServer_JoinWAN_Flood
...
The second server in the first data center should not be
in bootstrap mode.
2017-07-07 09:22:34 +02:00
Frank Schroeder
7af30dd7d7
rpc: provide unique node names for server and client
2017-07-07 09:22:34 +02:00
Frank Schroeder
457910b191
rpc: prefix log output with test name
2017-07-07 09:22:34 +02:00
Frank Schroeder
c33f7ecbe2
rpc: discover serf wan port before starting serf lan
...
When using dynamic ports for the serf clusters then
the actual bind port of the serf WAN cluster needs to
be discovered before the serf LAN cluster is started
since the serf LAN cluster announces the port of the WAN
cluster.
2017-07-07 09:22:34 +02:00
Frank Schroeder
84c90cbd07
rpc: bind rpc test server to port 0
2017-07-07 09:22:34 +02:00
Frank Schroeder
7f5957ee93
rpc: refactor: unify test server setup
2017-07-07 09:22:34 +02:00
Frank Schroeder
325637b6be
rpc: fix typos
2017-07-07 09:22:34 +02:00
Frank Schroeder
6a1ab1a2e0
api: refactor: unify naming of API tests
2017-07-07 09:22:34 +02:00
Frank Schroeder
97b7578ccd
api: refactor: prefix all API tests with API_
2017-07-07 09:22:34 +02:00
Frank Schroeder
85aa360843
agent: refactor: log to stderr during tests
2017-07-07 09:22:34 +02:00
Frank Schroeder
865a825116
agent: refactor: use handler for test http tls server
2017-07-07 09:22:34 +02:00
Frank Schroeder
21a0e94aea
agent: refactor: make address translation part of the agent
2017-07-07 09:22:34 +02:00
Chris Griggs
38f92aa4e8
Update # of ports ( #3238 )
...
I counted twice.
2017-07-06 13:50:12 -07:00
James Phillips
3388daf479
Adds links to Lifeguard info.
2017-07-06 12:19:39 -07:00
James Phillips
b45f49c230
Update CHANGELOG.md
2017-07-06 09:46:26 -07:00
Preetha Appan
d263d0266b
Updating CHANGELOG.md
2017-07-06 09:19:22 -05:00
preetapan
8ee9185deb
Merge pull request #3231 from hashicorp/issue_3230
...
Fixes deadlock between barrier write and leader notify channel read .…
2017-07-06 09:11:53 -05:00
Preetha Appan
ae656575ea
Rename to raftNotifyCh, fix typo
2017-07-06 09:10:36 -05:00
preetapan
ff46eb8e4c
Merge pull request #3236 from hashicorp/serf_update
...
Update serf to pull in disk space failure recovery changes
2017-07-06 08:59:46 -05:00
Preetha Appan
bb0e0bdff9
Update serf to pull in disk space failure recovery changes
2017-07-06 08:58:42 -05:00
Preetha Appan
777504ff0e
Fixes deadlock between barrier write and leader notify channel read . Fixes #3230
2017-07-05 17:09:18 -05:00