summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* rabbit_misc: Remove now_ms/0 and now_to_ms/1Jean-Sébastien Pédron2015-08-051-12/+0
| | | | References #233.
* Replace os:timestamp() with os:system_time(milli_seconds)Jean-Sébastien Pédron2015-08-054-8/+17
| | | | | | | | | | | | | | It will require all consumers of eg. events to be updated. But this is a good occasion anyway to change the exposed timestamp format to something pushed by the new Time API. Comparisons and calculations are much simpler because the new format is a simple integer. The resolution is a millisecond, not a microsecond, because current consumers of these timestamps do calculations in milliseconds. References #233.
* GM: Convert the testsuite to use `time_compat`Jean-Sébastien Pédron2015-08-052-8/+13
| | | | References #233.
* rabbit_node_monitor: Rework `global` hang workaroundJean-Sébastien Pédron2015-08-051-11/+15
| | | | | | | | | | | Up-to and including Erlang 17, `global` would use `erlang:now()` to tag messages in the process dictionary. In Erlang 18.0, it uses a unique integer, so we can't use this value to determine for how long messages are stuck in the dictionary. We now do two snapshots of the dictionary and compare them. References #233.
* pg2_fixed: Use erlang:system_time(micro_seconds) to pick a "random" nodeJean-Sébastien Pédron2015-08-051-2/+2
| | | | References #233.
* Use os:system_time() when the time is exposedJean-Sébastien Pédron2015-08-054-8/+8
| | | | | | ... or compared to time values from outside. References #233.
* Use os:timestamp() to get a non-unique timestampJean-Sébastien Pédron2015-08-052-2/+2
| | | | References #233.
* Use monotonic_time() to compute elapsed timeJean-Sébastien Pédron2015-08-0510-55/+66
| | | | | | | | | | | | | | | | | ... not `erlang:now()` (deprecated) or `os:timestamp()` (which could go backward). file_handle_cache: While here, change the LRU tree key from `erlang:now()` to a combination of the monotonic time and the handle reference (which was the value in the tree previously). This is required as the monotonic time doesn't increase strictly: two subsequent calls could return the same time, leading to non-unique key. We could use unique_integer([monotonic]) but it's a bit heavy weight just to keep a rough order of opened files. So now, files sharing the same age are arbitrary "sorted" by their reference. References #233.
* Use phash2() and the new Time API as a random seedJean-Sébastien Pédron2015-08-055-8/+14
| | | | References #233.
* Add `time_compat` moduleJean-Sébastien Pédron2015-08-051-0/+305
| | | | | | | | | This module, obtained from Erlang 18.0 ERTS examples, allows to use the new Time and Time Correction API introduced in Erlang 18.0 and fallback to the old API (the deprecated `erlang:now()`) when running on older Erlang. References #233.
* Merge branch 'rabbitmq-server-250'Jean-Sébastien Pédron2015-08-052-4/+4
|\
| * RPM/deb: Depend on Erlang R16B03Jean-Sébastien Pédron2015-08-052-4/+4
| | | | | | | | References #250.
* | Merge branch 'stable'Jean-Sébastien Pédron2015-08-051-0/+9
|\ \
| * \ Merge pull request #253 from rabbitmq/rabbitmq-server-251Jean-Sébastien Pédron2015-08-051-0/+9
| |\ \ | | | | | | | | Memory monitor: Log a warning if a 32-bit version of Erlang is used
| | * | Memory monitor: Log a warning if a 32-bit version of Erlang is usedJean-Sébastien Pédron2015-08-051-0/+9
| |/ / | | | | | | | | | Fixes #251.
* | | Merge branch 'rabbitmq-server-250'Jean-Sébastien Pédron2015-08-041-1/+1
|\ \ \ | | |/ | |/|
| * | Require Erlang R16B03, not R16B03-1Jean-Sébastien Pédron2015-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Erlang R16B03 is the version provided with Ubuntu 14.04 LTS and CentOS 7. This should avoid some pain to those users. However, we will highly recommend Erlang 17.0 for any serious TLS deployment. References #250.
* | | Merge pull request #252 from rabbitmq/rabbitmq-server-250Jean-Sébastien Pédron2015-08-042-8/+21
|\ \ \ | |/ / | | | Require Erlang R16B03-1
| * | Require Erlang R16B03-1Jean-Sébastien Pédron2015-08-042-8/+21
|/ / | | | | | | Fixes #250.
* | Merge branch 'rabbitmq-server-121'Michael Klishin2015-08-049-3/+384
|\ \
| * | Renames queue-master-location header to x-queue-master-locatorAyanda Dube2015-08-033-16/+16
| | | | | | | | | | | | | | | | | | Renames rabbit.queue_master_location config key to rabbit.queue_master_locator References #121
| * | Adds policy validation tests for queue master locationAyanda Dube2015-07-231-0/+16
| | | | | | | | | | | | References #121
| * | Updates coding styleAyanda Dube2015-07-171-2/+3
| | | | | | | | | | | | References #121
| * | Adds queue_master_locator class moduleAyanda Dube2015-07-151-1/+2
| | | | | | | | | | | | References #121
| * | Moves callback execution to one placeAyanda Dube2015-07-151-21/+26
| | | | | | | | | | | | | | | | | | Renames functions References #121
| * | Checks if module existsAyanda Dube2015-07-151-1/+5
| | | | | | | | | | | | References #121
| * | Takes queue name from #binding.destinationAyanda Dube2015-07-151-2/+5
| | | | | | | | | | | | References #121
| * | Removes temp variableAyanda Dube2015-07-151-3/+1
| | | | | | | | | | | | References #121
| * | Simplifies min-masters helper functionsAyanda Dube2015-07-131-18/+5
| | | | | | | | | | | | References #121
| * | Coding style and header updates, #121Ayanda Dube2015-07-096-73/+67
| | |
| * | Change min-masters calculationAyanda Dube2015-07-086-198/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove validate_policy callback from queue location behaviour Create seperate queue location policy validation module Delete function, delay_ms/1. Unused Remove functions not used by other modules from export Update coding style and header to GoPivotal Inc standards References #121.
| * | Delete round robin callback. Not supported.Ayanda Dube2015-07-071-61/+0
| | | | | | | | | | | | References #121
| * | Initial commit #121Ayanda Dube2015-07-077-2/+414
| | |
* | | Merge pull request #247 from rabbitmq/rabbitmq-server-246Michael Klishin2015-07-313-9/+89
|\ \ \ | | | | | | | | Support the new `ssl:connection_information/{1,2}` API
| * | | Support the new `ssl:connection_information/{1,2}` APIJean-Sébastien Pédron2015-07-313-9/+89
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A new module, `ssl_compat`, is added. It provides a wrapper around `ssl:connection_information/{1,2}` which is introduced in Erlang 18.0. If this API is unavailable, it falls back to the deprecated `ssl:connection_info/1`. Use this module in `rabbit_net:ssl_info/1`. As a consequence, the return value changes, so update `rabbit_reader:ssl_info/2` accordingly. Fixes #246.
* | | Merge branch 'stable'Jean-Sébastien Pédron2015-07-302-9/+13
|\ \ \ | | |/ | |/|
| * | gm: Remove an unused variable in terminate/2Jean-Sébastien Pédron2015-07-301-2/+1
| | | | | | | | | | | | The variable was left unused after the fix to #224.
| * | Merge pull request #243 from Jakauppila/rabbitmq-server-243Michael Klishin2015-07-291-7/+12
| |\ \ | | | | | | | | Fixes a logic problem with NODE_IP_ADDRESS and NODE_PORT in rabbitmq-env.bat.
| | * | Fixes a logic problem with NODE_IP_ADDRESS and NODE_PORT in rabbitmq-env.bat.Jared Kauppila2015-07-291-7/+12
| | | | | | | | | | | | Fixes the logic for NODE_IP_ADDRESS and NODE_PORT. First, check for the existence of the environment variable, then the definition if set via conf file, then proceed with the original logic on setting the IP/Port variables.
* | | | Merge branch 'stable'Michael Klishin2015-07-290-0/+0
|\ \ \ \ | |/ / /
| * | | Missing a backslashJared Kauppila2015-07-291-1/+1
| | | | | | | | | | | | Added a missing backslash.
| * | | Adding quotes to the !RABBITMQ_CONF_ENV_FILE! callJared Kauppila2015-07-291-1/+1
| | | | | | | | | | | | Added quotes around the call for the !RABBITMQ_CONF_ENV_FILE! file.
| * | | Modify the default path of RABBITMQ_CONF_ENV_FILE.Jared Kauppila2015-07-291-1/+1
| |/ / | | | | | | Added the prefix `RABBITMQ_` to `CONF_ENV_FILE` since it can't be overridden from the file anyways. Updated the default path to `!RABBITMQ_BASE!` so it'll default to that path if only the Base is overridden or go to the same `!APPDATA!` path if not.
* | | Merge pull request #240 from Jakauppila/rabbitmq-server-239Michael Klishin2015-07-292-2/+2
|\ \ \ | | | | | | | | Modify the default path of RABBITMQ_CONF_ENV_FILE within rabbitmq-defaults.bat
| * | | Missing a backslashJared Kauppila2015-07-291-1/+1
| | | | | | | | | | | | Added a missing backslash.
| * | | Adding quotes to the !RABBITMQ_CONF_ENV_FILE! callJared Kauppila2015-07-291-1/+1
| | | | | | | | | | | | Added quotes around the call for the !RABBITMQ_CONF_ENV_FILE! file.
| * | | Modify the default path of RABBITMQ_CONF_ENV_FILE.Jared Kauppila2015-07-291-1/+1
|/ / / | | | | | | Added the prefix `RABBITMQ_` to `CONF_ENV_FILE` since it can't be overridden from the file anyways. Updated the default path to `!RABBITMQ_BASE!` so it'll default to that path if only the Base is overridden or go to the same `!APPDATA!` path if not.
* | | Merge branch 'stable'Michael Klishin2015-07-291-6/+41
|\ \ \ | |/ /
| * | Merge branch 'rabbitmq-server-224' into stableMichael Klishin2015-07-291-6/+41
| |\ \
| | * | GM: Remove debug messages added in 08f25ec6Jean-Sébastien Pédron2015-07-291-23/+7
| | | | | | | | | | | | | | | | References #224.