Commit Graph

82 Commits

Author SHA1 Message Date
Derek Collison
bb0e6429bd Fixed race condition 2015-08-06 00:20:17 -07:00
Derek Collison
075529e2fe Properly handle and enforce max payload 2015-08-05 22:05:58 -07:00
Derek Collison
4dd23e0f2d Added slow consumers to varz, fixed reporting bug 2015-07-14 14:55:36 -07:00
Derek Collison
90d1d6d572 Much improved large message performance 2015-06-25 13:51:53 -07:00
Derek Collison
96bab33075 fixed import paths 2015-06-19 12:08:11 -07:00
Derek Collison
6c07375abc Add lang and version for clients 2015-06-15 20:57:49 -07:00
Derek Collison
d98089a6a5 fixed some race conditions 2015-06-15 18:46:31 -07:00
Derek Collison
51f3ca8216 Added placeholder for client language 2015-06-15 18:09:12 -07:00
Derek Collison
e940b2b748 Moved srv check 2015-04-09 09:11:04 -07:00
Derek Collison
2758974735 Fixed logging bugs, added in additional tracing 2015-01-16 11:58:21 -08:00
Derek Collison
651d169dfd Changes to trace logging output, bug fixes 2015-01-09 18:47:16 -08:00
Derek Collison
48f6086f34 Fixed some debug logging 2014-12-18 20:15:12 -08:00
Máximo Cuadros Ortiz
65ae9c16f2 extendable auth methods 2014-11-27 00:26:13 +01:00
Máximo Cuadros Ortiz
54ac589d82 Client: missing Debugf, Noticef and Tracef methods 2014-11-25 23:38:58 +01:00
Ken Robertson
5623b583a9 Updates for new logging to appease govet
Govet doesn't like functions that look like format handlers not ending in `f`,
such as Debug() vs Debugf(). This is changing some of the new log handling to
use 'f' function names to appease govet.

Updated the implicit handling of including the client as an arg without being
used in a format string. Now the client object simply has a Errorf function
for logging errors and it adds itself onto the format string.
2014-10-29 11:32:14 -07:00
Máximo Cuadros Ortiz
7c7578ae38 Notice and Logger messages 2014-10-16 01:16:21 +02:00
Máximo Cuadros Ortiz
6586ac4653 better client identification at logs and some performances improves 2014-10-16 00:44:56 +02:00
Máximo Cuadros Ortiz
96d044dce4 login system abstraction 2014-10-16 00:44:22 +02:00
Julian Friedman and Zach Robinson
79c45db605 No longer add subscriptions to router clients with no existing connection.
race condition:
 - a client is closed at the same time as an incoming SUB message occurs.
 - the subscription is added to the srv.sl even though the socket is
   closed.
 - the connection cleanup has already run, so the bad state is never
   corrected
 - now messages may be forwarded to a client without a connection
 - messages will not be forwarded to a router that needs it now, because
   processMsg assumes the router already received it
2014-10-04 22:38:59 +02:00
Derek Collison
68ce4b41ba function closures 2014-09-18 21:24:09 -07:00
Derek Collison
dc35bc8d2e Merge pull request #44 from fraenkel/stale_reconnect
Let readLoop do the closeConnection magic on any error
2014-09-15 10:50:19 -07:00
Michael Fraenkel
7a7b19e8c1 Prevent duplicate routes properly
* Guarantee lock when checking & adding a route
* Upgrade to a solicited route if one is seen
* Fix race issue when setting the remoteID
2014-09-13 22:06:43 -05:00
Michael Fraenkel and Zach Robinson
c5db2a03a3 Let readLoop do the closeConnection magic on any error
clearConnection will close the socket, but defer to readLoop to clean
up the client's connection
2014-09-12 11:20:57 -07:00
Ken Robertson
8ccf0a8bb8 Fix gofmt issues 2014-08-12 23:06:01 -07:00
w00228948
31bc0bdb8c Use authTimeout in setAuthTimer 2014-08-12 17:55:59 +00:00
Derek Collison
13d256b8cc Fix minor races, add in 1.3 to testing, bump version 2014-07-24 08:03:04 -07:00
Derek Collison
e172f4bdf9 Fixed issue #29 with subscriptions leaking across routes on auto-unsubscribe 2014-04-30 14:18:42 -07:00
Derek Collison
98b7482b68 syntax 2014-04-16 09:25:13 -07:00
Derek Collison
7da1e87748 copyright hygiene 2014-02-06 19:34:12 -08:00
Derek Collison
edc49b7924 Fixes issues #21 and #22 2014-02-06 19:24:11 -08:00
Derek Collison
eb5c550f10 Fixed slice panic on MSG_ARG split buffer 2013-12-12 13:11:37 -08:00
Derek Collison
ae94365ca4 Removed setting the Read or Write Buffers.
For some reason, this caused abysmal performance issues on Mac (Mavericks). Still investigating.
2013-12-08 14:52:34 -08:00
Derek Collison
688963fd0a Use shortcut 2013-11-18 16:03:16 -08:00
Derek Collison
6d0f200aca Don't trace included CR_LF 2013-10-18 13:02:49 -07:00
Derek Collison
b32bc384c4 Fixes for reflective solicited routes 2013-10-18 12:53:47 -07:00
Derek Collison
f0d98db3c4 Handle errors over routes better 2013-10-16 10:46:03 -07:00
Derek Collison
bd0bb5d52c Properly process INFO messages from routes. 2013-10-16 08:44:59 -07:00
Derek Collison
d21e2caf8c golint updates 2013-10-13 09:52:51 -07:00
Derek Collison
6ab5d6a337 Fixed msg payload accounting, made http monitoring work in Go routines 2013-08-19 15:09:41 -07:00
Derek Collison
d322939b17 gofmt 2013-08-19 12:16:30 -07:00
Derek Collison
8fa318738c Attach /r/n to msg to avoid extra write. Fix auth checks 2013-08-19 12:14:29 -07:00
Derek Collison
c7ec32b2e0 Make checking authTimer cheaper 2013-08-16 06:46:50 -07:00
Derek Collison
0463533904 Transfer scratch buffer to client struct off of stack 2013-08-15 17:07:26 -07:00
Derek Collison
60f4c67bbf Cleaner way of handling the initial sends 2013-08-03 14:24:19 -07:00
Derek Collison
cf0f30200f log file support, data race fixes 2013-08-02 16:52:54 -07:00
Derek Collison
8026c3e91d Fix data read race 2013-07-30 18:44:57 -07:00
Derek Collison
b136f41fdb Queue Subscriber rework 2013-07-29 22:33:16 -07:00
Derek Collison
de469cada6 Reconnect logic 2013-07-29 20:02:47 -07:00
Derek Collison
c61412a862 Only send over route once 2013-07-29 18:13:32 -07:00
Derek Collison
025b63300b 1-hop semantics for messages from routes 2013-07-29 17:09:41 -07:00