~clint-fewbar/ubuntu/precise/rabbitmq-server/fixed-upstream-tag

« back to all changes in this revision

Viewing changes to src/rabbit_types.erl

  • Committer: Elliot Murphy
  • Date: 2010-11-30 15:12:51 UTC
  • mfrom: (0.2.9 upstream)
  • Revision ID: elliot@elliotmurphy.com-20101130151251-ziiiaf3kbomv3yse
Tags: 2.2.0-0ubuntu1
* New upstream release, fixes FTBFS for 2.1.1-1ubuntu1
  - fix issue that causes cross-cluster communication to
    deadlock after sustained cluster activity
  - fix queue memory leak when using the management plugin
    or other consumers of queue statistics
  - brokers started with rabbitmq_multi.bat are now restartable
  - clustering reset no longer destroys installed plugins
  - fix race condition between queue declaration and connection
    termination that causes spurious noproc errors to appear
    in the log
  - fix memory leak when long-running channels consume and
    cancel on many queues
  - queue.declare and exchange.declare raise precondition_failed
    rather than not_allowed when attempting to redeclare a queue
    or exchange with parameters different than those currently
    known to the broker
  - automatic, lossless upgrade to new versions of RabbitMQ
    (when not clustered)
  - support per-queue message TTL. See:
    http://www.rabbitmq.com/extensions.html#queue-ttl
  - the volume of pending acks is now bounded by disk space rather
    than by memory
  - store passwords as hashes
  - allow server properties to be configured in the RabbitMQ
    config file
  - SSL connections are listed as such by rabbitmqctl
  - simplify permission configuration by removing the client
    permission scope
  - improve performance of message routing
  - removed support for basic.recover with requeue=false
  - remove build-time dependency on OTP source to allow users to
    build without the OTP source present
  - eliminate all valid dialyzer errors

Show diffs side-by-side

added added

removed removed

Lines of Context:
35
35
 
36
36
-ifdef(use_specs).
37
37
 
38
 
-export_type([txn/0, maybe/1, info/0, info_key/0, message/0, basic_message/0,
 
38
-export_type([txn/0, maybe/1, info/0, infos/0, info_key/0, info_keys/0,
 
39
              message/0, basic_message/0,
39
40
              delivery/0, content/0, decoded_content/0, undecoded_content/0,
40
 
              unencoded_content/0, encoded_content/0, vhost/0, ctag/0,
41
 
              amqp_error/0, r/1, r2/2, r3/3, listener/0,
 
41
              unencoded_content/0, encoded_content/0, message_properties/0,
 
42
              vhost/0, ctag/0, amqp_error/0, r/1, r2/2, r3/3, listener/0,
42
43
              binding/0, binding_source/0, binding_destination/0,
43
44
              amqqueue/0, exchange/0,
44
45
              connection/0, protocol/0, user/0, ok/1, error/1, ok_or_error/1,
88
89
                txn       :: maybe(txn()),
89
90
                sender    :: pid(),
90
91
                message   :: message()}).
 
92
-type(message_properties() ::
 
93
        #message_properties{expiry :: pos_integer() | 'undefined'}).
91
94
 
92
95
%% this is really an abstract type, but dialyzer does not support them
93
96
-type(txn() :: rabbit_guid:guid()).
94
97
 
95
98
-type(info_key() :: atom()).
 
99
-type(info_keys() :: [info_key()]).
 
100
 
96
101
-type(info() :: {info_key(), any()}).
 
102
-type(infos() :: [info()]).
97
103
 
98
104
-type(amqp_error() ::
99
105
      #amqp_error{name        :: rabbit_framing:amqp_exception(),
141
147
 
142
148
-type(connection() :: pid()).
143
149
 
144
 
-type(protocol() :: 'rabbit_framing_amqp_0_8' | 'rabbit_framing_amqp_0_9_1').
 
150
-type(protocol() :: rabbit_framing:protocol()).
145
151
 
146
152
-type(user() ::
147
 
      #user{username :: rabbit_access_control:username(),
148
 
            password :: rabbit_access_control:password(),
149
 
            is_admin :: boolean()}).
 
153
      #user{username      :: rabbit_access_control:username(),
 
154
            password_hash :: rabbit_access_control:password_hash(),
 
155
            is_admin      :: boolean()}).
150
156
 
151
157
-type(ok(A) :: {'ok', A}).
152
158
-type(error(A) :: {'error', A}).