| Commit message (Collapse) | Author | Age | Files | Lines |
| |\ |
|
| | |
| |
| |
| |
| | |
They are not meant to be used by the Core. Their goal is to simplify the
development of plugins which must support RabbitMQ 3.5.x and 3.6.x+.
|
| |\ \ |
|
| | | |
| | |
| | |
| | | |
... but lists:nth/2 takes a position in the range 1..Length.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
erlang:monotonic_time() does not strictly increase: two subsequent calls
can return the same value.
References #233.
|
| |\ \ \
| | |/
| |/| |
|
| | |\ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The only reason for the script to terminate is that RabbitMQ exited. By
trying to stop it again in the EXIT signal handler, we could stop a
newer instance of RabbitMQ. This caused the testsuite to fail in an
unexpected way.
References #234.
|
| | | | |
| | | |
| | | |
| | | | |
... ie. wait for the process to actually exit.
|
| |\ \ \ \
| |/ / / |
|
| | |\ \ \
| | |/ /
| | | | |
rabbitmq-server: Catch SIG{HUP,INT,TERM,TSTP} and exit gracefully
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is only done when RabbitMQ runs in the foreground and when the
Erlang shell is disabled ($RABBITMQ_ALLOW_INPUT is unset).
This should be useful to Docker where the service runs as PID 1.
Fixes #234.
|
| |\ \ \
| | |/
| |/| |
Support the new Time API in Erlang 18.0
|
| | | |
| | |
| | |
| | | |
References #233.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
| | |
| | |
| | | |
References #233.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
| | |
| | |
| | | |
References #233.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
... or compared to time values from outside.
References #233.
|
| | | |
| | |
| | |
| | | |
References #233.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
... 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.
|
| | | |
| | |
| | |
| | | |
References #233.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| |\ \ \
| | |/
| |/| |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix the reported warning in `credit_flow.erl` and `rabbit_table.erl`.
This is the default setting in erlang.mk, so fixing this directly in
RabbitMQ will ease future work on erlang.mk or Rebar.
|
| |\ \ \
| |_|/
|/| | |
Priority queue: Fix a crash when querying 'head_message_timestamp'
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before the fix, the code would consider it an integer which could be
summed. It crashed if the head message had no timestamp at all (the
underlying queue returned '').
Now, we have a special case, exactly like 'backing_queue_status'. The
code first finds a priority with queued messages, then it queries the
underlying queue for the 'head_message_timestamp'.
Fixes #245.
|
| |\ \ |
|
| | | |
| | |
| | |
| | | |
References #250.
|
| |\ \ \
| | |/
| |/| |
|
| | |\ \
| | | |
| | | | |
Memory monitor: Log a warning if a 32-bit version of Erlang is used
|
| | |/ /
| | |
| | |
| | | |
Fixes #251.
|
| |\ \ \
| | |/
| |/| |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| |\ \ \
| |/ /
| | | |
Require Erlang R16B03-1
|
| |/ /
| |
| |
| | |
Fixes #250.
|
| |\ \ |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Renames rabbit.queue_master_location config key to rabbit.queue_master_locator
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Renames functions
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
| | |
| | |
| | | |
References #121
|
| | | | |
|