Michael Klishin
9f8a6a3f18
merge stable into default
2014-07-04 12:01:56 +04:00
Michael Klishin
fe37e1a629
Log correctly closed MQTT connections
...
Just like we do for AMQP.
2014-07-04 11:38:50 +04:00
Michael Klishin
96cf2cd364
Include MQTT connection (reader) pid in the log message
...
Just like we do for AMQP connections.
2014-07-04 11:38:27 +04:00
Michael Klishin
cf7b440aa4
merge stable into default
2014-07-03 21:41:36 +04:00
Michael Klishin
28fab87eac
Avoid ugly error messages when the collector terminates on abrupt reader/processor termination
...
They are harmless but can really confuse the user.
2014-07-03 21:37:25 +04:00
Michael Klishin
40c6380095
Handle MQTT processor errors more gracefully
2014-07-03 21:36:17 +04:00
Michael Klishin
881251d5f3
Special case TLS alert "unknown CA", which is very common
...
Indicates a generic certificate verification problem, which we mention.
2014-07-03 16:13:27 +04:00
Michael Klishin
a84a8a13a0
Further TLS upgrade error message improvements
...
* Include connection string
* Slightly more specific messages for handshake failure and other TLS alerts
2014-07-03 16:03:51 +04:00
Michael Klishin
ca67de6b7b
Improve error messages for failing connections and TLS upgrades
2014-07-03 15:46:59 +04:00
Michael Klishin
8a2525ec28
Ignore debug/*
2014-06-24 05:01:51 +04:00
Michael Klishin
2aa625b114
err => error
2014-05-25 10:19:01 +04:00
Michael Klishin
5d895a904d
merge bug26189 into stable (again)
2014-05-21 11:22:13 +04:00
Michael Klishin
750eeb593d
Inline stop and close_connection
2014-05-21 11:13:12 +04:00
Michael Klishin
7ad72a96cf
Let terminate/2 close direct client connection
2014-05-21 11:02:35 +04:00
Michael Klishin
fb62c75946
Use existing function to close connection
2014-05-21 10:47:54 +04:00
Michael Klishin
dfabf68e2e
Explain
2014-05-21 10:40:12 +04:00
Michael Klishin
1d4e2a00c5
Close direct connection cleanly when mqtt_reader terminates
...
Otherwise the connection will receive {'EXIT', Pid, shutdown} which it does
not expect and log a nasty crash report.
2014-05-21 10:36:30 +04:00
Michael Klishin
4232991625
Start collector before client_sup so that it's stopped later than the other
2014-05-21 09:22:38 +04:00
Michael Klishin
98b7de9dc6
List rabbit_mqtt_collector in rabbit_mqtt_sup child spec
...
To make sure the collector is shut down as expected.
2014-05-21 08:35:52 +04:00
Michael Klishin
c9c5899a1f
Make sure rabbit_client_sup will terminate rabbit_mqtt_client_sup and not keepalive_sup
2014-05-21 08:15:24 +04:00
Michael Klishin
94820cefaa
Make rabbit_mqtt_sup a supervisor2
2014-05-21 07:41:52 +04:00
Simon MacMullen
31dcbfb85d
Cosmetic (and test bz notification)
2014-04-15 14:18:37 +01:00
Michael Klishin
9cab3b8af4
Eliminate a warning
2014-04-15 15:21:20 +04:00
Michael Klishin
1c63bf716a
Initialise MQTT reader asynchronously, narrow the gap with rabbit_reader
2014-04-15 15:20:49 +04:00
Matthias Radestock
bc1cdd77d5
merge stable into default
2014-03-31 13:29:39 +01:00
Matthias Radestock
299bcc1d5b
eliminate race in testConnectFirst test
...
the test was highly timing sensitive; it published 1000 messages and
expected one of those publishes to fail due to the socket getting
closed by the server when encountering the first publish. So if the
client was quick enough / the server slow enough, all the publishes
would go through before the server processed the first one and closed
the socket. Cue test failure.
The new test sends an mqtt 'ping' and waits for a response. Not only
is this non-racy and doesn't require any magic timouts, it also is a
better exercise of the server logic: A 'publish' on a connection which
hasn't seen a 'connect' will fail anyway, even w/o the server code in
place that detects the missing 'connect', since processing a 'publish'
requires an amqp client connection, which in turn is only established
on 'connect'. By contrast, a 'ping' does not require an amqp client
connection. Hence removing the "make sure we have seen a 'connect'"
logic now results in a 'ping' response being sent, which makes the
test fail, as expected.
2014-03-31 13:26:58 +01:00
Matthias Radestock
56860f2009
cosmetic
2014-03-31 13:17:29 +01:00
Emile Joubert
35dc34bfff
Better 3.1.1 compatibility
2014-03-19 12:05:42 +00:00
Simon MacMullen
4e07b1d640
Update copyright for 2014
2014-03-17 17:25:23 +00:00
Simon MacMullen
04577ad084
Check source of user is acceptable.
2014-02-18 17:33:33 +00:00
Simon MacMullen
23019b084f
Cosmetic: fix indentation.
2014-02-18 17:33:00 +00:00
Simon MacMullen
2206e2ae64
Allow running tests on a Mac
2014-02-03 17:51:02 +00:00
Simon MacMullen
24644c8b25
stable to default
2014-01-30 15:34:48 +00:00
Simon MacMullen
f06453a0b9
Publish persistent messages for QoS 1.
2014-01-30 15:33:59 +00:00
Emile Joubert
c2da97cf65
Renames and codedocs
2014-01-20 10:33:27 +00:00
Emile Joubert
62c0d40f06
Prevent child calling its supervisor
2014-01-07 10:37:51 +00:00
Emile Joubert
8d950b1f26
Detection of absent keepalives
2014-01-06 17:50:02 +00:00
Emile Joubert
f98298a818
Merged stable into default
2013-12-04 15:13:57 +00:00
Emile Joubert
d65d20b8b9
Termination conditions when receiving multiple acks
2013-12-04 14:59:22 +00:00
Simon MacMullen
b6c09249e6
stable to default
2013-11-19 16:32:46 +00:00
Emile Joubert
4568741872
Support vhosts as part of username
2013-11-18 12:00:47 +00:00
Emile Joubert
f87e71af92
Unregister client IDs correctly
2013-11-14 13:48:14 +00:00
Simon MacMullen
d0f045bf1f
Eliminate use of gen_server:call/2.
2013-10-24 12:22:34 +01:00
Simon MacMullen
9bde9ce822
Revert part of f438760bff27 since the exception is now an IOException.
2013-10-03 11:34:09 +01:00
Emile Joubert
69b255af77
Propagate Erlang client API change
2013-09-24 11:24:21 +01:00
Simon MacMullen
0369111d32
stable to default
2013-09-16 14:45:09 +01:00
Emile Joubert
eb080c2704
Only unregister client id when necessary
2013-09-16 11:36:52 +01:00
Alvaro Videla
e2c9f63d0c
updated README to point to /mqtt.html
2013-08-19 09:14:52 -06:00
Emile Joubert
50f162ea0d
Swap connect and setting callback
2013-07-31 15:28:22 +01:00
Emile Joubert
23a100db9a
Merged stable into default
2013-07-31 13:57:31 +01:00
Emile Joubert
48fbca2834
Automatically subscribe when connecting
2013-07-26 17:43:25 +01:00
Simon MacMullen
bb95f34e47
s/VMware/GoPivotal/g
2013-07-01 10:49:14 +01:00
Simon MacMullen
73d32f6c6b
Specify the version of the paho MQTT client to use, and some API tweaks to use the latest version. Why not just use the version that used to work? Well, it required some non-standard ant stuff to build.
2013-04-15 16:38:10 +01:00
Tim Watson
c95996d80a
merge bug25487 into default
2013-04-05 13:32:59 +01:00
Emile Joubert
ed3ee2a2ff
client_sup API change
2013-04-05 12:42:32 +01:00
Emile Joubert
f225804df5
Transplant reverse of 8c13f168cf00
2013-04-04 17:08:30 +01:00
Emile Joubert
809fa199ca
Unfix bug
2013-04-04 16:41:57 +01:00
Emile Joubert
2e74c028c0
client_sup API change
2013-04-04 16:41:20 +01:00
Emile Joubert
1617d8c66d
Propagate API change of rabbit_client_sup
2013-03-14 16:13:03 +00:00
Emile Joubert
93dbe20ede
Correct use of client_id and worker
2013-03-13 16:11:08 +00:00
Emile Joubert
bd0f6f11ff
Handle connection abort while opening more gracefully
2013-03-01 10:49:23 +00:00
Matthias Radestock
5eb96838ab
merge stable into default
2013-02-28 13:08:55 +00:00
Emile Joubert
ffbe2c6560
Hibernate after opening connection and when waiting for data
2013-02-28 13:04:59 +00:00
Matthias Radestock
3458e1ab3e
cosmetic
2013-02-28 12:27:23 +00:00
Emile Joubert
cc5259ea9c
Silence warnings
2013-02-27 11:01:09 +00:00
Matthias Radestock
e97b07fa0f
socket buffer size tuning has moved into the tcp_acceptor
2013-02-26 15:33:13 +00:00
Simon MacMullen
82f8a8af9b
stable to default
2013-01-24 13:15:54 +00:00
Emile Joubert
f973d137c3
Update copyright 2013
2013-01-23 13:06:40 +00:00
Simon MacMullen
441a099dd0
API change
2013-01-09 12:06:09 +00:00
Simon MacMullen
cb693d294a
API change
2013-01-09 11:18:44 +00:00
Simon MacMullen
fa2818637e
Cosmetic
2013-01-08 16:29:04 +00:00
Simon MacMullen
62f7da67ac
Use amqp_direct_connection:socket_adapter_info/1.
2013-01-08 16:25:30 +00:00
Simon MacMullen
cc685ac724
address -> host.
2012-11-19 16:39:36 +00:00
Simon MacMullen
0be8fc79af
Establish stable branch
2012-11-19 16:37:20 +00:00
Emile Joubert
ad7d5bdbf0
Turn off file-based client persistence in tests
2012-11-13 11:30:17 +00:00
Emile Joubert
44d9fa8b17
Tests require Java AMQP
2012-11-12 13:35:35 +00:00
Emile Joubert
0f30448a51
Use binaries in headers
2012-11-06 10:32:38 +00:00
Emile Joubert
7a10b4a7ec
Interoperability fixes
2012-11-05 20:30:45 +00:00
Emile Joubert
b88a0e3373
Increase test delay
2012-09-25 09:52:41 +01:00
Simon MacMullen
43bd7f0188
Merge bug25089
2012-09-21 15:07:35 +01:00
Simon MacMullen
57cd05f0ed
Every other plugin uses :=, and this is preventing the CI misc plugins thing from removing this.
2012-09-19 17:09:13 +01:00
Emile Joubert
f574b2dcb6
Authenticate via direct client
2012-09-19 15:34:42 +01:00
Emile Joubert
11c2e485ec
Prefer https to git protocol for firewall reasons
2012-09-17 15:37:02 +01:00
Emile Joubert
03dc8b5849
Make tests run from umbrella and pass more reliably
2012-09-17 14:57:31 +01:00
Emile Joubert
2812742f8e
Correct log method
2012-09-12 16:28:24 +01:00
Simon MacMullen
0a53188d37
Typo
2012-09-12 14:37:45 +01:00
Emile Joubert
59e92bc6d8
Preview release build changes
2012-09-12 14:34:41 +01:00
Emile Joubert
a19130be7f
Document configuration
2012-09-12 12:18:39 +01:00
Emile Joubert
cfcdf7a59b
More consistent naming of credit flow state
2012-08-21 16:45:14 +01:00
Emile Joubert
c3801689b2
Backout changeset 641cfc6d09b7
2012-08-21 16:38:14 +01:00
Emile Joubert
13a61caab4
Remove unnecessary configuration
2012-08-21 16:22:31 +01:00
Emile Joubert
2a716fac2b
Clearer separation between reader and processor
2012-08-20 17:30:13 +01:00
Emile Joubert
d24a5d7f2a
Register collector name differently
2012-08-17 15:14:40 +01:00
Emile Joubert
a7a58ad66a
Updated adapter into record name, safer logging, macro corrections
2012-08-17 15:05:14 +01:00
Emile Joubert
a6856a4a04
Improvements around delivery handling
2012-08-16 18:09:21 +01:00
Emile Joubert
37761141cb
Name topic translation methods more sensibly
2012-08-16 18:01:45 +01:00
Emile Joubert
8d52799853
Removed adapter info from state
2012-08-16 17:56:50 +01:00
Emile Joubert
a53c389211
Remove implicit rules for compiling java
2012-08-10 10:16:15 +01:00
Emile Joubert
c904f78b2e
Run tests from Makefile
2012-08-09 18:55:45 +01:00
Emile Joubert
c55ca8584e
Add conservative prefetch limit
2012-08-09 13:52:19 +01:00
Simon MacMullen
a225aa3705
Make register not require unregister first. Duplicate detection is now done in the register call.
2012-08-08 13:37:59 +01:00
Simon MacMullen
8a53099fa8
Revert c493777cbfc5, I was being dumb, it won't match due to being in a closure.
2012-08-08 13:30:18 +01:00
Simon MacMullen
85727eafc7
Seems a bit cleaner to ignore undefined here.
2012-08-08 13:09:50 +01:00
Simon MacMullen
75620477ab
Simplify
2012-08-08 12:49:53 +01:00
Simon MacMullen
1eef766311
Remove that {go, ...} gs call.
2012-08-08 12:47:24 +01:00
Emile Joubert
02f375a3c0
Add client id collector
2012-08-06 17:58:15 +01:00
Emile Joubert
d3f4a2dc24
Updates
2012-08-05 23:52:54 +01:00
Emile Joubert
1b9350fe03
Handle QoS1 duplicate publishes
2012-07-16 22:52:53 +01:00
Emile Joubert
ec215b34bd
Clean sessions, and anonymous connections
2012-07-16 14:57:31 +01:00
Emile Joubert
c553880ac7
Avoid a separate erlang process for processor
2012-07-13 16:32:13 +01:00
Emile Joubert
f79bf51275
Tests
2012-07-05 18:08:23 +01:00
Emile Joubert
9783db3f5d
Rudimentary unsubscribe support
2012-07-04 17:47:07 +01:00
Emile Joubert
78b41c8fc0
Basic subscription and heartbeat response
2012-07-04 16:31:30 +01:00
Emile Joubert
1603079761
Basic authentication and publishing
2012-07-03 17:35:18 +01:00
Emile Joubert
f195facf1c
Sufficient parsing to accept connection
2012-07-03 09:55:31 +01:00
Emile Joubert
e973267fcf
Protocol adapter skeleton
2012-06-26 17:57:24 +01:00