summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/rabbit.hrl1
-rw-r--r--packaging/RPMS/Fedora/rabbitmq-server.spec3
-rw-r--r--packaging/debs/Debian/debian/changelog6
-rw-r--r--packaging/macports/Portfile.in7
-rwxr-xr-xpackaging/macports/make-port-diff.sh27
-rw-r--r--src/rabbit.erl2
-rw-r--r--src/rabbit_amqqueue.erl2
-rw-r--r--src/rabbit_channel.erl12
-rw-r--r--src/rabbit_memory_monitor.erl3
-rw-r--r--src/rabbit_mnesia.erl18
10 files changed, 65 insertions, 16 deletions
diff --git a/include/rabbit.hrl b/include/rabbit.hrl
index d4327980be..5073d3be53 100644
--- a/include/rabbit.hrl
+++ b/include/rabbit.hrl
@@ -79,6 +79,7 @@
-type(maybe(T) :: T | 'none').
-type(erlang_node() :: atom()).
+-type(node_type() :: disc_only | disc | ram | unknown).
-type(ssl_socket() :: #ssl_socket{}).
-type(socket() :: port() | ssl_socket()).
-type(thunk(T) :: fun(() -> T)).
diff --git a/packaging/RPMS/Fedora/rabbitmq-server.spec b/packaging/RPMS/Fedora/rabbitmq-server.spec
index 00066a15f7..c5950be4f4 100644
--- a/packaging/RPMS/Fedora/rabbitmq-server.spec
+++ b/packaging/RPMS/Fedora/rabbitmq-server.spec
@@ -128,6 +128,9 @@ done
rm -rf %{buildroot}
%changelog
+* Tue Jun 15 2010 Matthew Sackman <matthew@rabbitmq.com> 1.8.0-1
+- New Upstream Release
+
* Mon Feb 15 2010 Matthew Sackman <matthew@lshift.net> 1.7.2-1
- New Upstream Release
diff --git a/packaging/debs/Debian/debian/changelog b/packaging/debs/Debian/debian/changelog
index 63b50749e1..3c0d6937ea 100644
--- a/packaging/debs/Debian/debian/changelog
+++ b/packaging/debs/Debian/debian/changelog
@@ -1,3 +1,9 @@
+rabbitmq-server (1.8.0-1) intrepid; urgency=low
+
+ * New Upstream Release
+
+ -- Matthew Sackman <matthew@rabbitmq.com> Tue, 15 Jun 2010 12:48:48 +0100
+
rabbitmq-server (1.7.2-1) intrepid; urgency=low
* New Upstream Release
diff --git a/packaging/macports/Portfile.in b/packaging/macports/Portfile.in
index 153727be9a..188a81c00a 100644
--- a/packaging/macports/Portfile.in
+++ b/packaging/macports/Portfile.in
@@ -4,9 +4,8 @@
PortSystem 1.0
name rabbitmq-server
version @VERSION@
-revision 1
categories net
-maintainers rabbitmq.com:tonyg
+maintainers paperplanes.de:meyer rabbitmq.com:tonyg openmaintainer
platforms darwin
description The RabbitMQ AMQP Server
long_description \
@@ -23,8 +22,8 @@ checksums \
sha1 @sha1@ \
rmd160 @rmd160@
-depends_build port:erlang port:xmlto port:libxslt
-depends_run port:erlang
+depends_lib port:erlang
+depends_build port:xmlto port:libxslt
platform darwin 7 {
depends_build-append port:py25-simplejson
diff --git a/packaging/macports/make-port-diff.sh b/packaging/macports/make-port-diff.sh
new file mode 100755
index 0000000000..3eb1b9f589
--- /dev/null
+++ b/packaging/macports/make-port-diff.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+# This script grabs the latest rabbitmq-server bits from the main
+# macports subversion repo, and from the rabbitmq.com macports repo,
+# and produces a diff from the former to the latter for submission
+# through the macports trac.
+
+set -e
+
+dir=/tmp/$(basename $0).$$
+mkdir -p $dir/macports $dir/rabbitmq
+
+# Get the files from the macports subversion repo
+cd $dir/macports
+svn checkout http://svn.macports.org/repository/macports/trunk/dports/net/rabbitmq-server/ 2>&1 >/dev/null
+
+# Clear out the svn $id tag
+sed -i -e 's|^# \$.*$|# $Id$|' rabbitmq-server/Portfile
+
+# Get the files from the rabbitmq.com macports repo
+cd ../rabbitmq
+curl -s http://www.rabbitmq.com/releases/macports/net/rabbitmq-server.tgz | tar xzf -
+
+cd ..
+diff -Naur --exclude=.svn macports rabbitmq
+cd /
+rm -rf $dir
diff --git a/src/rabbit.erl b/src/rabbit.erl
index 09a190148f..7576e46cef 100644
--- a/src/rabbit.erl
+++ b/src/rabbit.erl
@@ -193,7 +193,7 @@
-spec(rotate_logs/1 :: (file_suffix()) -> 'ok' | {'error', any()}).
-spec(status/0 :: () ->
[{running_applications, [{atom(), string(), string()}]} |
- {nodes, [erlang_node()]} |
+ {nodes, [{node_type(), [erlang_node()]}]} |
{running_nodes, [erlang_node()]}]).
-spec(log_location/1 :: ('sasl' | 'kernel') -> log_location()).
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index 3c9c41bdeb..eebcfcb9a9 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -110,7 +110,7 @@
-spec(internal_delete/1 :: (queue_name()) -> 'ok' | not_found()).
-spec(maybe_run_queue_via_backing_queue/2 :: (pid(), (fun ((A) -> A))) -> 'ok').
-spec(update_ram_duration/1 :: (pid()) -> 'ok').
--spec(set_ram_duration_target/2 :: (pid(), number()) -> 'ok').
+-spec(set_ram_duration_target/2 :: (pid(), number() | 'infinity') -> 'ok').
-spec(set_maximum_since_use/2 :: (pid(), non_neg_integer()) -> 'ok').
-spec(on_node_down/1 :: (erlang_node()) -> 'ok').
-spec(pseudo_queue/2 :: (binary(), pid()) -> amqqueue()).
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index 3dfc026b99..3bb015ece8 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -444,13 +444,9 @@ handle_method(#'basic.publish'{exchange = ExchangeNameBin,
routed ->
ok;
unroutable ->
- %% FIXME: 312 should be replaced by the ?NO_ROUTE
- %% definition, when we move to >=0-9
- ok = basic_return(Message, WriterPid, 312, <<"unroutable">>);
+ ok = basic_return(Message, WriterPid, no_route);
not_delivered ->
- %% FIXME: 313 should be replaced by the ?NO_CONSUMERS
- %% definition, when we move to >=0-9
- ok = basic_return(Message, WriterPid, 313, <<"not_delivered">>)
+ ok = basic_return(Message, WriterPid, no_consumers)
end,
{noreply, case TxnKey of
none -> State;
@@ -951,7 +947,9 @@ binding_action(Fun, ExchangeNameBin, QueueNameBin, RoutingKey, Arguments,
basic_return(#basic_message{exchange_name = ExchangeName,
routing_key = RoutingKey,
content = Content},
- WriterPid, ReplyCode, ReplyText) ->
+ WriterPid, Reason) ->
+ {_Close, ReplyCode, ReplyText} =
+ rabbit_framing:lookup_amqp_exception(Reason),
ok = rabbit_writer:send_command(
WriterPid,
#'basic.return'{reply_code = ReplyCode,
diff --git a/src/rabbit_memory_monitor.erl b/src/rabbit_memory_monitor.erl
index 91e97ffe49..e78b59f16e 100644
--- a/src/rabbit_memory_monitor.erl
+++ b/src/rabbit_memory_monitor.erl
@@ -90,7 +90,8 @@
-spec(update/0 :: () -> 'ok').
-spec(register/2 :: (pid(), {atom(),atom(),[any()]}) -> 'ok').
-spec(deregister/1 :: (pid()) -> 'ok').
--spec(report_ram_duration/2 :: (pid(), float() | 'infinity') -> number()).
+-spec(report_ram_duration/2 :: (pid(), float() | 'infinity') ->
+ number() | 'infinity').
-spec(stop/0 :: () -> 'ok').
-endif.
diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl
index a0b7aa4e7f..d4b299435d 100644
--- a/src/rabbit_mnesia.erl
+++ b/src/rabbit_mnesia.erl
@@ -47,7 +47,8 @@
-ifdef(use_specs).
--spec(status/0 :: () -> [{'nodes' | 'running_nodes', [erlang_node()]}]).
+-spec(status/0 :: () -> [{'nodes', [{node_type(), [erlang_node()]}]} |
+ {'running_nodes', [erlang_node()]}]).
-spec(dir/0 :: () -> file_path()).
-spec(ensure_mnesia_dir/0 :: () -> 'ok').
-spec(init/0 :: () -> 'ok').
@@ -64,7 +65,20 @@
%%----------------------------------------------------------------------------
status() ->
- [{nodes, mnesia:system_info(db_nodes)},
+ [{nodes, case mnesia:system_info(is_running) of
+ yes -> [{Key, Nodes} ||
+ {Key, CopyType} <- [{disc_only, disc_only_copies},
+ {disc, disc_copies},
+ {ram, ram_copies}],
+ begin
+ Nodes = mnesia:table_info(schema, CopyType),
+ Nodes =/= []
+ end];
+ no -> case mnesia:system_info(db_nodes) of
+ [] -> [];
+ Nodes -> [{unknown, Nodes}]
+ end
+ end},
{running_nodes, mnesia:system_info(running_db_nodes)}].
init() ->