From f3ea0395506e7e80f9efb53d8c96c28bd288a066 Mon Sep 17 00:00:00 2001 From: Anders Svensson Date: Mon, 1 Oct 2012 09:52:49 +0200 Subject: Document service_opt() restrict_connections Configuration will allow relaxation of the guard against multiple transport connections to the same peer. --- lib/diameter/doc/src/diameter.xml | 42 +++++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) (limited to 'lib/diameter/doc/src') diff --git a/lib/diameter/doc/src/diameter.xml b/lib/diameter/doc/src/diameter.xml index 161fd94d5a..b7936dbacc 100644 --- a/lib/diameter/doc/src/diameter.xml +++ b/lib/diameter/doc/src/diameter.xml @@ -375,10 +375,15 @@ is meant in the sense of eval([E|A]).

-Beware of using fun expressions of the form fun Name/Arity (not -fun Mod:Name/Arity) in situations in which the fun is not short-lived +Beware of using fun expressions of the form fun Name/Arity in +situations in which the fun is not short-lived and code is to be upgraded at runtime since any processes retaining -such a fun will have a reference to old code.

+such a fun will have a reference to old code. +In particular, such a value is typically inappropriate in +configuration passed to start_service/2 or +add_transport/2.

@@ -699,6 +704,35 @@ the application's dictionary file.

+{restrict_connections, false + | node + | nodes + | [node()] + | diameter:evaluable()} + +

+Specifies the degree to which multiple transport connections to the +same peer are accepted by the service.

+ +

+If type [node()] then a connection is rejected if another already +exists on any of the specified nodes. +Values of type false, node, nodes or +diameter:evaluable() are equivalent to values [], +[node()], [node()|nodes()] and the evaluated value, +respectively, evaluation of each expression taking place whenever a +new connection is to be established. +Note that false allows an unlimited number of connections to be +established with the same peer.

+ +

+Multiple connections are independent and governed +by their own peer and watchdog state machines.

+ +

+Defaults to nodes.

+
+ {sequence, {H,N} | diameter:evaluable()} @@ -879,7 +913,7 @@ reconnection attempts, as required by RFC 3539.

For a listening transport, the timer specifies the time after which a previously connected peer will be forgotten: a connection after this time is regarded as an initial connection rather than a reestablishment, -causing the RFC 3539 state machine to pass to state OPEN rather than +causing the RFC 3539 state machine to pass to state OKAY rather than REOPEN. Note that these semantics are not goverened by the RFC and that a listening transport's reconnect_timer should be greater -- cgit v1.2.3