Commit Graph

4500 Commits

Author SHA1 Message Date
Gilbert Wong d36a34fb59 Fix topic_name validation bug
Prior to this change, Prior to this change, the validation for the mqtt5.0 publish packet
which both contains zero-length topic name and topic alias is wrong.
2018-10-09 17:45:40 +08:00
周子博 b80ba6e458 Fix bug when ConnProps is undefined 2018-10-09 14:19:22 +08:00
周子博 9bcd4c3e08 improve will message 2018-10-09 13:35:27 +08:00
Gilbert Wong 52eae65983 Fix topic_name validation bug
Prior to this change, Prior to this change, the validation for the mqtt5.0 publish packet
which both contains zero-length topic name and topic alias is wrong.

This change fix this bug.
2018-10-08 20:02:32 +08:00
Feng Lee b25dbd866b Update README.md 2018-10-04 12:17:28 +08:00
HuangDan e5f977d808 Upgrade the esockd library 2018-09-29 22:16:54 +08:00
spring2maz e3f2ae8db8 Change from customized total heap size check to set process flag
The `max_heap_size` process flag can be used to limit total
heap size of a process, and it gives much more detailed
crash log if the limit is hit.
2018-09-29 21:36:34 +08:00
周子博 1705f25db6 Fix bug in session expiry interval 2018-09-29 21:30:22 +08:00
HuangDan cb85c5fea0 Upgrade the esockd library to v5.4.2 2018-09-29 18:59:35 +08:00
周子博 1638aff0f9 Remove duplicate match 2018-09-29 14:47:21 +08:00
周子博 a77f8d28f9 Improve coverage 2018-09-29 14:47:21 +08:00
周子博 59798762a9 Remove will message when received disconnect packet with reason code 0x00 2018-09-29 14:47:21 +08:00
周子博 2d354ca883 Improve topic alias maximum in connect packet 2018-09-29 14:47:21 +08:00
周子博 064db65206 improve receive maximum in connect packet 2018-09-29 14:47:21 +08:00
HuangDan 1bc175e0ce Add mountpoint config to zone configs 2018-09-28 18:53:52 +08:00
HuangDan 2a0bbd1c37 Fixed errors './cuttlefish: command not found' when running make app.config 2018-09-28 16:52:14 +08:00
spring2maz 3bab3cbd2a Shared subscriber should be keyed by SharedName + Topic
Prior to this change, if a producer session produces to two
or more shared subscriber groups, the previously picked subscriber
for sticky strategy may not be a valid member for the next group.
2018-09-28 09:37:51 +08:00
HuangDan 96b5d71a67 Fix args errors on emqx_hook:run('message.acked') 2018-09-27 11:49:23 +08:00
HuangDan d1c72b92af Add 'sticky' dispatch strategy for shared subscription 2018-09-27 10:46:14 +08:00
Feng Lee db520b9b94 Disable the rate_limit of MQTT/TCP listener by default. 2018-09-25 22:46:37 +08:00
spring2maz c123064afc Upload coveralls data only when sucess
This is done by moving coveralls send to after_success section
in .travis.yml.
having it in after_success should not make the build fail if
coveralls send fails due to server being overloaded etc.
2018-09-25 22:09:13 +08:00
spring2maz 0b0ef9bd54 Fix default QoS in test cases 2018-09-25 22:09:13 +08:00
spring2maz 9b2629e884 Fix dependency version discrepancy between Makefile and rebar.config 2018-09-25 22:09:13 +08:00
spring2maz 8a8729f9ea Make rebar3 xref work.
Fixed a bad call in emqx_mod_subscription module
also commented out dead code for now in emqx_config.erl
2018-09-25 22:09:13 +08:00
HuangDan 5dfd431040 Fix typo 2018-09-22 19:40:07 +08:00
turtleDeng 925e98a3e5
Merge pull request #1823 from emqx/add-shared-sub-strategy
Add new shared subscription dispatch strategy
2018-09-22 19:30:08 +08:00
HuangDan a46a1a2525 Upgrade the esockd library to v5.4.1 2018-09-22 18:34:18 +08:00
周子博 4336b7c9a0 Fix bug in issue#1848 2018-09-22 18:23:56 +08:00
turtled 5afaac4641 Add emqx_broker:subscribe/3 defult qos 2018-09-22 18:03:05 +08:00
spring2maz 3b9247994d Refine emqx_mock_client
Before this change, eqmx_mock_client uses a shared ets table
to store last received message, this causes troulbe when we
want to start / stop two or more clients in one test case
the ets table gets owned by the first spanwed client and
gets closed when the owner client dies.

Now it keeps the last received message in process state
and a gen_server call is added to retrieve it for verification

Along with this change in emqx_mock_client, it made possible
to write test case to verify the actual subscriber pid
used in shared subscription strategy, so test cases were
added (and modified) to verify different strategies
2018-09-22 10:51:38 +02:00
spring2maz b35d37c92d Add new shared subscription dispatch strategy
'random' was already there before this change
Added two new strategies: 'sticky' and 'round_robin'
'sticky' is made default as it is the cheapest
2018-09-22 10:50:34 +02:00
Feng Lee 795ee300d1 Disable the publish_limit by default 2018-09-22 16:26:39 +08:00
Feng Lee 5689ad3485 Fix issue #1847.
Change the config of 'zone.$name.publish_limit'
2018-09-22 16:26:39 +08:00
turtleDeng 8f35d13e17 Improve bridges design (#1849)
Improve the design of bridges
2018-09-22 16:19:28 +08:00
turtled 475f2a87c6 Rm emqx_ctl set|show cmds 2018-09-22 16:17:21 +08:00
tigercl 03f607c1b2 Fix issue#1833 and #1834 (#1845) 2018-09-22 16:10:24 +08:00
turtleDeng 8653732bae Revert "Calculate the 1.5 keep alive time exactly" 2018-09-22 14:52:31 +08:00
Feng Lee b4b31dbfe4 Merge branch 'more-gc-enforcement-policies' into emqx30 2018-09-22 06:41:08 +08:00
Feng Lee 02ddcf37cd
Merge branch 'emqx30' into more-gc-enforcement-policies 2018-09-22 06:35:11 +08:00
Feng Lee a4cbe4d0ad Merge branch 'shutdown-policy' into emqx30 2018-09-22 06:29:55 +08:00
Feng Lee 3dfe4168cb
Change '0KB' to '0MB' 2018-09-22 06:24:41 +08:00
Feng Lee 71c556bb8a Merge branch 'shutdown-policy' of github.com:emqx/emqx into shutdown-policy 2018-09-22 06:20:26 +08:00
Feng Lee 05a5ad0f8c
Use '0MB' to configure size of force_shutdown_policy 2018-09-22 06:14:43 +08:00
Feng Lee 29787d8945
Use '0MB' to configure bytes of force_gc_policy 2018-09-22 06:08:53 +08:00
Feng Lee ee7a7e2479
Fix typo 2018-09-22 06:05:29 +08:00
Feng Lee 33f9e895ad
Merge branch 'emqx30' into more-gc-enforcement-policies 2018-09-22 05:52:41 +08:00
Feng Lee fbac9ce43e Improve the foce_gc_policy config. 2018-09-22 05:42:38 +08:00
spring2maz b61615323b Move shutdown policy config to zone configs 2018-09-21 18:58:18 +02:00
spring2maz f70d16e387 Add a test case to cover timeout message flush in emqx_misc 2018-09-21 18:58:18 +02:00
spring2maz 6fca651a84 Add connection/session shutdown policy
The hibernation behaviour is also changed (implicitly) in this commit:
Prior to this change, connection/session always hibernates after
the stats timer expires regardless of messages in mailbox.
After this commit, connection/session process only goes to hibernate
when the timer expires AND there is nothing left in the mailbox to
process
2018-09-21 18:58:18 +02:00