Commit Graph

620 Commits

Author SHA1 Message Date
Feng 710890dd22 relx 2016-07-21 09:31:14 +08:00
Feng 2e200f253f 2.0 - erlang.mk to replace rebar 2016-07-19 17:46:05 +08:00
Feng 03d6710b60 gen_conf to improve the configuration of emqttd broker 2016-07-19 16:49:30 +08:00
Feng ca44fd4031 Merge branch 'master' into plus 2016-07-16 21:56:37 +08:00
Feng 61b2ab48ad merge emq10 2016-07-16 21:55:02 +08:00
Frank Feng 9f509c3d13 optimize the procedures that retrieve the Broker version and Borker description in the tick timer 2016-07-15 21:45:58 +08:00
Feng a362b96b6b add 'bin/emqttd_ctl users list' command 2016-07-06 15:23:45 +08:00
Feng 3a43d2b41f WSLOG 2016-06-30 23:24:02 +08:00
Feng Lee c926964b8c Merge branch 'master' into emq10 2016-06-30 14:48:07 +08:00
Feng Lee 686574913c fix issue #561 - websocket client's process may leak when no mqtt packets received 2016-06-30 14:40:07 +08:00
Feng Lee 02a17a8e96 Add emqttd_ws_client_sup 2016-06-30 14:33:54 +08:00
Feng Lee 61a64ea0b0 send(Packet) 2016-06-28 16:44:52 +08:00
Feng Lee 842df63605 merge master 2016-06-28 11:27:52 +08:00
Feng Lee 2cae8e284a {simple_one_for_one, 0, 1} 2016-06-27 09:57:07 +08:00
J Phani Mahesh 9181c273ed enhance emqttd_client ratelimit handling
This allows rate limits on a client to be queried
and changed dynamically (possibly by plugins), by
exposing additional apis.

`set_rate_limit/2` expects a Ratelimit tuple module of
the form `{module, record}` where module implements
`check(NumBytes, RlTuple) -> {TimeToPause, NewRlTuple}`

It is recommended that the rate limit module also
implement `new` to allow creating new RateLimit records.
See `esockd_ratelimit` for a reference implementation.
2016-06-23 10:34:37 +05:30
Feng Lee b877cec208 Merge branch 'issue#599' into emq10 2016-06-21 11:35:25 +08:00
Feng Lee 0aa8a82e59 ensure the mqtt listener is started successfully 2016-06-21 11:33:23 +08:00
Feng Lee fe3becbf9b Fix issue#599 - Reject empty clientId with non-clean session 2016-06-21 11:29:59 +08:00
Feng Lee 83b25fe84a 2.0 2016-06-20 12:18:49 +08:00
Feng Lee bf2e1c39c3 1.1.2 2016-06-18 14:10:22 +08:00
Feng eaf254e919 Merge branch 'master' into plus 2016-06-05 12:51:35 +08:00
Feng 0dea9d0bb0 1.1.1 2016-06-05 12:37:19 +08:00
Feng 8a908b43d5 Fix the incompatible Qos 2016-06-04 12:07:54 +08:00
Feng Lee faa7ae2886 Fix issue#575 2016-06-01 11:52:21 +08:00
Feng Lee b26455a512 ListenOn 2016-05-27 17:32:34 +08:00
Feng Lee b4ac98f9c2 Merge pull request #568 from emqtt/issue#561
GC after a session DOWN
2016-05-26 19:52:02 +08:00
Feng Lee 176b0b64ea GC after a session DOWN 2016-05-26 19:50:08 +08:00
Feng Lee 66d4abce14 1.1 2016-05-23 15:21:13 +08:00
Feng Lee 40264564af esockd_cidr 2016-05-23 15:21:04 +08:00
Feng Lee 820806d4f0 esockd_cidr 2016-05-23 15:20:56 +08:00
Feng Lee e16f8506ef base62 encode/decode 2016-05-17 10:36:09 +08:00
Feng Lee c7ecc0ace0 merge emq10 2016-05-07 10:30:22 +08:00
Feng Lee 3ef099389a 1.1 2016-05-05 18:18:50 +08:00
Feng Lee 6245d24c83 {error, already_existed} 2016-05-05 15:44:36 +08:00
Feng Lee f50efa5813 fix issue#542 2016-05-05 15:36:44 +08:00
Feng dae1cc1f81 1.0.2 release 2016-05-04 01:02:00 +08:00
Feng Lee 76851e58fb atom_to_list(Username) 2016-05-03 18:31:58 +08:00
Feng Lee 9b71f9f6c0 new plugin mechanism 2016-05-03 18:02:41 +08:00
Feng Lee 3aef962a07 2.0 2016-05-02 22:31:28 +08:00
Feng Lee 1e89fcec1e Merge pull request #537 from emqtt/issue#534
Fix issue#534 - Add './bin/emqttd_ctl vm ports' CLI
2016-04-29 00:23:39 +08:00
Feng Lee 17d1598688 Fix issue#534 - Add './bin/emqttd_ctl vm ports' CLI 2016-04-29 00:23:57 +08:00
Feng f5adafe9e2 fix issue #535 2016-04-29 00:17:07 +08:00
Feng 4d8f7ffb88 1.0.1 2016-04-16 14:38:22 +08:00
Feng a0319d9d26 Fix queue dispatch 2016-04-14 18:23:01 +08:00
Feng 31557eba05 1.0 2016-04-13 02:20:44 +08:00
Feng b8a5ff2314 fix issue #503 2016-04-12 20:34:41 +08:00
Feng 3733574105 fix issue #500 2016-04-12 15:11:01 +08:00
Feng b257423730 more test cases for parer 2016-04-12 11:19:55 +08:00
Feng Lee fa67becc3b Merge pull request #499 from callbay/master
matches for the remaining length field in the variable header
2016-04-12 10:12:27 +08:00
Frank Feng d6528886cc matches for the remaining length field in the variable header 2016-04-07 14:33:39 +08:00
Feng a758423a2e fix issue #486 - gen_server2:call/3 to register a client 2016-03-30 19:33:53 +08:00
Feng 4495d61c62 a 2016-03-26 19:01:33 +08:00
Feng fffbd3dd1e hibernate 2016-03-22 18:14:13 +08:00
Feng e88fe8b6ae fix issue #479 2016-03-21 10:08:59 +08:00
Feng 2a16888f07 0.17.1 2016-03-21 09:54:24 +08:00
Feng 467c6307f6 keepalive * 1.25 2016-03-15 00:58:35 +08:00
Feng e08dbf82f6 remove a transaction 2016-03-14 15:48:39 +08:00
Feng 9584f2a990 trans, and stats_timer 2016-03-14 15:47:31 +08:00
Feng 50a11ce6c9 -spec(). 2016-03-14 14:20:10 +08:00
Feng 17f40f458f if_subsciption, async_subscribe 2016-03-14 13:21:35 +08:00
Feng b08bd5a578 retained_message 2016-03-12 16:38:30 +08:00
Feng ba5fcfdfae merge PR#462 2016-03-12 15:55:17 +08:00
Feng e32d85f40a backend and retained_message 2016-03-12 15:39:19 +08:00
Feng 0a9ecf833a export_type 2016-03-12 01:11:06 +08:00
Feng 72d9ed2024 emqttd:publish|subscribe 2016-03-12 00:30:37 +08:00
Feng 978413298d HTTP Publish: support 'topics' parameter 2016-03-11 23:45:03 +08:00
Feng 37fa9a2f9b return ok | {error, any()} 2016-03-11 23:43:41 +08:00
Feng d9d7581013 0.17.0 - Improve the design of Hook, PubSub and Router 2016-03-11 23:42:37 +08:00
Feng faf05eb85a test cases for server, pubsub and router 2016-03-11 23:19:17 +08:00
Feng f1f58818d5 backend_subscription 2016-03-08 13:50:41 +08:00
Feng 0f1347a495 add 'routes' command, improve usage 2016-03-08 13:28:11 +08:00
Feng fb273f0eca disc_copies 2016-03-08 13:27:17 +08:00
Feng 16d488adca emqttd:publish/1 2016-03-08 13:26:46 +08:00
Feng 26655f1ee3 emqttd:publish/1 2016-03-08 13:25:19 +08:00
Feng 73b7de7cb0 emqttd:publish 2016-03-08 13:21:17 +08:00
Feng 67f1e15d4a start_listeners, stop_listeners 2016-03-08 13:20:50 +08:00
Feng ef8cff4cac emqttd:publish/1 2016-03-08 13:19:03 +08:00
Feng 34493b6fec update PRINT_CMD 2016-03-08 13:17:04 +08:00
Feng 52adc66bda move start_listeners/0, stop_listeners/0 to emqttd_app.erl, add publish/subscribe APIs 2016-03-08 13:15:50 +08:00
Frank Feng 9c9633ab27 just to make it more readable 2016-03-05 23:12:25 +08:00
Frank Feng d6b4ff654a add 'sys' flag to message 2016-03-05 21:16:16 +08:00
Feng 652f5f5767 fix issue #450. Print a hint if the auth_username module is not enabled 2016-03-03 11:12:08 +08:00
Feng cf4dfe632f Issue #460 - Timer Tick at interval of (Keepalive * 1.5)/2 2016-03-01 18:59:12 +08:00
Feng d1bb0e04fd fix syntax error 2016-02-28 23:49:10 +08:00
Feng e40775f1f1 fix issue #438 2016-02-21 10:06:14 +08:00
Feng Lee 5695ba178c cli common tests 2016-02-17 23:52:04 +08:00
Feng Lee 369c5e86c5 fix issue #438 - Bridge emqttd broker to another emqttd broker & emqttd to mosquitto bridge 2016-02-17 21:15:34 +08:00
Feng 955d8e37fd router_pool/1 2016-02-16 03:03:16 +08:00
Feng 757d1f5fc5 Merge branch 'master' into 0.16 2016-02-16 02:56:59 +08:00
Feng 6930439158 -compile(export_all) 2016-02-16 02:54:29 +08:00
Feng 8ba6c5bbb6 foreach 2016-02-16 02:17:14 +08:00
Feng e605dcb111 fix spec of wildcard/1 2016-02-16 02:16:55 +08:00
Feng 87a2f2680c rm priority flag 2016-02-16 02:16:30 +08:00
Feng 3d2cb93ebd rm -ifdef(TEST) 2016-02-16 02:16:14 +08:00
Feng 3561680697 rm lager:error log 2016-02-16 02:15:52 +08:00
Feng 9cb0fe3f0a more test cases 2016-02-14 01:50:51 +08:00
Feng dfdad8bcb6 refactor the router and pubsub 2016-02-14 01:48:49 +08:00
Feng 0d21e5c911 fix issue #440 - mqtt_message record: add 'sender' field 2016-02-14 00:35:42 +08:00
Feng 150c103cfa replace emqttd_opts:g/3 with proplists:get_value/3 2016-02-13 18:36:33 +08:00
Feng 541af6256d replace emqttd_opts:g/3 with proplists:get_value/3 2016-02-13 18:36:09 +08:00
Feng 49a979a25e replace emqttd_opts:g/3 with proplists:get_value/3 2016-02-13 18:35:53 +08:00
Feng 1b61ef0856 rm g/2, g/3 2016-02-13 18:35:10 +08:00
Feng 890de0c60a is_queue/1, -ifdef(TEST). 2016-02-13 18:34:28 +08:00
Feng 3c53cf2b09 merge zenmq_trie, zenmq_mnesia, zenmq_boot 2016-02-13 14:26:40 +08:00
Feng bd1e618cc8 rewrite emqttd_node module 2016-02-11 15:55:10 +08:00
Feng 767c4ccc6e fix issue #449 - Improve the CLI of cluster 2016-02-11 15:54:35 +08:00
Feng 44d598fd87 rm reg_name/2, seed_now/0 functions 2016-02-11 15:53:23 +08:00
Feng 89052d8e6e add emqttd_time module, fix comments and format 2016-02-11 15:52:59 +08:00
Feng 1560386ab2 Fix delete/1, add lookup/1 2016-02-11 15:42:29 +08:00
Feng 3f047a1d16 add emqttd_time module 2016-02-11 14:33:42 +08:00
Feng 9dda709aa1 move running_nodes/0 to emqttd_mnesia and improve some functions 2016-02-11 14:31:42 +08:00
Feng a5116c7fa6 emqttd_time to replace emqttd_util 2016-02-11 14:30:08 +08:00
Feng 8aad88e825 fix issue #449 - Improve the design of cluster 2016-02-11 01:42:09 +08:00
Feng e030454466 if only one core, the router will not work 2016-02-06 16:35:33 +08:00
Feng 94c3e69b44 Licensed under the Apache, Version 2.0 2016-02-05 14:26:17 +08:00
Feng 1e852ded91 0.16 - support static subscriptions 2016-02-02 13:36:52 +08:00
Feng 5306463b7e updated copyright 2016-02-01 11:59:44 +08:00
Feng f65676c232 fix plen/2 - return 0 2016-01-25 14:46:30 +08:00
Feng d8c116a502 add now_to_ms/0, now_to_ms/1 functions 2016-01-25 12:59:41 +08:00
Feng 83d64308c5 plen/2 spec 2016-01-24 14:15:34 +08:00
Feng 8934d8ecad stop/1, emqttd:seed_now/0 2016-01-24 13:43:42 +08:00
Feng 0b686da281 iolist_to_binary(Name) 2016-01-24 13:42:59 +08:00
Feng 22a282e39e emqttd:seed_now/0 to replace random:seed(now()) 2016-01-24 13:42:22 +08:00
Feng fb32c509ce -spec stats/1 2016-01-23 22:52:50 +08:00
Feng 4ebdbd75a3 add out/2, plen/1 2016-01-23 22:04:36 +08:00
Feng 166e085fff add client_connected/3 2016-01-21 15:37:25 +08:00
Feng 7193bf4f20 rm bin/1 2016-01-21 12:46:43 +08:00
Feng 4934bf54c0 add passwd_hash/2 api 2016-01-20 15:38:51 +08:00
Feng b5c514b39c fix dispatch 2016-01-20 15:38:24 +08:00
Feng 284abc7388 fix reverse_route stats 2016-01-17 20:03:47 +08:00
Feng 51c5ea1f96 fix route, reverse_route stats 2016-01-17 20:02:44 +08:00
Feng 4f9d429478 fix pubsub, sessions, trace commands 2016-01-17 20:02:13 +08:00
Feng a983361121 fix issue#428 - Username/Password Authentication: support to configure default users 2016-01-17 20:01:36 +08:00
Feng 1cbdc5e9e4 use emqttd:reg_name/2 to replace name/1 2016-01-17 20:00:46 +08:00
Feng 5bfd3a784e setstats after route table changed 2016-01-17 20:00:23 +08:00
Feng 43165a5e8a use emqttd:reg_name/2 to replace name/1 2016-01-17 19:59:33 +08:00
Feng 0a29c8760e add reg_name/2 function 2016-01-17 19:59:05 +08:00
Feng 2544786c56 add_routes([], _Pid) 2016-01-16 10:40:37 +08:00
Feng 21cb2bea6e 2016 2016-01-15 13:43:22 +08:00
Feng b46c8d2f0f Move github wiki to redthedocs 2016-01-14 17:20:01 +08:00
Feng 4e474ee8b9 fix issue #427 - Optimization for Route ETS insertion 2016-01-12 14:10:50 +08:00
Feng 3745d7a24b router pool sup 2016-01-12 14:09:31 +08:00
Feng ba5541c768 Move the aging code to router 2016-01-12 14:02:21 +08:00
Feng 20ede24d83 fix issue #427 - Optimization for Route ETS insertion 2016-01-12 14:01:28 +08:00
Feng 6e3ae6412d -type topic() :: binary(). 2016-01-12 13:58:24 +08:00
Feng 78f2a83a82 0.15 2016-01-07 13:21:14 +08:00
Feng 1809d0960d ~p 2016-01-02 17:01:24 +08:00
Feng 32b1448204 0.14.1 2015-12-28 20:20:24 +08:00
Feng 4a175bfc68 fix spec 2015-12-28 20:18:31 +08:00
Feng 4ec480af0b fix spec 2015-12-28 20:17:18 +08:00
Feng e6e77953f1 delete 2015-12-27 21:56:31 +08:00
Feng 2dd8c3d778 remove trap_exit flag, and fix issue #413 2015-12-23 23:20:05 +08:00
Feng 78dd1f8838 fix issue #413 2015-12-23 22:33:49 +08:00
Feng 6ec5eccd69 fix issue #411 2015-12-17 17:30:49 +08:00
Feng be390d42ac stop 2015-12-17 14:12:45 +08:00
Feng 7ffa25c655 destroy 2015-12-17 14:12:35 +08:00
Feng fe82fde717 subscription 2015-12-17 12:38:13 +08:00
Feng e37b00a9e4 fix subscriptions cli 2015-12-16 11:04:51 +08:00
Feng 7cd5367f3b binary 2015-12-16 11:04:20 +08:00
Feng d3ee464789 topics, subscriptions 2015-12-16 10:22:37 +08:00
Feng b172a78fcd lookup/2, tune_qos 2015-12-16 10:18:28 +08:00
Feng 787a427fda fix load/1 return 2015-12-10 21:30:26 +08:00
Feng ab556b6bda rm subscriptions from sess_info 2015-12-10 16:49:58 +08:00
Feng 11bdcf1017 fix already_exists 2015-12-10 15:55:24 +08:00
Feng 2dd6d160f3 format 2015-12-10 15:04:13 +08:00
Feng 26893c764c serilize 2015-12-10 14:09:05 +08:00
Feng Lee e1e09599ef Merge branch '0.14' of github.com:emqtt/emqttd into 0.14 2015-12-09 15:41:37 +08:00
Feng Lee 05bf24b33b serializer 2015-12-09 15:41:03 +08:00
Feng 00f362fabc publish(To, ... 2015-12-07 21:35:06 +08:00
Feng 3a8ada21e0 dispatch 2015-12-07 21:30:58 +08:00
Feng 3d8e91bc20 comment io:format 2015-12-07 21:30:45 +08:00
Feng 9e0fe19c25 qos 2015-12-07 21:20:35 +08:00
Feng fd6a350d9c dispatch 2015-12-07 21:19:12 +08:00
Feng df5daaac5b dispatch 2015-12-07 21:17:30 +08:00
Feng af02965555 comment start_tracelog 2015-12-07 18:38:07 +08:00
Feng fe69fd95c8 {read_concurrency, true} 2015-12-07 17:12:45 +08:00
Feng 4cde27d724 read_concurrency 2015-12-07 14:33:23 +08:00
Feng 8f22b0ffbc route 2015-12-07 00:22:40 +08:00
Feng f4d09c973d remove mnesia index 2015-12-06 20:32:03 +08:00
Feng c29fd68dd5 storage_properties 2015-12-06 20:30:59 +08:00
Feng a261f3c678 emqtt log 2015-12-06 12:03:05 +08:00
Feng Lee 17896c7e77 fix issue #161 - Feature Request - Log Topics 2015-12-06 11:28:05 +08:00
Feng b0ada8ae56 fmt 2015-12-05 20:06:41 +08:00
Feng e3cd170683 0.14 2015-12-05 15:43:49 +08:00
Feng 855152f653 spec/1 2015-12-05 02:18:06 +08:00
Feng 0c13490092 os:timestamp 2015-12-05 02:13:22 +08:00
Feng 1ca477ffa1 monitors 2015-12-05 02:12:27 +08:00
Feng Lee d6a528e0f7 0.14 refactor 2015-12-04 23:53:42 +08:00
Feng 812779004f new pubsub 2015-12-04 17:36:09 +08:00
Feng cfaa0c5e40 0.14 2015-12-03 22:28:39 +08:00
Feng 4deb96dc91 0.14 2015-12-03 21:17:07 +08:00
Feng 86460cdebc 0.14 2015-12-03 21:15:25 +08:00
Feng 392b008a43 TODO: subscriptions 2015-12-03 13:14:32 +08:00
Feng 80117c1e8a rewrite pubsub, router 2015-12-03 12:56:13 +08:00
Feng db8b7c9d82 0.14 2015-12-02 18:01:51 +08:00
Feng 16f23406a4 0.14 2015-12-02 18:01:26 +08:00
Feng 0b1540f1db comment process_flag(priority, high) 2015-11-28 11:26:53 +08:00
Feng e78d4fc39b fix issue #383 2015-11-27 22:36:12 +08:00
Feng df8414dbdc 0.13.1 2015-11-27 21:01:18 +08:00
Feng 2d1066517f Msg = 2015-11-14 14:44:25 +08:00