summaryrefslogtreecommitdiff
path: root/TAO/tests/ForwardOnceUponException/README
blob: 4cdcc019b0179a06ac83dc6a8b2b7e50013c4aa4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/**



@page ForwardOnceOnException Test README File

	This is test for feature of request forwarding ONCE when client
	receives OBJECT_NOT_EXIST, COMM_FAILURE, TRANSIENT or INV_OBJREF
	exceptions from server. The forward once feature defaults to be off.
	They can be enabled and disabled by -ORBForwardOnceOnObjectNotExist
	-ORBForwardOnceOnCommFailure, -ORBForwardOnceOnTransient and
	-ORBForwardOnceOnInvObjref options with value 0(disable) and 1(enable).

	The servant implementation is made to raise the exceptions.
	This is	to simulate the server exception reply regardless the actual
	meaning of the exceptions. The test also takes advantage of the
	IORTable facilities in TAO to create a simple corbaloc IOR, TAO
	always responds with a LOCATION_FORWARD message when a request is
	made for an object in the IORTable. This would make the stub have the
	forward address upon receiving the exceptions so it can perform the
	forwarding.

	TAO defaults to forwarding request upon COMM_FAILURE and TRANSIENT
	exceptions. With forwarding once feature enabled, the client will
	catch the exceptions and servant should be called twice for each
	request, otherwise, the request will be looping between server and
	client.

	TAO defaults to not forwarding request upon OBJECT_NOT_EXIST and
	INV_OBJREF exceptions from server so the client should catch the exception
	and servant should be called once for each request. If the forwarding
	once feature is on, the client should catch the exception and servant
	should be called twice.

	To execute the test simply run:

$ ./run_test.pl

	the script returns 0 on success and non-zero on failures.

*/