Tyler Treat
56ab619498
First pass at implementing cluster reload
2017-06-16 15:53:07 -05:00
Tyler Treat
1e964e4aab
Address CR feedback
2017-06-14 16:48:11 -05:00
Tyler Treat
e4ccaa25bd
Remove unused switch case
2017-06-14 12:09:01 -05:00
Tyler Treat
77a973fc8d
Send error when we drop a client subscription
2017-06-14 12:08:44 -05:00
Tyler Treat
6e3f58f48c
Fix tests and cleanup log output
2017-06-14 10:38:21 -05:00
Tyler Treat
ac04d555f2
Merge branch 'master' of github.com:nats-io/gnatsd into users_reload
2017-06-14 09:28:18 -05:00
Peter Miron
5724da1c27
Merge pull request #512 from nats-io/random_port_extended
...
Random port extended
2017-06-14 08:08:45 -04:00
Tyler Treat
4675603b60
Remove impossible branch logic
2017-06-13 16:23:07 -05:00
Tyler Treat
44966230db
Handle permissions changes on config reload
2017-06-13 16:04:38 -05:00
Peter Miron
c655c2939e
added additional opts tests to increase coverage.
2017-06-12 18:28:53 -04:00
Peter Miron
00744ff426
converted MonitorAddr and ClusterAddr to *net.TCPAddr
2017-06-12 17:40:36 -04:00
Tyler Treat
fa12181094
Add support for reloading users credentials
2017-06-12 13:17:30 -05:00
Tyler Treat
d11a3979fc
Log changes to AuthTimeout and TLSTimeout
2017-06-12 12:13:32 -05:00
Tyler Treat
9ba55f0f21
Add support for reloading single-user and token authentication
2017-06-12 11:52:11 -05:00
Peter Miron
606502091c
Updated based on @tylertreat feedback.
2017-06-12 10:48:30 -04:00
Peter Miron
5e640f099d
clean up of log files. removed FatalError function to make sure I'm minimizing changes to actual server.
2017-06-11 16:20:04 -04:00
Peter Miron
da1cb9abb2
missed go fmt'ing.
2017-06-10 10:39:09 -04:00
Peter Miron
d1f38f38a2
changes to support random ports for clusters and profiler.
2017-06-10 10:35:01 -04:00
Derek Collison
855ca705c3
Merge pull request #510 from nats-io/fix_test_logoutput
...
Fix leaking log output in unit tests
2017-06-09 08:02:57 -07:00
Derek Collison
7a8fc9b3e6
Merge pull request #509 from nats-io/remote_monitoring_port
...
Added ability to use random ports to limit unit test port contention.
2017-06-09 06:56:40 -07:00
Derek Collison
482b6a9e46
Merge pull request #507 from nats-io/fix_opts_copy
...
Fix Options Clone
2017-06-09 06:55:36 -07:00
Ivan Kozlovic
923735ac74
Updated test to suppress stdout output
...
The parsing of write_deadline may produce a warning to stdout
since there is no logger set at this stage.
Updated the test to suppress stdout to not polute the tests output.
2017-06-08 19:40:06 +02:00
Tyler Treat
00d0e3d7cb
Fix leaking log output in unit tests
2017-06-08 10:55:43 -05:00
Peter Miron
f2a9cc8cb0
fixed go fmt'ing
2017-06-08 11:37:23 -04:00
Tyler Treat
6bdc906288
Add User clone test for nil Permissions
2017-06-08 10:17:33 -05:00
Peter Miron
43a3f1ef1d
cleaned up naming to MonitorAddr instead of HttpPort (as it could be either Http or Https). added test for nil to improve coverage.
2017-06-08 10:46:55 -04:00
Peter Miron
41aa44cd8d
Added ability to use random ports to limit unit test port contention.
2017-06-08 10:19:56 -04:00
Tyler Treat
4c33177bd3
Bump up TLS timeout in test configs
2017-06-07 18:05:28 -05:00
Tyler Treat
648b7367c0
Fix data race
2017-06-07 17:40:17 -05:00
Tyler Treat
30db4be965
Ensure old connection still works in TLS reload test
2017-06-07 17:03:33 -05:00
Tyler Treat
5d36a7797e
Fix Options Clone
...
Ensure Options.Clone() only initializes Users and Routes when the
Options it's cloning has them initialized.
2017-06-07 16:54:40 -05:00
Tyler Treat
d172ca5801
Add unit tests around TLS config reload
2017-06-07 16:34:39 -05:00
Tyler Treat
b7211f6dc8
Improve readability of TLSVerify assignment
2017-06-07 14:58:30 -05:00
Tyler Treat
b70e2c2fc2
Implement config reload support for TLS
...
Allows reloading TLS config. This includes enabling/disabling TLS,
rotating keys/certs, enabling/disabling client verification, etc.
2017-06-07 12:25:56 -05:00
Stephen JANNIN
7db8a49468
fix windows build
2017-06-07 15:43:11 +02:00
Tyler Treat
687a20be1c
Implement config reload support for debug
...
Add config reload support for `debug` option.
2017-06-06 11:30:06 -05:00
Tyler Treat
4f28bf7630
Remove use of getOpts() in log.go
2017-06-06 08:51:34 -05:00
Tyler Treat
cc30af8ede
Address code review feedback
2017-06-05 17:43:42 -05:00
Tyler Treat
c468abd15f
Merge branch 'master' of github.com:nats-io/gnatsd into config_reload
2017-06-05 13:41:04 -05:00
Derek Collison
cba3170c1e
Merge pull request #502 from nats-io/fix_test_race
...
[FIXED] Intermittent failing test
2017-06-05 10:15:55 -07:00
Tyler Treat
d2fd0b7190
Reduce AuthTimeout in test
2017-06-05 09:51:05 -05:00
Tyler Treat
0bda6da60e
[FIXED] Intermittent failing test
...
Added the sleep back in to TestAuthorizationTimeout which got removed in #493 .
This was causing the test to fail intermittently, though it would
usually pass on Travis CI or with the -race flag since these slowed it
down enough.
2017-06-01 16:38:02 -05:00
Tyler Treat
677ff0aae0
Rename opts to diffOpts in diffOptions for clarity
2017-06-01 14:22:41 -05:00
Tyler Treat
e109c3fa65
Remove SIGHUP handling
...
Do not expose config reloading yet until we are ready.
2017-06-01 14:11:16 -05:00
Tyler Treat
c8280aaee4
Get rid of defer in Server.getOpts()
...
Defer adds a bit of overhead which can affect fast-paths.
2017-06-01 11:50:28 -05:00
Tyler Treat
28160f1de2
Remove global logger
...
gnatsd currently uses a global logger. This can cause some problems
(especially around the config-reload work), but global variables are
also just an anti-pattern in general. The current behavior is
particularly surprising because the global logger is configured through
calls to the Server.
This addresses issue #500 by removing the global logger and making it a
field on Server.
2017-05-31 16:06:31 -05:00
Tyler Treat
43ee0ce6df
Fix unit tests
2017-05-31 12:52:20 -05:00
Tyler Treat
b95dd5dfd0
Add tests around config reload
2017-05-30 21:09:35 -05:00
Tyler Treat
9902c3da84
First pass at implementing config reload
2017-05-30 16:18:36 -05:00
Ivan Kozlovic
773b25af85
[FIXED] Shutdown stops http server when started manually
...
In case one creates a server instance with New() and then starts
the http server manually (s.StartHTTPMonitoring()), calling
s.Shutdown() would not stop the http server because Shutdown()
would return without doing anything if `running` was not true.
This boolean was set to true only in `s.Start()`.
Also added StartMonitoring() to perform the options check and
selectively start http or https server to replace individual calls.
This is useful for NATS Streaming server that will now be able
to call s.StartMonitoring() without having to duplicate code
about options checks and http server code.
This is related to PR #481
2017-05-25 17:01:35 -06:00