Commit Graph

1341 Commits

Author SHA1 Message Date
Ivan Kozlovic
2d75c83aeb Remove megacheck for now
Reason: https://github.com/dominikh/go-tools/issues/269
2018-02-28 11:39:33 -07:00
Ivan Kozlovic
ba6b6f352d Merge pull request #626 from nats-io/notify_clients_when_routes_go_away
[ADDED] Notification to clients when servers leave the cluster
2018-02-28 10:48:53 -07:00
Ivan Kozlovic
1acf330e07 [ADDED] Notification to clients when servers leave the cluster
Until now, a server would only notify clients of servers that join
the cluster. More than that, a server would send ot its clients only
information if new servers were added.
This PR changes this by sending to clients that support async INFO
the list of URLs for all servers in the cluster any time that there
is a change (joining or leaving the cluster).
As of now, clients will not be affected by the change (and will not
take benefit of this: removing servers from their server pool). This
will be addressed in each supported client once this is merged.
2018-02-27 14:22:13 -07:00
Ivan Kozlovic
c03d5663ac Merge pull request #625 from nats-io/update_travis_go_versions
Update Go versions in travis.yml
2018-02-26 10:19:47 -07:00
Ivan Kozlovic
30655ceca7 Update Go versions in travis.yml 2018-02-26 10:04:58 -07:00
Ivan Kozlovic
f8f1f026e2 Merge pull request #624 from nats-io/injected-version
[ADDED] Print release's GitCommit in the banner
2018-02-26 09:25:05 -07:00
Ivan Kozlovic
163ba3f6a7 Merge pull request #608 from nats-io/fix_issue_447
[ADDED] Client and Cluster Advertise. Issue #447
2018-02-26 09:12:58 -07:00
Alberto Ricart
3aa1a75849 Merge remote-tracking branch 'origin/injected-version' into injected-version
# Conflicts:
#	server/server.go
2018-02-21 19:25:10 -06:00
Alberto Ricart
ce6a5e6c8c Merge remote-tracking branch 'origin/injected-version' into injected-version
- Renamed GitHash to gitCommit as per discussions with Ivan
- Set gitHash to 'not set' if not set (as in the case of a local build)

# Conflicts:
#	server/server.go
2018-02-21 19:24:40 -06:00
Alberto Ricart
daa47f3a91 Merge remote-tracking branch 'origin/injected-version' into injected-version
# Conflicts:
#	server/server.go
2018-02-21 17:30:44 -06:00
Alberto Ricart
68b7aa0155 [ADD] Added github.com/nats-io/gnatsd/server.GITHASH compile variable which allows for linker to inject the githash that gnatsd was built from. See https://husobee.github.io/golang/compile/time/variables/2015/12/03/compile-time-const.html. The githash is exposed on server startup (debug) and on /varz.
[FIX] Docker images were injecting the compile time variable `github.com/nats-io/gnatsd/version.GITCOMMIT`, however this is not referenced nor exposed anywhere.
2018-02-21 17:29:21 -06:00
Alberto Ricart
0bcc360de1 [ADD] Added github.com/nats-io/gnatsd/server.GITHASH compile variable which allows for linker to inject the githash that gnatsd was built from. See https://husobee.github.io/golang/compile/time/variables/2015/12/03/compile-time-const.html. The githash is exposed on server startup (debug) and on /varz.
[FIX] Docker images were injecting the compile time variable `github.com/nats-io/gnatsd/version.GITCOMMIT`, however this is not referenced nor exposed anywhere.
2018-02-21 17:26:41 -06:00
Ivan Kozlovic
acf4a31e4b Major updates + support for config reload of client/cluster advertise 2018-02-05 20:15:36 -07:00
Ivan Kozlovic
f39cd53d07 Merge pull request #598 from nats-io/add-server-id-to-routez-connz
[ADDED] Server id to connz and routez
2018-01-30 15:10:49 -07:00
Ivan Kozlovic
5a351c56ce Merge branch 'master' into add-server-id-to-routez-connz 2018-01-30 14:59:26 -07:00
Derek Collison
b56ca22d1b Updated benchmarks 2018-01-15 15:27:18 -08:00
Colin Sullivan
77d41da701 Merge pull request #616 from nats-io/update-office-hours
Update office hours link
2018-01-15 16:14:30 -07:00
Colin Sullivan
43330bfadd Remove zoom from office hours descrption. 2018-01-15 13:11:38 -07:00
Colin Sullivan
c197771b12 Update office hours link 2018-01-07 19:17:15 -07:00
Ivan Kozlovic
ee7b97e6ee Merge pull request #611 from nats-io/error_logging
[IMPROVED] Use correct log level for route errors
2017-12-11 09:04:07 -07:00
Tyler Treat
379701758c Use correct log level for route errors
Also move route created log message to when the route has actually been
created successfully.
2017-12-11 08:10:42 -06:00
Peter Miron
306a3f9507 Resolving Ivan's feedback. 2017-11-29 15:35:05 -05:00
Peter Miron
4829592107 removed support for array of Advertise addresses. Added support for Route advertise address. 2017-11-29 11:41:08 -05:00
Peter Miron
7d34b890c6 Takes list of client connect addresses. Uses the first as the host / port sent on info. 2017-11-28 09:55:35 -05:00
Ivan Kozlovic
b002db4a1c Merge pull request #606 from nats-io/always_send_info
[CHANGED] Server notifies clients when server rejoins cluster
2017-11-27 13:37:21 -07:00
Peter Miron
6852298e7b draft of fix for issue #447. allows advertising separate host:ports to client. 2017-11-27 15:34:15 -05:00
Ivan Kozlovic
cde2aa6d2f Merge pull request #604 from nats-io/fix_connz_tls_handshake
[FIXED] Connz would "block" for TLS clients still in TLS handshake
2017-11-17 12:31:58 -07:00
Ivan Kozlovic
fa86ff93eb [CHANGED] Server notifies clients when server rejoins cluster
When the option Cluster.NoAdvertise is false, a server will send
an INFO protocol message to its client when a server has joined
the cluster.

Previously, the protocol would be sent only if the
joining server's "client URLs" (the addresses where clients connect
to) were new. It will now be sent regardless if the server joins
(for the first time) or rejoins the cluster.

Clients are still by default invoking the DiscoveredServersCB callback
only if they themselves detect that new URLs were added. A separate
PR may be filled to client libraries repo to be able to invoke
the callback anytime an async INFO protocol is received.

Based on @madgrenadier PR #597.
2017-11-17 12:21:34 -07:00
Ivan Kozlovic
7a4f7bbf03 Fix megacheck 2017-11-17 12:21:05 -07:00
Ivan Kozlovic
99f718fd9e Merge pull request #603 from nats-io/fix_http_servers_timeout
[FIXED] Profiling and Monitoring timeout issues
2017-11-17 12:17:20 -07:00
Ivan Kozlovic
6fad293a21 [FIXED] Connz would "block" for TLS clients still in TLS handshake
If server requires TLS and clients are connecting, and a Connz
request is made while clients are still in TLS Handshake, the
call to tls.Conn.ConnectionState() would block for the duration
of the handshake. This would cause the overall http request to
take too long.
We will now not try to gather TLSVersion and TLSCipher from a
client that is still in TLS handshake.

Resolves #600
2017-11-09 09:47:05 -07:00
Ivan Kozlovic
22cff99e58 [Fixed] Profiling and Monitoring timeout issues
The http servers for those two were recently modified to set
a ReadTimeout and WriteTimeout. The WriteTimeout specifically
caused issues for Profiling since it is common to ask sampling
of several seconds. Pprof code would reject the request if it
detected that http server's WriteTimeout was more than sampling
in request.
For monitoring, any situation that would cause the monitoring code
to take more than 2 seconds to gather information (could be due
to locking, amount of objects to return, time required for sorting,
etc..) would also cause cURL to return empty response or WebBrowser
to fail to display the page.

Resolves #600
2017-11-08 14:58:10 -07:00
Ivan Kozlovic
92c4481d1b Merge pull request #601 from nats-io/update_go_version
Update Go version to 1.9.2
2017-11-08 10:16:39 -07:00
Ivan Kozlovic
24a422470a Update Go version to 1.9.2
Updated travis to use 1.8.5 and 1.9.2 and build/push release
for 1.9.2 release.
Updated Docker files too.
2017-11-08 10:06:44 -07:00
Alberto Ricart
e0fe1247dd [FIX] #490 - Added server id to connz and routez 2017-10-24 19:36:10 -05:00
Ivan Kozlovic
c19527c03f Merge pull request #585 from wallyqs/process-pub-args-crlf
Remove check for '\r\n' when processing pub args
2017-10-17 08:59:43 -06:00
Ivan Kozlovic
a2d2327975 Merge pull request #580 from wallyqs/goto-parsesize
Remove for loop in parseSize to enable inlining
2017-10-17 08:57:44 -06:00
Ivan Kozlovic
12a5ced612 Merge pull request #593 from nats-io/prepare_for_next_release
Update README and version number for next release
v1.0.4
2017-09-27 11:11:30 -06:00
Ivan Kozlovic
d90dc55879 Update README and version number for next release 2017-09-25 13:14:48 -06:00
Ivan Kozlovic
b83c9d1ca4 Merge pull request #592 from nats-io/fix_unknown_cipher_name
[FIXED] Name of selected new cipher suites
2017-09-25 13:01:43 -06:00
Ivan Kozlovic
d4695d5e99 [FIXED] Name of selected new cipher suites
Use a map by id to return name of all supported ciphers. Use that
name to display the cipher name on handshake completion.

Resolves #591
2017-09-25 10:56:36 -06:00
Ivan Kozlovic
26ff94c21c Merge pull request #587 from RedShift1/master
Add systemd unit file
2017-09-25 09:44:02 -06:00
Glenn Matthys
89cbb9613c Remove PIDFile and implement Reload & Stop commands
Removes PIDFile (gnatsd doesn't create a pid file) and implements the
Reload and Stop service commands
2017-09-20 21:24:51 +02:00
Ivan Kozlovic
347798428d Merge pull request #576 from orus-io/custom_auth
[ADDED] Custom Authorization through Options
2017-09-20 11:40:49 -06:00
Tyler Treat
d19c7d0a7d Merge pull request #588 from nats-io/add-write_deadline
Add write_deadline configuration option [ci skip]
2017-09-18 16:58:22 -05:00
Colin Sullivan
8f3439fb3e Add write_deadline configuration option [ci skip] 2017-09-18 12:39:57 -06:00
Glenn Matthys
1415511cdf Add systemd unit file 2017-09-13 16:45:28 +02:00
Waldemar Quevedo
c8f151ef51 Remove check for '\r\n' when processing pub args
The parser has already dropped CRLF by when `processPub`
is called, so can skip doing the these checks there.
2017-09-11 14:21:58 -07:00
Ivan Kozlovic
c3e09519f9 Merge pull request #584 from nats-io/accept_error_level
[CHANGED] Client Accept error log level
2017-09-11 09:04:08 -06:00
Tyler Treat
4a6fd4317a Change client Accept error log level
This is an error users should know about. Thus, the log level should be
error.

Fixes #583
2017-09-11 09:14:10 -05:00