Michael Klishin
377752d003
Ignore client ID tracker timeouts on connection closure
...
There isn't much to do about those at this stage in the connection
lifecycle anyway.
2020-02-21 21:42:39 +03:00
Gerhard Lazu
72887dbd52
Update rabbitmq-components.mk
2020-02-11 15:31:46 +00:00
kjnilsson
eadf5f7094
Make interactions with Ra async
...
To avoid blocking when registering or unregistering a client id. This is
ok as informing the current connection holder of the client id is
already async. This should be more scalable and provide much better MQTT
connection setup latency.
2020-02-10 17:28:18 +00:00
Michael Klishin
2927f473ce
(c) bump
2019-12-29 05:50:32 +03:00
Jean-Sébastien Pédron
3af67f744b
Git: Ignore copied CLI
2019-12-12 15:00:20 +01:00
Jean-Sébastien Pédron
a188885008
Update rabbitmq-components.mk
2019-12-12 13:14:55 +01:00
Michael Klishin
cf9e258d49
Make it possible to override client ID in some tests
2019-11-25 17:37:50 +03:00
Michael Klishin
ddb00edbeb
Merge pull request #217 from velimir/cache-topic-access
...
cache topic access
2019-11-07 22:51:17 +00:00
Grigory Starinkin
a337839983
limit topic permission cache size
2019-11-07 14:40:10 +00:00
Grigory Starinkin
8c29181b7b
cache topic permission access
...
performance optimisation
2019-11-07 14:39:43 +00:00
Grigory Starinkin
549579e595
cache topic translation results
...
performance optimisation
2019-11-07 14:36:14 +00:00
Michael Klishin
92edaa716e
Update .travis.yml
2019-11-05 17:24:16 +00:00
Michael Klishin
5947ac6961
Use a topic name that has R and W permissions
2019-11-05 17:07:55 +00:00
Michael Klishin
35a99a24a2
Downgrade QoS 2 to QoS 1 when sending Last Will
...
Closes #214 .
2019-11-05 16:54:20 +00:00
Jean-Sébastien Pédron
26995315c6
rabbit_mqtt_collector: Pass several node IDs to ra:query_leader()
...
... instead of the local node ID only.
In CI, after an MQTT node is decommissioned (using `rabbitmqctl
decommission_mqtt_node`), `ra:query_leader()` with the local node ID
may return `{error, noproc}`.
Giving this function all the node IDs fixes the problem because Ra tries
all node IDs in turn until one responds.
2019-10-29 10:18:03 +01:00
Michael Klishin
ab1b923794
(c) year
2019-10-22 13:31:13 +03:00
Arnaud Cogoluègnes
26a17e8530
Modernize Java test suite
...
Migrate to JUnit 5, use TestInfo to create test-related MQTT
client ID when possible, remove Awaitility in favor of a in-house
utility and the use of lambdas, clean some code.
2019-09-23 14:43:40 +02:00
Luke Bakken
e8c9b6d118
Remove two unnecessary class variables
2019-09-20 15:51:39 -07:00
Luke Bakken
a07c231891
Ensure each test has a meaningful client id
2019-09-20 15:44:28 -07:00
Luke Bakken
2141339a80
Remove another snowflake topic
2019-09-20 09:16:04 -07:00
Luke Bakken
13f881e6e3
Remove another snowflake topic
2019-09-20 05:22:16 -07:00
Luke Bakken
e19deefc14
Remove "mid" topic and replace with test-topic
2019-09-20 05:01:29 -07:00
Luke Bakken
60ac7affa5
Use per-testcase instance of TestMqttConnectOptions
2019-09-19 17:12:55 -07:00
Luke Bakken
54a3ab1666
Formatting
2019-09-19 16:37:05 -07:00
Luke Bakken
a487dc427a
Fix willIsRetained test
2019-09-19 11:39:48 -07:00
Luke Bakken
d92c60e882
Fixed the lastWillNotSentOnRestrictedTopic test
2019-09-19 11:17:13 -07:00
Luke Bakken
d8669f7bc0
Increase debug level
...
One test fixed at least
2019-09-19 10:00:43 -07:00
Michael Klishin
b94ceeb398
Java integration suite: reduce use of shared mutable state
...
Per discussion with @acogoluegnes.
2019-09-19 15:26:21 +03:00
Michael Klishin
4755325f19
An attempt to avoid Paho Java state exceptions
2019-09-19 11:39:58 +03:00
Michael Klishin
286e60b08f
Ignore IDEA project files
2019-09-19 10:30:20 +03:00
Michael Klishin
82f526baed
New Paho version does not handle null passwords
2019-09-19 10:28:39 +03:00
Michael Klishin
103dc2c5eb
Bump RabbitMQ and Paho clients used in tests
2019-09-19 09:26:26 +03:00
kjnilsson
1cb43f9a7d
Update rabbitmq-components.mk
2019-09-13 10:24:25 +01:00
Luke Bakken
92f1ca1971
Rename sparkplug_b to sparkplug
2019-09-06 08:58:04 -07:00
Arnaud Cogoluègnes
2ffa74e262
Disable Sparkplug support by default
...
References #206
2019-09-06 15:08:57 +02:00
Arnaud Cogoluègnes
f0ef67e2fc
Use AMQP topic name in translation test
...
References #206
2019-09-06 15:07:29 +02:00
Luke Bakken
061651f31e
Correctly set topic permissions for sparkplug B prefix, and use correct topics in test
2019-09-04 10:24:47 -07:00
Luke Bakken
d0c0ec33ff
Use new translation funs in library
2019-09-04 08:07:33 -07:00
Luke Bakken
e7554def0a
Topic translation CT tests pass
2019-09-04 07:43:35 -07:00
Luke Bakken
8e1ddac03d
Add CT tests for topic translation funs, failing currently
2019-09-04 07:43:35 -07:00
Luke Bakken
e05d0e2dbd
Use string: functions rather than regexes
2019-09-04 07:43:35 -07:00
Luke Bakken
b60582d0fb
Start working on MQTT/AMQP translation funs that take sparkplug into account
2019-09-04 07:43:35 -07:00
Luke Bakken
04fcd898ca
Add failing test involving MQTT/Sparkplug B and AMQP interop
2019-09-04 07:43:35 -07:00
Luke Bakken
88bf29e7b3
Fix test for mqtt.sparkplug_b
2019-09-04 07:43:35 -07:00
Luke Bakken
e0504e7617
Add failing test for mqtt.sparkplug_b schema element
2019-09-04 07:43:35 -07:00
kjnilsson
52dbc4206c
Update rabbitmq-components.mk
2019-09-04 10:31:03 +01:00
Michael Klishin
d821e1cacb
Merge pull request #204 from rabbitmq/vhost-description
...
Use `rabbit_vhost:list_names/0'
2019-08-30 13:09:18 +03:00
kjnilsson
41d53deaf1
remove unused header
2019-08-30 10:47:08 +01:00
Diana Corbacho
206f28ba65
Use `rabbit_vhost:list_names/0'
...
[#166298298 ]
2019-08-30 11:00:53 +02:00
Jean-Sébastien Pédron
158eb42c93
Update erlang.mk
2019-08-29 20:45:31 +02:00
Jean-Sébastien Pédron
2f35106928
Makefile: Don't set `$(ELIXIR_LIB_DIR)` here
...
It is already managed by `rabbitmq-build.mk`.
2019-08-14 11:19:21 +02:00
Michael Klishin
dd259d0455
Update rabbitmq-components.mk
2019-08-11 01:48:00 +10:00
Jean-Sébastien Pédron
90642c0fe9
Update erlang.mk
2019-08-02 09:54:18 +02:00
Michael Klishin
deb78e9c06
Update rabbitmq-components.mk
2019-08-01 17:13:21 +03:00
Arnaud Cogoluègnes
c403200bad
Do not reach out to all nodes when listing connections
...
The way connections are listed already contains all the connections, so
there is no need to reach out to all cluster nodes and aggregate the
results, as it results in duplicate lines.
The command test now uses a cluster to make sure connections are listed
properly in a cluster.
[#167639960 ]
Fixes #202
2019-08-01 09:29:16 +02:00
Michael Klishin
6bdc227900
Squash a couple of warnings
2019-07-31 07:47:44 +03:00
Michael Klishin
7081ecb918
Avoid performing a Ra operation on an empty list of nodes
...
That fails with a function clause.
2019-07-30 20:35:44 +03:00
Michael Klishin
abe5abf48c
Use a tick timeout value connected to node's nettick
...
Quorum queues do that and it makes more sense than a hardcoded,
subsystem-specific value.
2019-07-30 05:51:25 +03:00
Michael Klishin
cacd557740
Log connection errors as such
2019-07-29 17:27:27 +03:00
Michael Klishin
5c7fe2cc7b
Use more diverse return values from process_request for CONNECT
...
A drive-by change discovered with @kjnilsson while pairing
on #200 .
2019-07-29 16:59:19 +03:00
Michael Klishin
baf51aa146
This list is a list of compatible peers
...
It cannot contain our own node, so the match
fails and a new leader election is never started,
so client ID tracking cluster does not start.
2019-07-29 15:09:45 +03:00
Michael Klishin
2192861ffe
Return an empty list of client IDs if Raft cluster query times out
2019-07-26 22:31:06 +03:00
Michael Klishin
091127a422
Make sure client ID tracker can rejoin the cluster
...
Previously it could time out waiting for a peer to
become available in certain node shutdown/restart
scenarios.
Pair: @kjnilsson.
Closes #200 .
2019-07-26 20:20:24 +03:00
Arnaud Cogoluègnes
1938920fad
Update rabbitmq-components.mk
2019-07-09 16:06:03 +02:00
Michael Klishin
7d8d7c491c
Return false here as this module does not provide an update_state/2
2019-07-02 16:27:10 +02:00
Arnaud Cogoluègnes
689a557c4c
Add state_can_expire/0 to mock authn/authz backend
...
References rabbitmq/rabbitmq-auth-backend-oauth2#28
2019-07-02 15:50:12 +02:00
Jean-Sébastien Pédron
f3647910b1
Update rabbitmq-components.mk
2019-06-28 16:05:35 +02:00
Jean-Sébastien Pédron
38265434d5
Update erlang.mk
2019-06-28 16:02:24 +02:00
Jean-Sébastien Pédron
437bb5da96
Java testsuite: Use a third RabbitMQ node for the cluster-wide client ID tracking test
...
This is to ensure that the test can pass in a mixed-versions cluster
where odd-numbered nodes might not support clsuter-wide client ID
tracking (RabbitMQ 3.7.x).
2019-06-12 16:29:38 +02:00
Jean-Sébastien Pédron
cf082aa6fd
test/java_SUITE_data/pom.xml: Make it compatible with Java 12
2019-06-12 16:29:06 +02:00
Jean-Sébastien Pédron
3c111a18be
mqtt_node: Skip incompatible nodes when configuring Ra cluster
...
In the cluster_SUITE testsuite:
All even-numbered nodes will use the same code base when using a
secondary Umbrella. Odd-numbered nodes might use an incompatible code
base. When cluster-wide client ID tracking was introduced, it was not
put behind a feature flag because there was no need for one. Here, we
don't have a way to ensure that all nodes participate in client ID
tracking. However, those using the same code should. That's why we
limit our RPC calls to those nodes.
That's also the reason why we use a 5-node cluster: with node 2 and
4 which might not participate, it leaves nodes 1, 3 and 5: thus 3
nodes, the minimum to use Ra in proper conditions.
References #91 , #195 .
[#135330629 ]
2019-06-11 18:26:27 +02:00
Jean-Sébastien Pédron
391c44c665
rabbit_auth_backend_mqtt_mock: Move this test module to `test/`
2019-06-11 16:15:10 +02:00
Jean-Sébastien Pédron
8de6ab7e81
cluster_SUITE: Bump suite timestrap to 5 minutes
...
One minute seems too short for those tests in CI.
2019-06-11 13:52:05 +02:00
Michael Klishin
e900354db5
Merge pull request #195 from rabbitmq/rabbitmq-mqtt-91
...
Cluster-wide MQTT client id tracking
2019-06-11 01:32:20 +03:00
Michael Klishin
91d3d72bf8
Refactor
2019-06-11 01:31:44 +03:00
Michael Klishin
91a6252cff
More tests
2019-06-11 01:26:07 +03:00
Arnaud Cogoluègnes
85e2755c9a
Add mock auth backend
...
References rabbitmq/rabbitmq-server#1767
2019-06-06 13:16:14 +02:00
Arnaud Cogoluègnes
7f8708bd85
Add test to check client id propagation
...
This commit adds a test to check the MQTT client is properly propagated
to the authentication and authorization backends.
References rabbitmq/rabbitmq-server#1767
2019-06-06 10:46:31 +02:00
Michael Klishin
5e81c4ea83
Compile
2019-06-04 19:13:12 +03:00
Michael Klishin
5725a21015
Remonitor connections on short disconnects and after recovery
2019-06-04 17:19:32 +03:00
Michael Klishin
2107daf93f
Remove a clause that's no longer used
2019-06-04 16:34:22 +03:00
Michael Klishin
129d92b431
Do not snapshot when a new client is registered
2019-06-04 16:33:48 +03:00
Michael Klishin
bfa7f332c0
Only emit snapshot effects when client ID map changes
2019-06-04 13:54:34 +03:00
Michael Klishin
1434eb991b
Switch rabbit_mqtt_collector:list/0 to use a leader query
...
While at it, improve error handling around client ID
collector unavailability.
2019-06-04 13:40:26 +03:00
Michael Klishin
f4f65867ea
Client tracking: notify existing connections in a one-off process
...
To avoid blocking the leader even a little bit.
Per suggestion from @kjnilsson.
2019-06-04 12:25:09 +03:00
Michael Klishin
c5ccd7b4ac
A typo
2019-06-04 03:24:20 +03:00
Michael Klishin
e220b896d2
decommission_mqtt_node only belongs to the ctl scope
2019-06-04 03:15:42 +03:00
Michael Klishin
f0d9bf8d8e
decomission_mqtt_node: wording
2019-06-04 02:11:37 +03:00
Michael Klishin
4130c2cc8c
Consistency
2019-06-04 02:11:06 +03:00
Michael Klishin
d86390453a
Correct a typo
2019-06-04 02:00:36 +03:00
Michael Klishin
16850a954f
Client ID tracking: make more transitions leader node-only
2019-06-04 01:57:27 +03:00
Michael Klishin
769089b6d8
Wording
2019-06-04 01:56:56 +03:00
Michael Klishin
9c07491ddc
Define a state_enter/2 fun to clean up on disk state
...
A freshly started node by definition wouldn't have any
connections. This is a Ra-idiomatic way of cleaniing up
on disk state that involves pids.
Per recommendation from @kjnilsson.
2019-06-04 00:45:53 +03:00
Michael Klishin
2613595b5e
Use a function call effect
...
so that this state transition applied on the leader node only.
2019-06-04 00:44:45 +03:00
Michael Klishin
e004f0bb91
Do not unregister a client ID if it does not belong to the terminating connection
...
Due to the LWW [A] semantics of duplicate client ID handling there might
be another process register with the client ID by the time a client
is disconnected and has to be unregistered. Consider the following
scenario:
1. Client A connects, client ID map is updated and now contains
a new entry with A's pid
2. Client B connects, client ID map is updated and now contains
an updated entry with B's pid
3. B disconnects, `rabbit_mqtt_collector:unregister/2` deletes
the entry in the client IDs map
4. The map is empty, even though one client still has to be connected
5. Client A reconnects and duplicate client ID is
not detected by `rabbit_mqtt_collector:register/2`
A. Last Write Wins
2019-06-03 16:05:14 +03:00
Michael Klishin
4215d2e7a5
Logging: mention client ID when accepting a connection
2019-06-03 15:24:35 +03:00
Diana Corbacho
9e1d1f577a
Add forgotten files
...
[#135330629 ]
2019-06-03 10:24:12 +02:00
Michael Klishin
288d9dc7ee
Merge branch 'master' into rabbitmq-mqtt-91
2019-06-03 09:58:15 +03:00
Gerhard Lazu
25c111a726
Update rabbitmq-components.mk
2019-06-03 02:23:41 +01:00
Jean-Sébastien Pédron
d9cc2a6623
Update rabbitmq-components.mk
2019-05-17 15:17:22 +02:00
Michael Klishin
521093e588
Update rabbitmq-components.mk
2019-05-17 08:36:54 +03:00
Diana Corbacho
32200bb352
Change banner
...
[#135330629 ]
2019-05-16 20:47:55 +01:00
Diana Corbacho
7bfe632cb6
Cluster-wide MQTT client id tracking
...
Uses a ra cluster to keep the client id tracking information - in
the state of the ra machine.
If nodes are decommissioned from the RMQ cluster, the command
decommission_mqtt_node must be invoked first to disconnect the clients
on that node and remove the node from the ra cluster.
[#135330629 ]
2019-05-16 17:50:06 +01:00
Michael Klishin
2e35f9b7c2
Update rabbitmq-components.mk
2019-05-14 11:50:54 +03:00
Michael Klishin
307411067e
Update rabbitmq-components.mk
2019-05-13 16:40:38 +03:00
Gerhard Lazu
3e17e1a80d
Update rabbitmq-components.mk
2019-05-01 13:18:18 +01:00
Luke Bakken
1596ef9ae5
Update rabbitmq-components.mk
2019-04-30 16:21:00 -07:00
Jean-Sébastien Pédron
5050e66b63
Update rabbitmq-components.mk
2019-04-30 14:47:34 +02:00
Gerhard Lazu
2e4451a8ef
Update rabbitmq-components.mk
2019-04-22 21:55:09 +01:00
Michael Klishin
71563a65d8
CLI tool: wording
2019-03-26 20:32:40 +03:00
Michael Klishin
8ab9f8ff6d
CLI commands: provide more information to the new help command
2019-03-26 20:29:56 +03:00
Spring Operator
96006cd58b
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 1 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
2019-03-21 03:17:58 -05:00
Spring Operator
852c61ea99
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* http://blog.listincomprehension.com/search/label/procket (200) with 1 occurrences could not be migrated:
([https](https://blog.listincomprehension.com/search/label/procket ) result ClosedChannelException).
* http://dozzie.jarowit.net/trac/wiki/TOML (200) with 1 occurrences could not be migrated:
([https](https://dozzie.jarowit.net/trac/wiki/TOML ) result SSLHandshakeException).
* http://dozzie.jarowit.net/trac/wiki/subproc (200) with 1 occurrences could not be migrated:
([https](https://dozzie.jarowit.net/trac/wiki/subproc ) result SSLHandshakeException).
* http://e2project.org (200) with 1 occurrences could not be migrated:
([https](https://e2project.org ) result AnnotatedConnectException).
* http://nitrogenproject.com/ (200) with 2 occurrences could not be migrated:
([https](https://nitrogenproject.com/ ) result ConnectTimeoutException).
* http://proper.softlab.ntua.gr (200) with 1 occurrences could not be migrated:
([https](https://proper.softlab.ntua.gr ) result SSLHandshakeException).
* http://yaws.hyber.org (200) with 1 occurrences could not be migrated:
([https](https://yaws.hyber.org ) result AnnotatedConnectException).
* http://choven.ca (503) with 1 occurrences could not be migrated:
([https](https://choven.ca ) result ConnectTimeoutException).
# Fixed URLs
## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* http://fixprotocol.org/ (301) with 1 occurrences migrated to:
https://fixtrading.org ([https](https://fixprotocol.org/ ) result SSLHandshakeException).
* http://erldb.org (UnknownHostException) with 1 occurrences migrated to:
https://erldb.org ([https](https://erldb.org ) result UnknownHostException).
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://cloudi.org/ with 27 occurrences migrated to:
https://cloudi.org/ ([https](https://cloudi.org/ ) result 200).
* http://erlware.org/ with 1 occurrences migrated to:
https://erlware.org/ ([https](https://erlware.org/ ) result 200).
* http://inaka.github.io/cowboy-trails/ with 1 occurrences migrated to:
https://inaka.github.io/cowboy-trails/ ([https](https://inaka.github.io/cowboy-trails/ ) result 200).
* http://ninenines.eu with 6 occurrences migrated to:
https://ninenines.eu ([https](https://ninenines.eu ) result 200).
* http://www.actordb.com/ with 2 occurrences migrated to:
https://www.actordb.com/ ([https](https://www.actordb.com/ ) result 200).
* http://www.cs.kent.ac.uk/projects/wrangler/Home.html with 1 occurrences migrated to:
https://www.cs.kent.ac.uk/projects/wrangler/Home.html ([https](https://www.cs.kent.ac.uk/projects/wrangler/Home.html ) result 200).
* http://www.rabbitmq.com/mpl.html with 1 occurrences migrated to:
https://www.rabbitmq.com/mpl.html ([https](https://www.rabbitmq.com/mpl.html ) result 200).
* http://www.rabbitmq.com/mqtt.html with 1 occurrences migrated to:
https://www.rabbitmq.com/mqtt.html ([https](https://www.rabbitmq.com/mqtt.html ) result 200).
* http://www.rebar3.org with 1 occurrences migrated to:
https://www.rebar3.org ([https](https://www.rebar3.org ) result 200).
* http://contributor-covenant.org with 1 occurrences migrated to:
https://contributor-covenant.org ([https](https://contributor-covenant.org ) result 301).
* http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/ ) result 301).
* http://inaka.github.com/apns4erl with 1 occurrences migrated to:
https://inaka.github.com/apns4erl ([https](https://inaka.github.com/apns4erl ) result 301).
* http://inaka.github.com/edis/ with 1 occurrences migrated to:
https://inaka.github.com/edis/ ([https](https://inaka.github.com/edis/ ) result 301).
* http://lasp-lang.org/ with 1 occurrences migrated to:
https://lasp-lang.org/ ([https](https://lasp-lang.org/ ) result 301).
* http://saleyn.github.com/erlexec with 1 occurrences migrated to:
https://saleyn.github.com/erlexec ([https](https://saleyn.github.com/erlexec ) result 301).
* http://www.mozilla.org/MPL/ with 27 occurrences migrated to:
https://www.mozilla.org/MPL/ ([https](https://www.mozilla.org/MPL/ ) result 301).
* http://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html with 1 occurrences migrated to:
https://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html ([https](https://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html ) result 301).
* http://zhongwencool.github.io/observer_cli with 1 occurrences migrated to:
https://zhongwencool.github.io/observer_cli ([https](https://zhongwencool.github.io/observer_cli ) result 301).
2019-03-20 03:18:59 -05:00
Michael Klishin
847e27b83f
Travis: use Erlang 21.3, Elixir 1.8.1
2019-03-20 10:33:17 +03:00
Spring Operator
c90ca44234
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://maven.apache.org/xsd/maven-4.0.0.xsd with 1 occurrences migrated to:
https://maven.apache.org/xsd/maven-4.0.0.xsd ([https](https://maven.apache.org/xsd/maven-4.0.0.xsd ) result 200).
# Ignored
These URLs were intentionally ignored.
* http://maven.apache.org/POM/4.0.0 with 2 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 1 occurrences
2019-03-19 20:10:10 -05:00
Michael Klishin
fe51f5d4e5
Additional help content for CLI command
2019-03-19 20:34:58 +03:00
Daniil Fedotov
e7fd8ce1b4
Handle 21.3 tls_alert error format.
2019-03-18 18:33:52 -04:00
Michael Klishin
2b3b697db3
Update rabbitmq-components.mk
2019-03-15 09:34:42 +03:00
Michael Klishin
ec18c091c2
Update rabbitmq-components.mk
2019-03-15 05:05:51 +03:00
Spring Operator
7e218211b8
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://www.apache.org/licenses/LICENSE-2.0 migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
* http://www.rabbitmq.com migrated to:
https://www.rabbitmq.com ([https](https://www.rabbitmq.com ) result 200).
# Ignored
These URLs were intentionally ignored.
* http://maven.apache.org/POM/4.0.0
* http://maven.apache.org/xsd/maven-4.0.0.xsd
* http://www.w3.org/2001/XMLSchema-instance
2019-03-11 21:54:05 -05:00
Michael Klishin
358c8c97cc
Wording
2019-02-21 20:29:14 +03:00
Daniil Fedotov
afa6729b1d
Description for help command.
...
Requires https://github.com/rabbitmq/rabbitmq-cli/pull/316
2019-02-20 14:24:30 -05:00
Michael Klishin
bcb25da3ce
Update rabbitmq-components.mk
2019-02-12 23:24:00 +03:00
Michael Klishin
0d747b18df
Wording
2019-02-08 01:58:27 +03:00
Luke Bakken
2f205cc21a
Handle duplicate CONNECT frame
...
Fixes #179
Uses undefined MQTT return code 255 to mean "duplicate auth attempt"
Treat duplicate CONNECT / login like a real connect
2019-02-07 12:49:24 -08:00
Michael Klishin
530cf87095
Handle socket write failures and log them
...
...instead of letting connection proceesses terminate and
the runtime to log scary looking crash reports.
STOMP has been doing this without logging for a while:
* https://github.com/rabbitmq/rabbitmq-stomp/blame/v3.7.x/src/rabbit_stomp_reader.erl#L344
* https://github.com/rabbitmq/rabbitmq-stomp/blob/v3.7.x/src/rabbit_stomp_processor.erl#L1167
Note that otherwise connection error handling is not affected
by this change.
While at it, added more debug logging.
Per discussion with @lukebakken.
References rabbitmq/rabbitmq-server#1862 .
2019-02-05 02:49:36 +03:00
Michael Klishin
48bac2500a
Formatting
2019-02-03 20:09:41 +03:00
Michael Klishin
9caf40afa1
Cosmetics
2019-02-03 19:43:44 +03:00
Ryan Sandbach
08f97b9e6f
New tests for retainer translation.
2019-02-01 00:21:10 -05:00
Ryan Sandbach
563e6529c0
Use translation for retained messages.
2019-02-01 00:20:27 -05:00
Arnaud Cogoluègnes
ec65574e1f
Add client ID to connection metadata
...
[#153246723 ]
Fixes #152
2019-01-22 10:30:25 +01:00
Michael Klishin
1039a21349
.travis.yml: use 21.2 as 21.2.2 builds are no available
2019-01-14 01:20:23 +03:00
Michael Klishin
75d2b49303
.travis.yml: sync Erlang and Elixir versions, require Erlang/OTP 21.2
2019-01-13 05:50:02 +03:00
Luke Bakken
5293a3093e
Update rabbitmq-components.mk
2019-01-09 12:55:12 -08:00
Luke Bakken
198d62a64f
Update rabbitmq-components.mk
2019-01-08 11:58:31 -08:00
Michael Klishin
16d262f908
Additional tests extracted from rabbitmq/rabbitmq-stomp#130
...
The settings are already supported by this plugin.
2019-01-02 20:36:51 +03:00
Michael Klishin
e25aaba832
Revert "Revert "Use {active,once} instead of async_recv""
...
This reverts commit e064ace943
.
The change to {active, once} ended up being unrelated; it's a bug
in the Erlang 21.2 ssl app.
2018-12-22 10:09:32 +03:00
Michael Klishin
e064ace943
Revert "Use {active,once} instead of async_recv"
...
This reverts commit 70ca23a505
.
Due to obscure CI failures in rabbitmq-[web-]stomp.
2018-12-21 21:27:25 +03:00
Loïc Hoguin
70ca23a505
Use {active,once} instead of async_recv
2018-12-18 12:51:14 +01:00
Loïc Hoguin
160e2fb12c
Remove a duplicate control_throttle
...
The function is already called before calling
process_received_bytes, there doesn't seem to
be a reason to call it again.
2018-12-11 15:00:03 +01:00
Michael Klishin
7269ef09d5
Update rabbitmq-components.mk
2018-12-06 18:28:55 +03:00
Loïc Hoguin
7e09b85426
Allow giving the peer address directly for initial_state
...
Changes initial_state/4 to initial_state/5 to add the peer
address that needs to be provided by Web MQTT. This function
was only used locally and by Web MQTT.
2018-12-04 14:50:32 +01:00
Loïc Hoguin
e26c15f047
Use the built-in Ranch PROXY protocol support
2018-12-04 13:15:33 +01:00
Jean-Sébastien Pédron
024b8fc32c
Update rabbitmq-components.mk
2018-11-30 14:56:53 +01:00
Jean-Sébastien Pédron
b6c2461b11
Update rabbitmq-components.mk
2018-11-22 09:19:38 +01:00
Arnaud Cogoluègnes
f1c1dbf30d
Use Maven wrapper for Java test suite
...
This avoids depending on a local Maven.
2018-11-06 11:46:12 +01:00
Arnaud Cogoluègnes
9043d97f60
Fix Maven tests for CI environment
...
OpenJDK 1.8.0_181 on Debian-based distros introduces a bug that breaks
the Maven Surefire plugin (test plugin). This commit adds an argument to
the plugin configuration to fix this problem. It also bumps some Java
dependencies.
2018-11-06 11:31:18 +01:00
kjnilsson
9a4de20eb1
Update rabbitmq-components.mk
2018-10-29 12:43:25 +00:00
Luke Bakken
2824fdbf1e
comment
2018-10-11 07:07:23 -07:00
Michael Klishin
50dfaaa237
Use 10 TLS connection acceptors by default
...
Part of rabbitmq/rabbitmq-server#1729.
[#161136615 ]
2018-10-11 03:00:39 +03:00
Jean-Sébastien Pédron
a1d729b56a
Update rabbitmq-components.mk
2018-09-19 10:38:19 +02:00
Jean-Sébastien Pédron
626a9ab5d1
Update rabbitmq-components.mk
2018-09-11 14:22:34 +02:00
Luke Bakken
fcce77c670
Update git-commit-msgs link
2018-08-28 16:19:03 -07:00
Diana Corbacho
4d4f490bc3
Session flag must be calculated before declaring the queue
...
[#159921198 ]
2018-08-21 12:05:29 +01:00
Jean-Sébastien Pédron
dbb0713f0b
Update rabbitmq-components.mk
2018-08-09 17:44:18 +02:00
Jean-Sébastien Pédron
f82324006c
Update rabbitmq-components.mk
2018-08-09 12:17:04 +02:00
Michael Klishin
a0ff2181a1
Don't await a logger process that won't ever be started on OTP 21
...
Same change as in a210d82f54
.
References rabbitmq/rabbitmq-server#1616.
[#157964874 ]
2018-07-11 22:10:41 +03:00
Jean-Sébastien Pédron
2cb96acdfc
Makefile: Use our emqttc fork, at least temporarily
...
gen_logger, a dependency of emqttc, requires large changes to work with
Erlang 21. Its use in emqttc would need to change as well.
As we are only using this client for testing purpose, it's easier for
now to remove logging completely to gain Erlang 21 compatibility.
[#157964874 ]
2018-06-07 11:45:02 +02:00
Michael Klishin
12cb0886d8
Compile Erlang/OTP 21
...
OTP 21 deprecated erlang:get_stacktrace/0 in favor of a new
try/catch syntax. Unfortunately that's not realistic for projects
that support multiple Erlang versions (like us) until OTP 21 can be
the minimum version requirement. In order to compile we have to ignore
the warning. The broad compiler option seems to be the most common
way to support compilation on multiple OTP versions with warnings_as_errors.
[#157964874 ]
2018-06-07 11:45:02 +02:00
Jean-Sébastien Pédron
b770e48268
Update rabbitmq-components.mk
2018-06-07 11:31:39 +02:00
Jean-Sébastien Pédron
06ed90911e
Update erlang.mk
2018-04-11 10:53:42 +02:00
Jean-Sébastien Pédron
23d5b49b6a
Update rabbitmq-components.mk
2018-04-11 10:51:25 +02:00
Jean-Sébastien Pédron
51c0177da0
Update rabbitmq-components.mk
2018-04-11 10:10:07 +02:00
Jean-Sébastien Pédron
dc7734ca9c
Travis CI: Update config from rabbitmq-common
2018-04-10 13:08:25 +02:00
Jean-Sébastien Pédron
24da2b307a
Makefile: Do not hard-code the supposed name of GNU Make's executable
...
There is the `$(MAKE)` variable populated with the current/appropriate
Make executable.
2018-04-05 10:30:46 +02:00
Jean-Sébastien Pédron
1111210ce8
Update erlang.mk
2018-03-02 19:07:39 +01:00
Jean-Sébastien Pédron
ef9c188caf
Update rabbitmq-components.mk
2018-01-30 15:23:47 +01:00
Luke Bakken
2f26b97e1d
Update rabbitmq-components.mk
2018-01-29 16:22:18 -08:00
Jean-Sébastien Pédron
7dd2760858
Update rabbitmq-components.mk
2018-01-23 17:21:37 +01:00
Jean-Sébastien Pédron
4493123923
Update rabbitmq-components.mk
2018-01-23 15:31:25 +01:00
Diana Corbacho
baf70acb32
Update rabbitmq-components.mk
2018-01-22 22:13:26 +00:00
Jean-Sébastien Pédron
8c77612a94
Merge branch 'rabbitmq-management-528'
2018-01-03 10:51:14 +01:00
Michael Klishin
729d778d88
Ignore debug/*
2018-01-03 03:30:01 +08:00
Michael Klishin
1c3c2af838
Support maps as well as proplists when fetching global runtime params
...
Part of rabbitmq/rabbitmq-management#528 .
2018-01-03 03:29:24 +08:00
Jean-Sébastien Pédron
d100c7f402
Travis CI: Update config from rabbitmq-common
2017-12-15 15:13:35 +01:00
Jean-Sébastien Pédron
8997e867bd
Travis CI: Update config from rabbitmq-common
2017-12-15 14:54:57 +01:00
Jean-Sébastien Pédron
b514c30401
Merge branch 'read-cert-name-from-cert-part2' into v3.7.x
2017-12-15 12:12:43 +01:00
Jean-Sébastien Pédron
665abcdf2c
Merge branch 'read-cert-name-from-cert-part2'
2017-12-15 12:06:13 +01:00
Jean-Sébastien Pédron
be27eea7ac
java_SUITE_data: Ignore target/
2017-12-15 12:05:24 +01:00
Jean-Sébastien Pédron
2993a1426b
java_SUITE: Get certificate name from the certificate itself
...
... instead of hard-coding the value. This fixes the testsuite when the
generated certificate configuration changes.
The same change was made to auth_SUITE in commit a11e96caa0
.
[#153697697 ]
2017-12-15 12:02:36 +01:00
Jean-Sébastien Pédron
b316731694
Merge branch 'read-cert-name-from-cert' into v3.7.x
2017-12-15 11:42:08 +01:00
Jean-Sébastien Pédron
ac32092fc2
Merge branch 'read-cert-name-from-cert'
2017-12-15 11:27:29 +01:00
Jean-Sébastien Pédron
a11e96caa0
auth_SUITE: Get certificate name from the certificate itself
...
... instead of hard-coding the value. This fixes the testsuite when the
generated certificate configuration changes.
[#153697697 ]
2017-12-15 11:22:01 +01:00
Jean-Sébastien Pédron
6372727eb5
Travis CI: Update config from rabbitmq-common
2017-12-14 17:03:02 +01:00
Jean-Sébastien Pédron
a353aa39df
Update rabbitmq-components.mk
2017-12-14 14:38:51 +01:00
Luke Bakken
4e798ff793
Fix tests broken by rabbitmq/rabbitmq_ct_helpers#17
...
(cherry picked from commit 40bb49c6537faa6a45535916ee0fa69f9f0d4f14)
2017-12-08 07:02:24 -08:00
Luke Bakken
60dfb72800
Fix tests broken by rabbitmq/rabbitmq_ct_helpers#17
2017-12-07 15:36:14 -08:00
Jean-Sébastien Pédron
25b9a16cc6
Update rabbitmq-components.mk
2017-12-01 17:11:31 +01:00
Jean-Sébastien Pédron
808507d33e
Update rabbitmq-components.mk
2017-12-01 15:16:37 +01:00
Jean-Sébastien Pédron
bf33d6bbb2
Update rabbitmq-components.mk
2017-12-01 11:06:46 +01:00
Jean-Sébastien Pédron
fdb3b5b42b
Update rabbitmq-components.mk
2017-11-28 14:01:03 +01:00
Jean-Sébastien Pédron
a3bc0317d2
Update rabbitmq-components.mk
2017-11-28 13:29:23 +01:00
Bernhard Schwarz
1c8831de95
Replace broken link with correct Markdown
2017-11-17 19:37:13 +00:00
Bernhard Schwarz
de6c929ca8
Replace broken link with correct Markdown
2017-11-17 18:30:08 +01:00
Michael Klishin
2ebff17ddc
Merge branch 'stable'
...
Conflicts:
src/rabbit_mqtt_processor.erl
2017-11-09 14:23:46 +03:00
Michael Klishin
a43c001779
Merge branch 'stable' into gh-132
2017-11-09 13:10:49 +03:00
Jean-Sébastien Pédron
53225ba35e
Travis CI: Skip testsuite with Erlang R16B03
...
The emqttc client we use to test the plugin doesn't compile on Erlang
R16B03.
[#152509619 ]
2017-11-09 09:01:26 +01:00
Luke Bakken
717730b275
Ensure maximum message id value is used when saving to process state
...
Fixes #132
2017-11-08 17:31:09 -08:00
Jean-Sébastien Pédron
a60881654a
Travis CI: Update config from rabbitmq-common
2017-11-08 10:21:34 +01:00
Jean-Sébastien Pédron
0b38c1c018
Merge branch 'stable'
2017-11-08 10:20:32 +01:00
Jean-Sébastien Pédron
1efdff0f74
Travis CI: Update config from rabbitmq-common
2017-11-08 10:20:07 +01:00
Luke Bakken
ba3d515d88
Add GitHub templates and contributing doc
2017-10-13 15:57:58 -07:00
Jean-Sébastien Pédron
32f1ec40b8
Merge branch 'stable'
2017-10-13 15:10:31 +02:00
Jean-Sébastien Pédron
5213f2c70c
Update rabbitmq-components.mk
2017-10-13 14:33:12 +02:00
Jean-Sébastien Pédron
4ca5f6d6ab
Update rabbitmq-components.mk
2017-10-13 14:13:19 +02:00
Jean-Sébastien Pédron
dfe2680f65
Update rabbitmq-components.mk
2017-10-13 12:15:47 +02:00
Michael Klishin
f098a37a46
Update rabbitmq-components.mk
2017-09-13 17:54:32 -04:00
Michael Klishin
d93dedc6a2
Update rabbitmq-components.mk
2017-09-13 17:45:38 -04:00
Michael Klishin
3373a4e0f4
Update rabbitmq-components.mk
2017-09-12 19:53:23 -04:00
Michael Klishin
2781d83929
Update rabbitmq-components.mk
2017-09-12 12:41:58 -04:00
Daniil Fedotov
8423164e05
Merge branch 'stable'
2017-08-30 19:20:44 +01:00
Daniil Fedotov
ae2be4fe25
Update erlang.mk
2017-08-30 18:46:44 +01:00
Jean-Sébastien Pédron
94640f9707
rabbit_mqtt_process: Close channels after send_will()
...
This gives a greater chance to the Last Will message to be delivered
because it will implicitely block `rabbit_mqtt_reader` while the
server-side AMQP channel processes the message.
Without this, `rabbit_mqtt_reader` asks the Last Will message to be
sent asynchronously and immediately closes the AMQP connection. The
server-side AMQP channel might thus try to query an already closed
connection.
Fixes #146 .
[#150162950 ]
(cherry picked from commit a2eb8c1be8c52d476ee9ea0ff08ef381a2ca326c)
2017-08-11 14:40:44 +02:00
Jean-Sébastien Pédron
d3aaea7244
reader_SUITE: Increase timer in expect_publish() to 5 seconds
...
This reduces the risk of test failures.
(cherry picked from commit 50e842a200a482a67de6eaf67ab66774f63b48a1)
2017-08-11 14:39:00 +02:00
Jean-Sébastien Pédron
ccde25c2a9
rabbit_mqtt_process: Close channels after send_will()
...
This gives a greater chance to the Last Will message to be delivered
because it will implicitely block `rabbit_mqtt_reader` while the
server-side AMQP channel processes the message.
Without this, `rabbit_mqtt_reader` asks the Last Will message to be
sent asynchronously and immediately closes the AMQP connection. The
server-side AMQP channel might thus try to query an already closed
connection.
Fixes #146 .
[#150162950 ]
2017-08-11 12:29:34 +02:00
Jean-Sébastien Pédron
8a0d88cf1b
reader_SUITE: Increase timer in expect_publish() to 5 seconds
...
This reduces the risk of test failures.
2017-08-11 12:27:40 +02:00
Daniil Fedotov
e683048145
Use lager sink API for logs.
...
Lager sink parse-transform allows us to use a fake module name
to select sinks.
It's more convenient that to use a helper function for every module.
[#149634975 ]
2017-08-07 14:43:00 +01:00
Michael Klishin
22cc3cfda4
Merge branch 'stable'
2017-07-31 16:32:24 +03:00
Michael Klishin
671c267911
Provide a no-op implementation of MQTT retainer
...
Closes #136 .
2017-07-31 15:32:17 +03:00
Jean-Sébastien Pédron
ab46563c45
Merge branch 'stable'
2017-07-31 10:17:08 +02:00
Daniil Fedotov
8a9190a43f
Log MQTT processor log messages with connection sink.
...
Fixes #142
2017-07-27 14:01:17 +01:00
Michael Klishin
5c549f0f51
Erlang/OTP 19.2 is now the minimum supported version.
...
Part of rabbitmq/rabbitmq-server#1305.
[#149563549 ]
2017-07-26 19:03:08 +03:00
Michael Klishin
532cc885e1
Update rabbitmq-components.mk
2017-07-26 03:48:32 +03:00
Michael Klishin
f591601995
Update rabbitmq-components.mk
2017-07-26 02:27:11 +03:00
Jean-Sébastien Pédron
571f6c5858
Merge branch 'stable'
2017-07-03 12:30:19 +02:00
Jean-Sébastien Pédron
961f4a1e77
rabbit_mqtt_util: Export used functions only
...
I.e. do not use export_all, which is reported as a warning with Erlang
20.
2017-07-03 12:28:53 +02:00
Arnaud Cogoluègnes
a091ce6de9
Merge branch 'master' into rabbitmq-mqtt-139
2017-06-27 10:23:36 +02:00
Jean-Sébastien Pédron
1fc9390e40
Merge branch 'stable'
2017-06-26 18:36:05 +02:00
Arnaud Cogoluègnes
41e5a45dab
Propagate client ID to authn with dedicated module
...
Fixes #139
2017-06-23 16:46:57 +02:00
Jean-Sébastien Pédron
cbb353abbd
rabbit_net:accept_ack() was moved to rabbit_networking
...
[#118490793 ]
2017-06-21 15:38:14 +02:00
Luke Bakken
bcbae3757c
Whitespace
2017-06-15 10:56:00 -07:00
Michael Klishin
885daa1d6d
Merge branch 'master' into rabbitmq-server-1229
2017-06-13 23:56:49 +03:00
Michael Klishin
1c930dbce1
Update rabbitmq-components.mk
2017-06-12 20:16:33 +03:00
Michael Klishin
8b5ebab431
Update rabbitmq-components.mk
2017-06-12 18:42:32 +03:00
Daniil Fedotov
a81c3da1e2
Less compile warnings
2017-06-12 14:19:20 +01:00
Michael Klishin
3fda50bccd
Make this test more robust
...
* Handle duplicate keys (see 82d1cb23e9
, for instance)
* Use maps since this test is in master only
* Use eunit assertions that would print arguments on failures
2017-06-11 01:42:17 +03:00
Daniil Fedotov
5e9ef73325
Merge branch 'stable'
2017-06-09 13:23:56 +01:00
Daniil Fedotov
82d1cb23e9
remove duplicate info item for mqtt connections
2017-06-09 13:23:37 +01:00
Arnaud Cogoluègnes
81ab03c133
Add client_id as an topic authz expandable variable
...
References rabbitmq/rabbitmq-server#1229
2017-06-07 14:41:59 +02:00
Michael Klishin
cd13024d6e
Merge branch 'stable'
2017-06-02 18:11:15 +03:00
Michael Klishin
ed80c90fb3
Update rabbitmq-components.mk
2017-06-02 17:51:31 +03:00
Daniil Fedotov
4f016da4a7
New CLI helpers API
2017-06-02 10:12:39 +01:00
Michael Klishin
cdb6263c14
Update rabbitmq-components.mk
2017-06-02 00:43:27 +03:00
Michael Klishin
f40fcee826
Update rabbitmq-components.mk
2017-06-01 18:01:44 +03:00
Jean-Sébastien Pédron
c6262a89e1
Merge branch 'stable'
2017-05-16 18:10:32 +02:00
Jean-Sébastien Pédron
c167d76ef4
Makefile: Load the new `rabbitmq-early-plugin.mk` early-stage plugin
...
See the corresponding commit in rabbitmq-common for an explanation.
[#144697185 ]
2017-05-16 17:36:21 +02:00
Jean-Sébastien Pédron
ad7b993a5a
Update erlang.mk
2017-05-16 17:36:21 +02:00
Michael Klishin
5a9a0ba264
Merge branch 'stable'
2017-05-11 17:07:04 +03:00
Diana Corbacho
c676f9f66c
Avoid emitting stats when state is undefined
...
Stop during initialisation will cause the gen_server to terminate
with `undefined` state, this should be ignored
rabbitmq-mqtt#134
[#145273167 ]
2017-05-11 14:42:20 +01:00
Diana Corbacho
376bcb1abd
Merge remote-tracking branch 'origin/stable'
2017-05-03 12:06:10 +01:00
Diana Corbacho
65ab9ff50f
Default to 0 for stats calculation
...
rabbitmq-management-agent-45
[#144693945 ]
2017-05-02 14:26:01 +01:00
Daniil Fedotov
28b3c4d46f
Replace dicts with maps for mqtt.
2017-04-24 13:45:37 +01:00
Jean-Sébastien Pédron
456f399a81
Merge branch 'stable'
2017-04-19 12:52:44 +02:00
Jean-Sébastien Pédron
f7412ca6eb
Update erlang.mk
2017-04-19 12:03:57 +02:00
Diana Corbacho
575789d3af
Do not emit stats if connection has not been stablished
...
Ensures stats are not emitted until the connection is stablished.
A non-pid value crashes the stats gc.
rabbitmq-management-agent#42
2017-04-06 21:56:53 +02:00
Michael Klishin
44cbe172c7
Merge pull request #131 from rabbitmq/rabbitmq-management-agent-42
...
Do not emit stats if connection has not been stablished
2017-04-06 18:52:04 +03:00
Diana Corbacho
36cff50fc4
Do not emit stats if connection has not been stablished
...
Ensures stats are not emitted until the connection is stablished.
A non-pid value crashes the stats gc.
rabbitmq-management-agent#42
2017-04-06 12:10:05 +01:00
Michael Klishin
6f051b7c1c
Ignore test/config_schema_SUITE_data/schema/
2017-04-02 22:13:36 +03:00
Michael Klishin
a1b46471fd
Merge branch 'stable'
2017-04-02 22:02:20 +03:00
Michael Klishin
fff8f52901
(c) year
2017-04-02 21:48:53 +03:00
Daniil Fedotov
897e194dc8
Config schema test for plugin
...
Part of [#141481501 ]
Moved from rabbitmq-server
2017-03-17 11:01:51 +00:00
Jean-Sébastien Pédron
96b51d2bc7
Merge branch 'stable'
2017-03-08 10:06:14 +01:00
Jean-Sébastien Pédron
034ac28159
reader_SUITE: Match the new `connection_coarse_metrics` field
...
The tuple returned by a read of `connection_coarse_metrics` contains a
new counter at the end. We ignore it but the pattern matching must be
updated.
Before this, the testcase failed with the following error:
reader_SUITE:stats failed on line 147
Reason: {badmatch,[{<19064.547.0>,70,30,5578,0}]}
2017-03-08 09:22:57 +01:00
Arnaud Cogoluègnes
2fd3da301b
Merge branch 'stable'
2017-02-27 14:04:16 +01:00
Arnaud Cogoluègnes
9bb903010c
Remove unused imports in Java test suite
2017-02-27 14:03:51 +01:00
Arnaud Cogoluègnes
45046566f5
Merge branch 'stable'
...
Conflicts:
test/java_SUITE_data/src/test/java/com/rabbitmq/mqtt/test/MqttTest.java
2017-02-27 14:03:21 +01:00
Arnaud Cogoluègnes
2c2c24d18f
Fix Java test build and test on Java 9
...
Need to use a recent version of Groovy in the Maven Groovy plugin.
Avoid using CGLIB-based features of Awaitility, as they don't work
on Java 9 (Awaitility is on its way to use Byte Buddy instead of CGLIB,
but no stable release yet).
2017-02-27 11:53:33 +01:00
Michael Klishin
f383a3c023
Drive by change: squash a warning
2017-02-23 20:33:42 +03:00
Arnaud Cogoluègnes
fba3782869
Check topic access when sending last will
...
The check is actually already done at the AMQP level, but this commit
adds an "upstream" check, a more specific warning message, and a test.
Fixes #114
2017-02-21 16:13:07 +01:00
Arnaud Cogoluègnes
7954e74eab
Add proxy protocol Cuttlefish mapping
...
Part of rabbitmq/rabbitmq-server#589
2017-02-13 11:58:11 +01:00
Arnaud Cogoluègnes
61f38005df
Polish proxy protocol test suite
...
Add call to rabbit_ct_helpers:testcase_started.
References rabbitmq/rabbitmq-server#589
2017-02-13 10:42:04 +01:00
Michael Klishin
d51a810ed5
Update rabbitmq-components.mk
2017-02-11 23:29:35 +03:00
Michael Klishin
f6423c5600
Update rabbitmq-components.mk
2017-02-10 11:16:36 +03:00
Michael Klishin
fb66c1e7b2
Remove a debug trace
2017-02-10 01:49:41 +03:00
Michael Klishin
dca4874b6b
Update rabbitmq-components.mk
2017-02-10 01:48:58 +03:00
Michael Klishin
e40ebfa6bb
Update rabbitmq-components.mk
2017-02-08 16:38:20 +03:00
Arnaud Cogoluègnes
84e9f9fe79
Remove ranch proxy protocol from rabbitmq-components
...
Will be added once the PRs are merged.
References rabbitmq/rabbitmq-server#589
2017-02-07 18:00:57 +01:00
Arnaud Cogoluègnes
1bc5c7afd2
Add support for proxy protocol
...
References rabbitmq/rabbitmq-server#589
2017-02-07 17:22:14 +01:00
Michael Klishin
f4091998c8
merge branch 'stable'
2017-02-06 19:51:33 +03:00
Michael Klishin
7bfccc2979
Update rabbitmq-components.mk
2017-02-06 19:23:58 +03:00
Michael Klishin
60e6e0923c
Merge pull request #116 from rabbitmq/rabbitmq-server-1085
...
Add topic authorisation for consumption
2017-02-06 01:22:41 +03:00
Jean-Sébastien Pédron
c8d1b82fbb
Update rabbitmq-components.mk
2017-02-02 17:17:12 +01:00
Michael Klishin
382ae1c42f
Don't use UTF-8 when calculating retainer_sup child names
...
Such conversion isn't safe but also isn't necessary: those
names aren't supposed to be human-readable.
Fixes #123 .
2017-02-02 15:22:31 +03:00
Michael Klishin
c0ddd6cc7b
Don't use UTF-8 when calculating retainer_sup child names
...
Such conversion isn't safe but also isn't necessary: those
names aren't supposed to be human-readable.
Fixes #123 .
2017-02-02 15:20:45 +03:00
Arnaud Cogoluègnes
e0db62f69c
Merge branch 'master' into rabbitmq-server-1085
2017-01-31 17:38:53 +01:00
Michael Klishin
4c0754f138
merge branch 'stable'
2017-01-31 18:19:31 +03:00
Michael Klishin
79d1b29cc1
Update rabbitmq-components.mk
2017-01-31 18:06:32 +03:00
Diana Corbacho
c116f23d90
Merge branch 'stable'
2017-01-27 07:29:16 +00:00
Michael Klishin
d0cdaaa0a5
Merge pull request #122 from rabbitmq/rabbitmq-mqtt-121
...
Notify recv_oct, send_oct, reductions and garbage_collection in core metrics
2017-01-26 23:20:35 +03:00
Michael Klishin
4e55c07d1a
Wording
2017-01-26 23:19:42 +03:00
Diana Corbacho
53e1d8e776
Notify recv_oct, send_oct, reductions and garbage_collection in core metrics
2017-01-26 16:15:08 +00:00
Daniil Fedotov
98c44e10f9
Backported part of: A CLI command to list mqtt connections
2017-01-26 15:43:11 +00:00
Michael Klishin
868ae3bb2d
Merge branch 'stable'
2017-01-26 14:18:43 +03:00
Michael Klishin
4e231e9339
Avoid double quoting connection names
2017-01-26 14:10:22 +03:00
Michael Klishin
f4132d9967
Wording
...
What we are logging is a payload, not a frame, since
we couldn't parse a frame out of it ;)
2017-01-26 14:06:25 +03:00
Diana Corbacho
0ef4d4a0c1
Improve logging when parsing invalid frames
2017-01-26 10:43:54 +00:00
Michael Klishin
b99d77d16f
Merge branch 'stable'
2017-01-25 22:23:25 +03:00
Michael Klishin
c70a8d3a97
Don't assume stats tables are empty
...
We don't need them to be; what we care about is that
in this particular test, no new entries are inserted.
2017-01-25 22:15:39 +03:00
Diana Corbacho
12f91458f0
Add test for handling invalid frames
2017-01-25 16:21:59 +00:00
Diana Corbacho
ef64088bc3
Skip stats notification without connection pid
2017-01-25 13:43:55 +00:00
Arnaud Cogoluègnes
96aaf35900
Add topic authorisation for consumption
...
Part of rabbitmq/rabbitmq-server#1085
2017-01-23 12:10:23 +01:00
Michael Klishin
8eb40110d3
Wording
2017-01-16 16:16:54 +03:00
Arnaud Cogoluègnes
8e505e9af0
Let only message in topic permission violation log
...
Not tuple.
References rabbitmq/rabbitmq-server#505
2017-01-16 10:54:35 +01:00
Arnaud Cogoluègnes
3695c5826e
Handle topic authorisation failure properly
...
Plugin handles exit signal coming from the AMPQ core,
logs, and closes the client connnection (instead of letting
the whole process tree crash with scary log messages).
References rabbitmq/rabbitmq-server#505
2017-01-16 09:54:16 +01:00
Arnaud Cogoluègnes
85636953a4
Use check_topic_access on publishing
...
check_resource_access used to be called with
the MQTT topic as resource name and kind = topic.
It makes more sense now to call check_topic_access
with the exchange as resource name, kind = topic,
and routing key in the context.
References rabbitmq/rabbitmq-server#505
2016-12-29 16:34:19 +01:00
Michael Klishin
500b66087a
Merge branch 'stable'
2016-12-20 01:39:05 +03:00
Michael Klishin
6d94828a8d
Revert "Give global policies more time to propagate"
...
This reverts commit 4e3849b0c3
.
2016-12-20 01:35:41 +03:00
Michael Klishin
8a23720840
Merge branch 'stable'
2016-12-20 01:17:45 +03:00
Michael Klishin
4e3849b0c3
Give global policies more time to propagate
...
Sigh, CI.
2016-12-20 01:13:01 +03:00
Michael Klishin
cfcde1d143
Merge branch 'stable'
2016-12-20 00:50:04 +03:00
Michael Klishin
b6c6dc7769
Log in a more human readable format
2016-12-20 00:42:06 +03:00
Michael Klishin
1ab92e897c
Wording
2016-12-19 22:51:05 +03:00
Arnaud Cogoluègnes
e250fa048f
Use coercion module for integer-to-binary coercion
...
Fixes #111
2016-12-19 17:53:20 +01:00
Arnaud Cogoluègnes
87628f9f51
Use binary for port-to-vhost mapping key
...
Behaves better as a JSON document key than an integer.
Fixes #111
2016-12-19 17:36:18 +01:00
Arnaud Cogoluègnes
b8344cdc27
Map client connection vhost to a port
...
Fixes #111
2016-12-19 15:00:43 +01:00
Michael Klishin
e265ffc9dc
Merge branch 'stable'
...
Conflicts:
.travis.yml
2016-12-17 03:23:38 +03:00
Michael Klishin
6e40d82276
[travis] Try 18.2 instead of 18.3
...
18.3 is the only version that repeatedly fails
(could be due to known TLS bugs).
2016-12-17 03:01:23 +03:00
Michael Klishin
1e3831cc13
Test against 18.3, 19.1, 19.2 on Travis
2016-12-17 02:49:15 +03:00
Arnaud Cogoluègnes
d1c2474a89
Merge branch 'stable'
2016-12-16 10:59:10 +01:00
Michael Klishin
2d3c004efb
Merge branch 'stable' into rabbitmq-mqtt-73
2016-12-15 17:46:24 +03:00
Arnaud Cogoluègnes
8749233066
Merge branch 'stable'
2016-12-15 15:42:36 +01:00
Arnaud Cogoluègnes
7424551de0
Fix race condition in test
2016-12-15 15:38:42 +01:00
Arnaud Cogoluègnes
6d53781e64
Merge branch 'stable'
2016-12-15 14:23:55 +01:00
Arnaud Cogoluègnes
335997d140
Use clean sessions in last will retained test
2016-12-15 14:23:23 +01:00
Arnaud Cogoluègnes
e37b8135b1
Merge branch 'stable'
...
Conflicts:
test/java_SUITE_data/src/test/java/com/rabbitmq/mqtt/test/MqttTest.java
2016-12-15 12:50:16 +01:00
Arnaud Cogoluègnes
20d35a1482
Use awaitility for Java tests
2016-12-15 12:46:14 +01:00
Arnaud Cogoluègnes
2a9a6cb261
Add test case for cert user/vhost mapping
...
Fixes #73
2016-12-13 17:31:34 +01:00
Arnaud Cogoluègnes
7e03af30fd
Introduce mqtt_default_vhosts global parameter
...
Fixes #73
2016-12-13 14:46:15 +01:00
Jean-Sébastien Pédron
77a6a0fc65
Travis CI: Import changes from rabbitmq-auth-backend-amqp
2016-12-12 14:22:41 +01:00
Arnaud Cogoluègnes
d424894dc6
Test connection fails when vhost not allowed for cert user
2016-12-12 10:17:29 +01:00
Jean-Sébastien Pédron
7838e22d2e
Merge branch 'stable'
2016-12-09 19:24:31 +01:00
Arnaud Cogoluègnes
8f9e8489c2
Optionally map user certificate to virtual host
...
Use a global runtime parameter to map the DN of the certificate
to a virtual host.
Fixes #73
2016-12-09 16:48:47 +01:00
Jean-Sébastien Pédron
cf0a1d656a
Update rabbitmq-components.mk
2016-12-08 19:14:49 +01:00
Jean-Sébastien Pédron
b87baed8bb
Do not use -include_lib() with own headers
...
This fixes the build outside of an Umbrella-like setup, ie. when
dependencies of this plugin are put into the `deps` subdirectory.
2016-12-08 18:07:13 +01:00
Jean-Sébastien Pédron
6e31a5ebc2
Travis CI: Use Ubuntu Trusty image to have access to Elixir
...
Also, required `sudo` so a VM is used instead of a container. This makes
the test much longer, but allows us to install non-whitelisted packages
such as xsltproc.
2016-12-08 17:50:08 +01:00
Jean-Sébastien Pédron
8216cb12f1
Merge branch 'stable'
2016-12-07 15:48:04 +01:00
Arnaud Cogoluègnes
88820d02d9
Don't crash for clients without a last will
...
References #74
2016-12-07 11:21:47 +01:00
Michael Klishin
b3f2bcfaed
Merge branch 'stable' into rabbitmq-mqtt-100
2016-12-06 18:54:29 +03:00
Jean-Sébastien Pédron
1f0feb3399
Move from .app.src to Makefile variables
...
This is the recommended way with Erlang.mk.
By default, the version is inherited from rabbitmq-server-release when
the source archive is created, or computed from git-describe(1) (see
`rabbitmq-components.mk`). One can override the version from the command
line by setting the `PROJECT_VERSION` variable.
[#130992027 ]
2016-12-06 16:31:27 +01:00
Arnaud Cogoluègnes
b1627afe81
Gracefully close connections to non-existent virtual hosts
...
Return CONNACK 4 code when the virtual host doesn't exist.
The MQTT description for this return code states "The data in
the user name or password is malformed", which not exactly
accurate but better than a pending or abruptly closed connection.
The server logs also a more meaningful message.
Fixes #100
2016-12-06 16:09:50 +01:00
Michael Klishin
dca3081a5d
Merge pull request #107 from rabbitmq/rabbitmq-cli-121
...
A CLI command to list mqtt connections
2016-12-06 18:07:25 +03:00
Michael Klishin
4a6a231484
Cosmetics
2016-12-06 18:06:44 +03:00
Michael Klishin
a077b95f86
Merge branch 'stable'
2016-12-06 17:56:21 +03:00
Daniil Fedotov
f411a74e10
Test list_mqtt_connections command
2016-12-06 14:24:45 +00:00
Arnaud Cogoluègnes
388d949645
Support Erlang string vhosts in retainer supervisor
...
Fixes #86
2016-12-06 11:03:02 +01:00
Michael Klishin
76c0a415e5
Merge branch 'master' into rabbitmq-cli-121
2016-12-05 19:56:24 +03:00
Daniil Fedotov
a025592ae9
A CLI command to list mqtt connections
2016-12-05 14:58:19 +00:00
Michael Klishin
bc8e2541bd
Merge branch 'stable'
2016-12-05 14:27:40 +03:00
Michael Klishin
97aa1ef4ae
Destructure this right in function head
2016-12-05 14:25:15 +03:00
Arnaud Cogoluègnes
a7a0174a41
Retain last will message
...
Fixes #74
2016-12-05 11:05:30 +01:00
Michael Klishin
74fcf5ef04
Merge branch 'stable'
2016-12-01 14:19:42 +03:00
Michael Klishin
c5e57ba510
Merge branch 'stable'
2016-11-30 18:56:37 +03:00
Michael Klishin
7c6382bd90
Merge branch 'stable'
2016-11-29 21:18:52 +03:00
Michael Klishin
73d3a43a14
Update rabbitmq-components.mk
2016-11-29 20:59:36 +03:00
Jean-Sébastien Pédron
ac1a925c40
Merge branch 'stable'
2016-11-25 11:47:44 +01:00
Jean-Sébastien Pédron
4fe43b124e
Update rabbitmq-components.mk
2016-11-25 10:51:00 +01:00
Jean-Sébastien Pédron
f63b487631
Merge branch 'stable'
2016-11-25 10:36:19 +01:00
Jean-Sébastien Pédron
a988711e4b
Update rabbitmq-components.mk
2016-11-25 10:08:21 +01:00
Jean-Sébastien Pédron
d62c1031f8
Merge branch 'stable' into rabbitmq-management-236
2016-11-24 12:10:39 +01:00
Jean-Sébastien Pédron
471563af1f
Merge branch 'stable'
2016-11-24 10:32:21 +01:00
Jean-Sébastien Pédron
5c8dfedb04
Add rabbitmq_ct_client_helpers to TEST_DEPS
2016-11-24 10:32:13 +01:00
Jean-Sébastien Pédron
2d2f525ef7
Update rabbitmq-components.mk
2016-11-23 18:06:05 +01:00
Gerhard Lazu
6918e06037
Merge branch 'stable'
2016-11-22 16:28:04 +00:00
Gerhard Lazu
5fdcfdef91
Update erlang.mk
2016-11-22 16:19:52 +00:00
Gerhard Lazu
5767f5106c
Update rabbitmq-components.mk
2016-11-22 16:16:38 +00:00
Jean-Sébastien Pédron
e5a9241143
Update erlang.mk
2016-11-14 11:57:17 +01:00
Jean-Sébastien Pédron
b079e685c9
Update rabbitmq-components.mk
2016-11-10 16:56:45 +01:00
Daniil Fedotov
8064f4b2f2
Merge branch 'stable'
2016-11-04 15:27:24 +00:00
Alexey Lebedeff
7697687db9
Fix `clean` make target for source dist tarballs
...
Source dist tarballs made by `rabbitmq-server-release` doesn't include
testsuites, so `clean` target breaks under such conditions.
2016-10-19 17:26:59 +03:00
Daniil Fedotov
7cd6fdec7e
Merge branch 'stable'
2016-09-28 11:39:54 +01:00
Daniil Fedotov
c610ca1c0e
Do not log java test output
2016-09-28 11:39:44 +01:00
Arnaud Cogoluègnes
e0aac5b183
Merge branch 'stable'
2016-09-27 15:34:09 +02:00
Arnaud Cogoluègnes
46d0977209
Use quiet mode for Maven
2016-09-27 15:33:31 +02:00
Arnaud Cogoluègnes
7f43ea05d8
Merge branch 'stable'
2016-09-27 13:56:16 +02:00
Arnaud Cogoluègnes
2d442353ee
Refactor Java tests
...
Use JUnit4-style tests, increase max-in-flight messages to make
tests more resilient, synchronize test variables.
2016-09-27 13:32:40 +02:00
Jean-Sébastien Pédron
e197159475
Merge branch 'stable' into rabbitmq-management-236
2016-09-27 12:45:03 +02:00
Arnaud Cogoluègnes
c076259000
Specify file format for client certificate
...
Use PKCS12 to load the KeyStore object, not JKS. Java 8
manages to load the certificate anyway, but not Java 6, nor Java 7.
2016-09-27 10:30:44 +02:00
Daniil Fedotov
9eab2c7704
Report java test result in test log
2016-09-26 13:45:05 +01:00
Daniil Fedotov
e8b4a5bd08
Set up travis to install maven
2016-09-26 10:55:51 +01:00
Daniil Fedotov
abe00f3d1a
Cleanup comments
2016-09-23 18:06:05 +01:00
Daniil Fedotov
507ef875ea
test dir cleanup
2016-09-23 17:19:03 +01:00
Daniil Fedotov
493805fd95
Run tests via maven
2016-09-23 16:42:21 +01:00
Jean-Sébastien Pédron
93953923d2
Merge branch 'stable'
2016-09-23 16:17:43 +02:00
Jean-Sébastien Pédron
1c8ebee87c
Update rabbitmq-components.mk
2016-09-23 11:23:07 +02:00
Jean-Sébastien Pédron
6ec83d7d05
Update erlang.mk
2016-09-22 17:56:52 +02:00
Jean-Sébastien Pédron
b17725bc18
rabbitmq_mqtt.app: Depend on ranch and rabbit_common
2016-09-20 11:14:22 +02:00
Jean-Sébastien Pédron
d617d58a25
Makefile: Explicitely list all DEPS
...
Sync rabbitmq-components.mk with rabbitmq-common to remove automatic
DEPS handling.
[#130086871 ]
2016-09-20 11:14:17 +02:00
Jean-Sébastien Pédron
f2a63e6979
Update erlang.mk
2016-09-20 11:12:56 +02:00
Jean-Sébastien Pédron
d4de34f0e9
Merge branch 'stable'
2016-09-15 16:41:29 +02:00
Jean-Sébastien Pédron
c48700f441
Update rabbitmq-components.mk
2016-09-15 15:47:22 +02:00
Daniil Fedotov
a16aab594c
Merge branch 'stable'
2016-09-06 17:58:24 +01:00
Daniil Fedotov
673a89127e
Added ranch as a dependency to build ranch_protocol behaviour
2016-09-06 17:57:33 +01:00
Jean-Sébastien Pédron
222fa8d27a
Merge branch 'stable'
2016-09-02 16:07:17 +02:00
Jean-Sébastien Pédron
90441b5b63
Update rabbitmq-components.mk
2016-09-02 13:22:26 +02:00
Jean-Sébastien Pédron
b0c24f04a2
Makefile: No need to filter out rabbitmq_test from TEST_DEPS anymore
...
[#127356157 ]
2016-09-02 12:29:41 +02:00
Jean-Sébastien Pédron
f549b61d3f
Update rabbitmq-components.mk
2016-09-02 12:03:32 +02:00
Michael Klishin
c510fef54a
Merge branch 'stable'
2016-09-02 02:07:46 +03:00
Michael Klishin
67fd94e7c0
Merge pull request #98 from rabbitmq/rabbitmq-mqtt-96
...
Fixed authentication logic.
2016-09-02 03:04:17 +04:00
Michael Klishin
d318ca2fa3
Rename
2016-09-02 01:54:57 +03:00
Michael Klishin
ee213084f8
Wording, naming
2016-09-02 01:33:34 +03:00
Daniil Fedotov
e8ca3ac8ff
test comments
2016-09-01 17:21:02 +01:00
Daniil Fedotov
4b688b9e63
Make MQTT authentication correspond with docs. Added tests
2016-09-01 16:54:51 +01:00
kjnilsson
9067750d8d
write connection_stats metrics
2016-09-01 13:07:17 +01:00
Daniil Fedotov
e348357392
Test empty password login
2016-09-01 10:43:14 +01:00
Jean-Sébastien Pédron
5573d28853
Travis CI: Do not test on Erlang 18.3
...
RabbitMQ fails to start because there is a regression in ssl which makes
Ranch unhappy.
2016-08-31 15:22:46 +02:00
Jean-Sébastien Pédron
72b02870f4
Merge branch 'stable'
2016-08-31 15:17:28 +02:00
Jean-Sébastien Pédron
638747c394
Travis CI: Require ant and ant-optional packages
...
Add a comment to explain why we can't test on R16B03: emqttc requires
Erlang 17.0.
Do not test on Erlang 18.3: RabbitMQ fails to start because there is a
regression in ssl which makes Ranch unhappy.
2016-08-31 14:33:20 +02:00
Jean-Sébastien Pédron
59523f1832
java_SUITE: Fetch dependencies using Maven
...
Thus, we do not use to clone and build org.eclipse.paho.client.mqttv3,
nor we depend on a local clone of rabbitmq-java-client.
While here, move all java_SUITE-specific files to `java_SUITE_data`.
2016-08-31 13:54:28 +02:00
Michael Klishin
93e9430f38
Merge pull request #97 from rabbitmq/fix-java-testsuite
...
java_SUITE: Fetch dependencies using Maven
2016-08-31 13:36:38 +03:00
Jean-Sébastien Pédron
212d9024a7
Travis CI: Only test against Erlang 18.3 and 19.0
2016-08-31 12:11:21 +02:00
Jean-Sébastien Pédron
08c29be1cf
java_SUITE: Fetch dependencies using Maven
...
Thus, we do not use to clone and build org.eclipse.paho.client.mqttv3,
nor we depend on a local clone of rabbitmq-java-client.
While here, move all java_SUITE-specific files to `java_SUITE_data`.
2016-08-31 10:15:21 +02:00
Daniil Fedotov
3bc5278186
Non negative integer validator
2016-08-10 18:12:23 +01:00
Daniil Fedotov
e405c725f2
Non negative validator for tcp linger
2016-08-10 17:56:21 +01:00
Daniil Fedotov
04eddc46cf
Add tcp linger option to schema
2016-08-10 17:07:03 +01:00
Michael Klishin
6e0c933474
Update rabbitmq-components.mk
2016-07-14 15:44:12 +03:00
Michael Klishin
fd2e37cb39
Update rabbitmq-components.mk
2016-07-14 15:37:33 +03:00
Michael Klishin
d94ffc2238
Update rabbitmq-components.mk
2016-07-14 13:40:42 +03:00
Michael Klishin
f1ebd56dbb
Update rabbitmq-components.mk
2016-07-14 13:20:02 +03:00
Michael Klishin
a17606bc83
Merge branch 'stable'
2016-07-12 08:26:34 -07:00
Michael Klishin
93c3488afb
Test against a few more versions
2016-07-12 08:26:09 -07:00
Michael Klishin
969f3e966f
Merge branch 'stable'
2016-07-12 08:25:40 -07:00
kjnilsson
c7627fdccc
remove R16 from travis configuration
2016-07-12 13:06:57 +01:00
kjnilsson
b76cfbe5dc
Move to common test
...
travis config
2016-07-12 12:46:11 +01:00
Jean-Sébastien Pédron
55b96b6dc7
Merge branch 'stable'
2016-06-29 16:55:01 +02:00
Jean-Sébastien Pédron
39251c5fca
Use the new -spec format
...
The old format is removed in Erlang 19.0, leading to build errors.
Also, get rid of the `use_specs` macro and thus always define -spec() &
friends.
While here, unnify the style of -type and -spec.
References rabbitmq/rabbitmq-server#860.
[#118562897 ]
[#122335241 ]
2016-06-29 16:53:00 +02:00
Jean-Sébastien Pédron
13b49990ed
Git: Ignore `xrefr`
2016-06-29 16:50:56 +02:00
Daniil Fedotov
eb72bff49a
Set bounded timeout for OTP workers
2016-06-17 01:31:32 +03:00
Daniil Fedotov
8a176cd37b
Set bounded timeout for OTP workers
2016-06-16 13:12:03 +01:00
Michael Klishin
283526502e
Merge branch 'stable'
2016-05-29 23:35:45 +03:00
Michael Klishin
0db52c2337
Update rabbitmq-components.mk
2016-05-29 23:21:55 +03:00
Michael Klishin
773c79673f
Update CONTRIBUTING.md, add CODE_OF_CONDUCT.md
2016-05-28 09:55:39 -07:00
Michael Klishin
c13c2357f7
Update CONTRIBUTING.md, add CODE_OF_CONDUCT.md
2016-05-28 14:22:50 +03:00
Daniil Fedotov
2626696498
Formatting
2016-05-20 14:07:04 +01:00
Daniil Fedotov
fcdff84cca
Merge pull request #80 from tiagodeoliveira/unnecessary_user_login_check
...
Removing unnecessary check_user_login on process_login
2016-05-20 14:06:56 +01:00
Daniil Fedotov
f2b4d32693
Formatting
2016-05-20 14:04:10 +01:00
Daniil Fedotov
6a5107038b
Merge pull request #80 from tiagodeoliveira/unnecessary_user_login_check
...
Removing unnecessary check_user_login on process_login
2016-05-20 13:53:17 +01:00
Tiago Oliveira
4e7d7abc17
Using internal user from amqp client
2016-05-18 10:11:50 -03:00
kjnilsson
2ab906e2c9
Merge branch 'stable'
2016-05-18 13:22:06 +01:00
Karl Nilsson
26bb50e78b
Update rabbitmq-components.mk
2016-05-18 12:48:01 +01:00
Michael Klishin
de73bcd8ba
Merge pull request #81 from rabbitmq/rabbitmq-server-546
...
Use erlang 18.3 only in travis
2016-05-17 12:04:43 +03:00
Michael Klishin
ad802f0bde
Update rabbitmq-components.mk
2016-05-17 11:17:54 +03:00
Michael Klishin
2d07ee6ff2
Update rabbitmq-components.mk
2016-05-17 10:16:10 +03:00
Daniil Fedotov
18b8cfa7cf
Use erlang 18.3 only in travis
2016-05-12 10:58:25 +01:00
Tiago Oliveira
61c3f61b64
Removing unnecessary check_user_login that executes authentication method twice.
...
During the amqp_connection:start the check_user_login method is already executed, when it is called again it will call the user_login_authentication again, it makes the authentication to be executed twice in a role, and it raises a problem when using salted passwords.
2016-05-11 14:35:28 -03:00
Daniil Fedotov
917f035bae
Stub for broker_version_requirements
2016-04-28 09:58:54 +01:00
Michael Klishin
6c16d80527
Merge branch 'stable'
2016-04-25 08:31:30 -07:00
Michael Klishin
2c8eec7dc1
Update Paho Java git repo location
2016-04-25 08:22:13 -07:00
Michael Klishin
84871d5e7f
Merge branch 'stable'
2016-04-22 22:36:02 +01:00
Daniil Fedotov
5c98b84a56
Merge branch 'stable'
2016-04-22 13:32:57 +01:00
Daniil Fedotov
e72eb1acbf
Revert redundant nack
2016-04-22 12:32:01 +01:00
Daniil Fedotov
0cae4fc7fe
Set session_present flag
2016-04-22 12:28:08 +01:00
Daniil Fedotov
2d2b8f96d8
Tests message redelivery when resuming session
2016-04-22 12:25:30 +01:00
Michael Klishin
54ad6b4260
Merge branch 'master' into rabbitmq-server-550
2016-03-23 20:01:39 +03:00
Michael Klishin
f72cca58a1
Merge branch 'stable'
2016-03-23 17:20:56 +03:00
Michael Klishin
7e50e27c32
Update rabbitmq-components.mk
2016-03-23 17:13:41 +03:00
Michael Klishin
bc28f75d1e
Trailing ws
2016-03-23 12:26:50 +00:00
Daniil Fedotov
bc81db7199
schema testing fixes
2016-03-23 12:26:50 +00:00
Daniil Fedotov
a1467d8aca
Missing listener options
2016-03-23 12:26:50 +00:00
Daniil Fedotov
677a66b990
none option for tcp_listen_options config
2016-03-23 12:26:50 +00:00
Daniil Fedotov
2f47e113f4
cuttlefish schema
2016-03-23 12:26:50 +00:00
Michael Klishin
66bc029d05
Merge branch 'stable'
2016-03-09 23:33:19 +03:00
Michael Klishin
328e2043e1
Emit stats unconditionally
...
...of connection (flow control) state.
This makes it much easier to reason about flow control
state when looking at the management UI or monitoring tools
that poll HTTP API.
Now that rabbitmq/rabbitmq-management#41 is merged, there are
few arguments against always emitting stats.
Fixes #71 .
2016-03-08 16:03:53 +03:00
Michael Klishin
a72c9e14d2
Merge branch 'stable'
2016-03-05 11:27:29 +03:00
Michael Klishin
44389f778b
In fact, even more
2016-03-05 11:21:00 +03:00
Michael Klishin
72bfeef88b
Wait a bit more
2016-03-05 11:20:54 +03:00
Michael Klishin
9b7c29841b
Cosmetics
2016-03-05 11:09:38 +03:00
Michael Klishin
706d82dafb
Explain
2016-03-05 11:09:26 +03:00
Michael Klishin
4c5aecf0f0
skip_publishes => expect_publishes
2016-03-05 11:04:56 +03:00
Michael Klishin
1078f5787f
Trailing ws
2016-03-05 11:01:20 +03:00
Michael Klishin
fd4d1a9b1d
Trailing ws
2016-03-05 10:59:35 +03:00
Michael Klishin
c09578b19d
Ignore temp JUnit runner files
2016-03-05 10:58:53 +03:00
Michael Klishin
ff28d87d9a
Compile
2016-03-05 10:57:29 +03:00
Michael Klishin
f6d613871a
defered => deferred
2016-03-05 10:56:53 +03:00
Daniil Fedotov
98cf125e39
Defer last receive after blocking
2016-03-04 20:33:01 +00:00
Michael Klishin
25538025df
Merge branch 'stable'
2016-03-04 14:45:33 +03:00
Michael Klishin
b12d16ef71
Use 0 for frame_max
...
Atoms break HTTP API clients in statically typed languages, e.g. Go
and Java
2016-03-04 13:58:59 +03:00
Michael Klishin
30ca7ce8c1
Set product to "MQTT client"
...
Not much more specific but a bit more suitable.
2016-03-04 13:35:53 +03:00
Michael Klishin
15d23e4474
Cosmetics
2016-03-04 13:34:53 +03:00
Loïc Hoguin
439d8521aa
Emit stats for management UI
2016-03-03 14:59:53 +01:00
Loïc Hoguin
738f263798
MQTT connections use exactly one channel
2016-03-03 14:59:53 +01:00
Loïc Hoguin
7b42c20b7e
Allow passing the adapter info on processor init
2016-03-03 14:59:53 +01:00
Michael Klishin
c619f638ee
Merge branch 'stable'
2016-03-03 14:38:16 +03:00
Daniil Fedotov
6b5de44f9c
Tests for mqtt blocking
2016-03-02 16:57:48 +00:00
Daniil Fedotov
024586071c
conserve_resources arguments
2016-03-02 15:07:20 +00:00
Daniil Fedotov
d1685b08fd
More tests to check QoS2 is not ignored
2016-01-27 12:05:08 +00:00
Daniil Fedotov
64f5911ec2
Downgrade publishes if QoS = 2 to QoS = 1
2016-01-12 18:02:37 +00:00
Loïc Hoguin
59d4eddeef
Make number of Ranch acceptors configurable
2016-01-12 11:31:48 +01:00
Michael Klishin
a01ee29b6c
Wording
2016-01-09 17:13:41 +03:00
Daniil Fedotov
be1555b469
rename flag to received_connect_frame
2016-01-09 17:13:41 +03:00
Daniil Fedotov
17e4c707c6
Log MQTT connection.
2016-01-09 17:13:41 +03:00
Daniil Fedotov
954016c69f
Log MQTT connection start and close with debug if no data received
2016-01-09 17:13:41 +03:00
Michael Klishin
d17a2f3028
Cosmetics
2016-01-09 17:13:41 +03:00
Loïc Hoguin
e151b6e072
Make send method configurable and export useful functions
...
Needed for the new Web-MQTT plugin.
2016-01-09 17:13:41 +03:00
Michael Klishin
7f0f7a7e36
Cosmetics
2016-01-08 02:26:38 +03:00
Loïc Hoguin
1f1cb7ab9b
Make send method configurable and export useful functions
...
Needed for the new Web-MQTT plugin.
2016-01-08 02:26:32 +03:00
Michael Klishin
9ba1da7434
Update (c) info
2016-01-01 12:59:18 +03:00
Pierre Fenoll
62d865b739
.gitignore: make absolute paths relative
2015-12-30 07:09:01 +03:00
Jean-Sébastien Pédron
41b2cc1c5a
Update erlang.mk
2015-12-18 20:34:14 +01:00
Jean-Sébastien Pédron
97e551919e
Sync with upstream build.config
2015-12-18 20:33:03 +01:00
Jean-Sébastien Pédron
f89122a48e
Update rabbitmq-components.mk
2015-12-18 19:08:09 +01:00
Michael Klishin
33df46a590
Update rabbitmq-components.mk
2015-12-18 19:49:03 +03:00
Michael Klishin
51e887e52e
Update test expectation
2015-12-18 16:32:26 +03:00
Michael Klishin
5992c36a92
Change default non-clean subscription TTL to 24 hours, fixes #49
2015-12-18 16:14:48 +03:00
Michael Klishin
d89e68c2d5
Explain
2015-12-18 15:24:16 +03:00
Michael Klishin
70d9bbe563
Switch to rabbit_data_coercion:to_binary/1 [from rabbit_common]
2015-12-10 15:01:47 +03:00
Michael Klishin
648d0f09ba
Rename supervisor child: rabbit_keepalive_sup => rabbit_mqtt_keepalive_sup
...
Fixes #48 .
2015-12-10 14:34:14 +03:00
Michael Klishin
988d94a2c1
Add a couple of TODOs
2015-12-10 14:01:08 +03:00
Jean-Sébastien Pédron
512d980447
Update rabbitmq-components.mk
2015-12-03 15:38:49 +01:00
Jean-Sébastien Pédron
42b98673ac
Update rabbitmq-components.mk
2015-12-01 18:36:22 +01:00
Jean-Sébastien Pédron
4eda6eecd8
Update rabbitmq-components.mk
2015-12-01 16:17:19 +01:00
Jean-Sébastien Pédron
6017ad84a3
Update rabbitmq-components.mk
2015-11-30 09:19:27 +01:00
Michael Klishin
624a7741cf
Merge branch 'colons-in-username' of https://github.com/lshift/rabbitmq-mqtt into lshift-colons-in-username
2015-11-28 20:42:22 +03:00
Michael Klishin
b84260c721
Fix the build and a bug
...
Make sure that authentication with username taken from TLS/x509
certificate succeeds; respect rabbitmq_mqtt.ssl_cert_login.
Due to a match clause ordering issue it wasn't the case.
2015-11-28 20:20:32 +03:00
Loïc Hoguin
597eecdaf8
Remove unneeded TCP options from config in .app.src files
2015-11-26 14:01:42 +01:00
Jean-Sébastien Pédron
83fd0641fa
Update rabbitmq-components.mk
2015-11-26 08:54:11 +01:00
Jean-Sébastien Pédron
b4b8955170
Update rabbitmq-components.mk
2015-11-26 08:41:23 +01:00
Jean-Sébastien Pédron
3fd2dd3b13
Update erlang.mk
2015-11-25 10:36:10 +01:00
Jean-Sébastien Pédron
1eb9c9e383
Update rabbitmq-components.mk
2015-11-25 10:35:23 +01:00
Loïc Hoguin
01b2f25acb
Use rabbit_net:accept_ack instead of ranch:accept_ack
...
This function includes operations that must be performed by
processes owning sockets.
2015-11-24 20:17:50 +01:00
Jean-Sébastien Pédron
4c08593f24
Update rabbitmq-components.mk
2015-11-20 10:52:05 +01:00
Michael Klishin
a9db0067c4
Merge branch 'master' into rabbitmq-server-260
2015-11-19 16:42:48 +03:00
Jean-Sébastien Pédron
f7fb3bff2f
Update erlang.mk
2015-11-19 14:31:58 +01:00
ash
001f4a1a01
add option to ignore colons in usernames
2015-11-19 11:36:24 +00:00
Michael Klishin
803c06b6a0
Merge branch 'master' into rabbitmq-server-260
2015-11-19 14:11:30 +03:00
Jean-Sébastien Pédron
33edb766a3
Update erlang.mk
2015-11-18 19:14:41 +01:00
Jean-Sébastien Pédron
64e9bf880c
Update erlang.mk
2015-11-18 17:41:29 +01:00
Loïc Hoguin
1f3eadb6e7
Switch to Ranch for connection handling
2015-11-17 15:22:27 +01:00
Jean-Sébastien Pédron
6efcae4fad
Update erlang.mk
2015-11-10 13:12:26 +01:00
Jean-Sébastien Pédron
23866a9ec0
Update rabbitmq-components.mk
2015-11-10 13:11:17 +01:00
Jean-Sébastien Pédron
f4e7a8fa8a
Update rabbitmq-components.mk
2015-11-05 20:59:07 +00:00
Jean-Sébastien Pédron
d0c092e1e8
Add Travis CI configuration
2015-11-05 17:55:15 +01:00
Jean-Sébastien Pédron
3441383d18
make tests: Pass certificates path down to test/Makefile
...
This allows ant to detect the certificates and enable the SSL tests.
2015-11-05 17:50:58 +01:00
Jean-Sébastien Pédron
50c1eadfb2
Update rabbitmq-components.mk
2015-11-03 15:12:30 +01:00
Jean-Sébastien Pédron
703a80a98a
Update rabbitmq-components.mk
2015-11-02 10:20:50 +01:00
Jean-Sébastien Pédron
f6e67fc61f
Update rabbitmq-components.mk
2015-10-30 17:32:56 +01:00
Jean-Sébastien Pédron
ffcedeff82
Update erlang.mk
2015-10-28 11:16:08 +01:00
Jean-Sébastien Pédron
9836da4660
Update rabbitmq-components.mk
2015-10-28 11:10:37 +01:00
Jean-Sébastien Pédron
f20b4b087a
DEPS: Remove rabbit
2015-10-26 18:12:01 +01:00
Jean-Sébastien Pédron
33b542602b
Remove stale package.mk
2015-10-26 17:23:33 +01:00
Jean-Sébastien Pédron
7de5cae62e
Update erlang.mk
2015-10-26 15:33:34 +01:00
Jean-Sébastien Pédron
c8b937f538
Update rabbitmq-components.mk
2015-10-26 11:15:31 +01:00
Jean-Sébastien Pédron
7a1f782115
Update rabbitmq-components.mk
2015-10-26 10:21:21 +01:00
Jean-Sébastien Pédron
f354cb3354
Update erlang.mk's build.config
2015-10-23 19:50:54 +02:00
Jean-Sébastien Pédron
469d39494f
Update erlang.mk
2015-10-23 18:32:56 +02:00
Jean-Sébastien Pédron
baadd3db8b
Update rabbitmq-components.mk
2015-10-23 16:05:46 +02:00
Jean-Sébastien Pédron
9626e1fbe0
Merge branch 'master' into erlang.mk
2015-10-23 12:13:24 +02:00
Jean-Sébastien Pédron
46b2da4e29
Update erlang.mk
2015-10-22 18:34:37 +02:00
Michael Klishin
c15812ac44
merge stable into master
2015-10-21 20:18:33 +03:00
Jean-Sébastien Pédron
e2d80945cf
setup-rabbit-test.sh: Take rabbitmqctl location from environment
2015-10-21 14:30:37 +02:00
Jean-Sébastien Pédron
08b5c3a009
test/build.xml: Take Java client location from environment
2015-10-21 14:30:03 +02:00
Jean-Sébastien Pédron
8c4b087c7c
Git: Ignore testsuite artifacts
2015-10-21 14:29:41 +02:00
Jean-Sébastien Pédron
a075272f0f
Update rabbitmq-components.mk
2015-10-19 17:35:45 +02:00
Jean-Sébastien Pédron
300b9acd97
Update erlang.mk
2015-10-19 17:12:42 +02:00
Jean-Sébastien Pédron
f36a99f998
Update rabbitmq-components.mk
2015-10-19 17:11:41 +02:00
Jean-Sébastien Pédron
9d5037344d
Initial move to erlang.mk
2015-10-19 12:28:46 +02:00
Michael Klishin
0e3efda1ab
Merge branch 'stable'
2015-09-30 04:03:26 +08:00
Giuseppe Privitera
d26b6e1c91
set auto_delete=false for QoS1 subscriptions
2015-09-29 11:23:34 +01:00
Michael Klishin
1096f3182d
Merge branch 'stable'
2015-09-22 12:38:31 +03:00
Michael Klishin
87dba24f4b
Rename function
2015-09-22 02:35:19 -07:00
Michael Klishin
85f9f2df5b
Two more warnings
2015-09-22 02:31:15 -07:00
Michael Klishin
3981be3e3d
Squash a few warnings in tests
2015-09-22 02:26:22 -07:00
Giuseppe Privitera
340bb5d70b
refactored tests to use rabbitmq_mqtt:env/1
2015-09-17 23:27:13 +01:00
Giuseppe Privitera
9039d7398b
added .app file with some configuration used by tests
2015-09-17 23:26:05 +01:00
Giuseppe Privitera
204b1a59aa
added step to copy .app file from test/src to test/ebin
2015-09-17 23:24:42 +01:00
Giuseppe Privitera
1544360485
removed unused test
2015-09-17 23:23:49 +01:00
Giuseppe Privitera
0213ec24e9
use assertEqual instead of pattern matching
2015-09-17 15:40:10 +01:00
Giuseppe Privitera
f6d7f16941
refactored coerce to use to_binary identity function
2015-09-17 15:00:33 +01:00
Giuseppe Privitera
578ac7169b
coerce default_user & default_pass
2015-09-17 14:50:17 +01:00
Giuseppe Privitera
2b58ca1247
added unit tests
2015-09-17 14:26:22 +01:00
Giuseppe Privitera
f196f05373
coerce exchange and vhost to binary
2015-09-17 13:03:53 +01:00
ash-lshift
b633549801
revert warning fix
2015-07-14 11:03:31 +01:00
ash-lshift
8fb4904fdc
whitespace changes
2015-07-14 10:56:02 +01:00
ash-lshift
bafb39f5f0
don't use `apply/2`
2015-07-14 10:47:39 +01:00
ash-lshift
6bc3579023
fix compile warnings
2015-07-14 10:47:01 +01:00
ash-lshift
fabf2614ab
rename `K` to `Fn`
2015-07-14 10:34:25 +01:00
ash-lshift
868b845101
change resource kind to `topic`
2015-07-14 10:31:42 +01:00
ash-lshift
f293972f3c
check authorization at mqtt topic level
2015-06-30 09:08:26 +01:00
Michael Klishin
8712428268
Merge branch 'stable'
2015-05-24 04:55:07 +03:00
Michael Klishin
692c6a7060
(c) year
2015-05-24 04:54:58 +03:00
Michael Klishin
b52aed4a69
Merge branch 'stable'
2015-05-14 17:19:24 +03:00
Michael Klishin
d89eed50e9
Adapt to Java client API change in stable
2015-05-14 14:59:50 +03:00
Jean-Sébastien Pédron
dad4ea314a
Merge branch 'stable'
2015-05-07 13:02:46 +02:00
Jean-Sébastien Pédron
aa6872bb5c
test/Makefile: Use $MAKE instead of hard-coding "make"
...
This one was harmless but let's do this for consistency's sake.
References #23 .
2015-05-07 13:01:13 +02:00
Jean-Sébastien Pédron
9e9c2dec8c
Merge branch 'stable'
2015-05-06 19:13:42 +02:00
Jean-Sébastien Pédron
386bba589e
Use $MAKE instead of hard-coding "make"
...
$MAKE is passed down by Umbrella's do-package.mk. This fixes the
testsuite on systems where "make" is not GNU make.
Fixes #23 .
2015-05-06 19:09:27 +02:00
Michael Klishin
f2dc1d75cb
Merge branch 'stable'
2015-05-01 00:49:48 +03:00
Michael Klishin
5a87bddf0d
Ignore test/.idea
2015-05-01 00:49:21 +03:00
Michael Klishin
fc3123c7a6
Update README.md
2015-04-28 23:49:46 +03:00
Michael Klishin
8d359a8ea4
Update README.md
2015-04-28 23:47:08 +03:00
Michael Klishin
0f4db19311
Use a higher call timeout here
2015-04-26 19:36:15 +03:00
Michael Klishin
0075bea594
Merge branch 'master' into rabbitmq-mqtt-16
2015-04-26 18:36:13 +03:00
Michael Klishin
e099bf21c0
Tests for retained messages
2015-04-26 04:51:30 +03:00
Michael Klishin
e8ae92a910
Don't crash if we get a PUBACK for unknown message
...
E.g. due to bogus clients that interpret QoS downgrade
in curious ways.
2015-04-26 04:51:04 +03:00
Michael Klishin
3c30c87767
Change how retained message delivery QoS is calculated
...
We now take the lower value of message QoS and
SUBSCRIBE QoS, per community feedback.
2015-04-25 19:35:47 +03:00
Michael Klishin
36374ca849
Fix a badmatch
2015-04-25 19:34:59 +03:00
Michael Klishin
6ac8d4def5
Implement a DETS-based message store, refactor
2015-04-23 02:48:06 +03:00
Michael Klishin
c6979e0435
Handle vhost creation and deletion events
2015-04-22 01:14:15 +03:00
Michael Klishin
df47dbd77a
Refactor
2015-04-22 00:31:23 +03:00
Michael Klishin
b79bd7efb4
Trap exits so that terminate/2 is invoked
2015-04-21 19:07:09 +03:00
Michael Klishin
2c6c21a4ef
Undo this accidental change
2015-04-21 17:39:20 +03:00
Michael Klishin
a4f4d92fd7
Switch to permanent type
2015-04-21 15:18:48 +03:00
Michael Klishin
0b6e7d5714
put/get/delete operations for retained message store
...
Yet to be done: dump and restore to disk on shutdown
and boot.
2015-04-21 14:26:46 +03:00
Michael Klishin
1c935cfb21
Process bits for retained message stores
2015-04-18 03:55:34 +03:00
Michael Klishin
204dfecea0
Correct a typo
2015-04-16 23:37:23 +03:00
Michael Klishin
8910ce56c6
Correct a typo
2015-04-16 23:36:57 +03:00
Michael Klishin
7b5452415f
Ignore test/.idea
2015-04-15 05:53:32 +03:00
Michael Klishin
bd6a283e79
Ignore test/.idea/*
2015-03-26 16:59:28 +03:00
Michael Klishin
f240c3ded1
Sync CONTRIBUTING.md with the template one
2015-02-20 17:09:21 +03:00
Jean-Sébastien Pédron
92bc2c21d0
Merge branch 'stable'
2015-02-19 18:19:42 +01:00
Jean-Sébastien Pédron
825bf9e580
Convert .hgignore to .gitignore
2015-02-19 17:26:01 +01:00
Michael Klishin
df0bff310a
Sync CONTRIBUTING.md with the template one
2015-02-18 00:20:51 +03:00
Michael Klishin
6805dfeffa
Sync CONTRIBUTING.md with the template one
2015-02-18 00:09:54 +03:00
Jean-Sébastien Pédron
8b3687d042
Merge branch 'stable'
2015-02-17 21:17:55 +01:00
Jean-Sébastien Pédron
c7546ef628
Remove the "moved to GitHub" warning.
2015-02-17 21:17:45 +01:00
Jean-Sebastien Pedron
8ec8c2ee97
README.md: Warn about the move to GitHub
2015-02-17 18:12:53 +01:00
Jean-Sebastien Pedron
1fb4e838f2
README.md: Warn about the move to GitHub
2015-02-17 18:12:39 +01:00
Michael Klishin
b853a637b3
merge stable into default
2015-02-10 15:54:30 +03:00
Michael Klishin
63ff3a105a
MQTT processor should link its channel
2015-02-10 15:52:02 +03:00
Michael Klishin
dd67f9d51c
merge stable into default
2015-01-31 12:02:19 +03:00
Michael Klishin
9546c4dcc5
Make sure to send LW&T when connection is closed due to a keep-alive timeout
2015-01-31 11:26:49 +03:00
Simon MacMullen
92cd34594d
stable to default
2014-12-02 12:40:59 +00:00
Simon MacMullen
a725ddbcf8
Merge bug26480 (again)
2014-11-28 15:15:08 +00:00
Simon MacMullen
7b06606359
Oops, that might not exist
2014-11-28 15:14:11 +00:00
Michael Klishin
75fccac9b9
merge heads of default
2014-11-28 18:11:41 +03:00
Michael Klishin
117d556ea2
ssl_cert_login and allow_anonymous probably won't be explicitly set to undefined
2014-11-28 18:08:42 +03:00
Michael Klishin
f8890a5c25
Drive by change: correct error message arguments here
2014-11-28 17:40:38 +03:00
Michael Klishin
ad3af36155
Don't swallow exceptions in mqtt_processor:process_frame/1
2014-11-28 17:40:16 +03:00
Simon MacMullen
379ecfd911
Simplify. Enforce always running SSL tests. Don't create global variables in the Makefile namespace.
2014-11-28 14:39:39 +00:00
Michael Klishin
fe541380b5
Make sure ssl_cert_login has a default value
2014-11-28 16:57:27 +03:00
Simon MacMullen
45826041aa
Oops
2014-11-28 11:30:14 +00:00
Simon MacMullen
746495fc43
Rename this to avoid conflict with STOMP. Something of a hack, but it seems to work.
2014-11-28 09:46:53 +00:00
Michael Klishin
f50bfda0b1
Backout more package.mk changes
2014-11-27 23:42:04 +03:00
Michael Klishin
5652860bc4
Backout more package.mk changes
2014-11-27 23:41:49 +03:00
Michael Klishin
f282d32b1b
Backed out changeset aed1b2464613
2014-11-27 23:41:15 +03:00
Michael Klishin
8c94676c73
Add a rule for TEST_EBIN_DIR
2014-11-27 16:14:15 +03:00
Michael Klishin
53ad3c7950
Attempt to fix CI
2014-11-27 15:48:02 +03:00
Michael Klishin
7276dab237
Attempt to fix CI creating test/ebin in one more place
2014-11-27 14:49:51 +03:00
Michael Klishin
779a526837
Use absolute paths here
2014-11-26 01:04:15 +03:00
Michael Klishin
073cc57dcb
Don't require peer cert
2014-11-25 23:51:30 +03:00
Michael Klishin
0dc8b8e22d
Require TLS certificate in TLS authentication tests
...
Otherwise we get platform-specific failures and even generic client exceptions.
This case is potentially valid but is likely to be really rare (if you use TLS,
you probably also authenticate, using credentials or the certificate).
In the original patch this scenario was expected to fail. We now go back
to square 1.
2014-11-25 23:44:42 +03:00
Michael Klishin
b1147f355c
Pick most recent TLS version available
2014-11-25 23:20:38 +03:00
Michael Klishin
d68f2b063e
Use TLS v1.1 because v1.2 is not available on CI machines
2014-11-25 21:46:23 +03:00
Michael Klishin
df5eb6aa57
Certificate authencation needs to be enabled explicitly, as with STOMP
...
Using the same ssl_cert_login app key.
2014-11-24 21:22:09 +03:00
Michael Klishin
0e298907aa
Make it clear that this test does not expect an authentication failure
2014-11-24 21:21:20 +03:00
Michael Klishin
089ef7e86f
Rename TLS test package
2014-11-24 17:01:10 +03:00
Michael Klishin
a0def030d2
Ditto
2014-11-24 16:59:19 +03:00
Michael Klishin
06f8a2db70
Cosmetics
2014-11-24 16:58:48 +03:00
Michael Klishin
6eca0b71f8
Only ignore test/build/ but not test/build.xml and test/build.properties
2014-11-24 13:13:27 +03:00
Michael Klishin
cee8eb2fd8
Client MQTT authentication using x509 certificates
...
Original patch by Eric Rauer.
2014-11-21 14:54:33 +00:00
Simon MacMullen
147c0c3a3c
poodle_check/1 has to come after ensure_ssl/0.
2014-10-20 15:54:48 +01:00
Simon MacMullen
73f3fc4d40
Oops
2014-10-20 14:06:22 +01:00
Simon MacMullen
7305f70289
Test for old Erlang, and shout if we are vulnerable.
2014-10-20 14:05:30 +01:00
Michael Klishin
58a8c6a0f0
Use human-readable MQTT versions in connection adapter info
2014-08-25 13:43:11 +04:00
Michael Klishin
f05ca5e4c2
Use manual delivery flow control
2014-08-11 14:26:27 +04:00
Michael Klishin
de51bab488
Eliminate a few compiler warnings
2014-07-04 12:10:00 +04:00
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