summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhuangming <huangminghuang@users.noreply.github.com>2003-10-18 02:26:35 +0000
committerhuangming <huangminghuang@users.noreply.github.com>2003-10-18 02:26:35 +0000
commita0805388c2527c8ee651923ebc2ed60a99710589 (patch)
tree79bfe554b26c7e8e6fd809d86d2ac4ec02e811a8
parent954162f70b791cb01050b0ef211db9ac93876d4d (diff)
downloadATCD-a0805388c2527c8ee651923ebc2ed60a99710589.tar.gz
ChangeLogTag: Fri Oct 17 21:09:30 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
-rw-r--r--TAO/ChangeLog37
-rw-r--r--TAO/orbsvcs/FTRT_Event_Service/Readme45
2 files changed, 62 insertions, 20 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 16b5fa15886..9ee198c664f 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,8 @@
+Fri Oct 17 21:09:30 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
+
+ * orbsvcs/FTRT_Event_Service/Readme
+ Updated the Readme file to provide more detailed information.
+
Fri Oct 17 18:11:20 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
* orbsvcs/tests/Makefile: Changed criteria for building
@@ -6,20 +11,20 @@ Fri Oct 17 18:11:20 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
Fri Oct 17 17:37:05 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
- * orbsvcs/orbsvcs/Makefile.RTCosScheduling:
+ * orbsvcs/orbsvcs/Makefile.RTCosScheduling:
* orbsvcs/orbsvcs/RTCosScheduling.mpc: Fixed dependency problem
for RH71 Static build - Moved directory RTScheduling after
RTSchedulingC(S).cpp in Source_Files section.
-
+
Fri Oct 17 21:17:03 UTC 2003 Kevin Bryan <bryank@cs.uri.edu>
- * orbsvcs/tests/RTCosScheduling/README
- * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Client.dsp
- * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Client_Static.dsp
- * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Server.dsp
- * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Server_Static.dsp
- * orbsvcs/tests/RTCosScheduling/run_test.pl:
- Fixed the Windows files so all the include and library directories are
- there. Update the README file. Fixed a small bug in the run_test.pl.
+ * orbsvcs/tests/RTCosScheduling/README
+ * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Client.dsp
+ * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Client_Static.dsp
+ * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Server.dsp
+ * orbsvcs/tests/RTCosScheduling/RTCosScheduling_Server_Static.dsp
+ * orbsvcs/tests/RTCosScheduling/run_test.pl:
+ Fixed the Windows files so all the include and library directories are
+ there. Update the README file. Fixed a small bug in the run_test.pl.
Fri Oct 17 12:32:53 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
@@ -34,14 +39,14 @@ Fri Oct 17 12:32:53 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
Fri Oct 17 06:52:27 2003 Venkita Subramonian <venkita@cs.wustl.edu>
- * orbsvcs/tests/RTCosScheduling/RTCosScheduling.mpc:
- * orbsvcs/tests/RTCosScheduling/Makefile.RTCosScheduling_Server:
- * orbsvcs/tests/RTCosScheduling/Makefile.RTCosScheduling_Client:
- * orbsvcs/tests/RTCosScheduling/Makefile:
+ * orbsvcs/tests/RTCosScheduling/RTCosScheduling.mpc:
+ * orbsvcs/tests/RTCosScheduling/Makefile.RTCosScheduling_Server:
+ * orbsvcs/tests/RTCosScheduling/Makefile.RTCosScheduling_Client:
+ * orbsvcs/tests/RTCosScheduling/Makefile:
* orbsvcs/tests/RTCosScheduling/Makefile.commonlib: Fixed the mpc
files - added a new project called common which will be built
before client and server. Regenerated the Makefiles. The
- Makefile was not generated using mpc before.
+ Makefile was not generated using mpc before.
Fri Oct 17 12:37:43 UTC 2003 Johnny Willemsen <jwillemsen@remedy.nl>
@@ -58,7 +63,7 @@ Fri Oct 17 07:40:13 UTC 2003 Johnny Willemsen <jwillemsen@remedy.nl>
* orbsvcs/orbsvcs/FtRtEvent/EventChannel/FTEC_ProxySupplier.cpp
* orbsvcs/orbsvcs/FtRtEvent/EventChannel/Replication_Strategy.cpp
Fixed problems in emulated exception case
-
+
Fri Oct 17 01:28:53 2003 Huang-Ming Huang <hh1@cse.wustl.edu>
* orbsvcs/FTRT_Event_Service/Event_Service/FT_EventService.cpp
diff --git a/TAO/orbsvcs/FTRT_Event_Service/Readme b/TAO/orbsvcs/FTRT_Event_Service/Readme
index a31d33bc059..016c80c530c 100644
--- a/TAO/orbsvcs/FTRT_Event_Service/Readme
+++ b/TAO/orbsvcs/FTRT_Event_Service/Readme
@@ -1,12 +1,47 @@
// $Id$
-Fault Tolerant Event Service
+Fault Tolerant Real-time Event Service
+==========================================================================================
+
+Introduction
+--------------
+
+The Fault Tolerant Real-time Event Service provides the fault tolerant capability to the
+TAO Real-time Event Service. Essentially, it allows you to start several event services
+in different machines. These event services form an object group which can be treated as
+a logical event service by clients. The clients only communicate with the primary (leader) of
+the object group. The rest event channels in the object group are called backups. Once the primary
+dies, one of the backups will assume the reponsibility of primary and this process is transparent
+to the clients.
+
+The key to provide fault tolerance to event channels is to replicate the states of primary to its
+backups. There are two kinds of states in the event channels, transient and persistent. A transient
+state in the event channels is the events which are yet to be delivered to the consumers. Those events
+are hard to replicate because the time scale is too small. They might be delivered late or out of
+scope if we tried to replicate the events. However, the subscription information occurs at a suitable
+time scale for replication, and is in fact more essential for the delivery of events since it establishes
+a kind of connectivity from suppliers to consumers. Therefore, we only replicate the subscriptions
+
+Once the primary receives the subscription requests from the clients, it
+will replicate the requests to the backup event channels.In order to provide time bounds on replication,
+we introduce the concept of transaction depth. If we say the transaction depth is n, that means a
+subscription method invocation has to be blocked until the first n replicas complete the subscription
+operation, illustrated by the assured-replicate arc in the figure. Other replicas can get the state
+change via a so called soft-replicate which conceptually means the replication is not assured to
+complete before the subscription operation returns. So, if the soft-replicate fails due to loss
+of the primary, we will have only the assured depth of replication. The clients are allowed to configure
+the transaction depth to tradeoff reliability and responsiveness. Furthermore, it is necessary to
+roll back an operation in some replicas if the transaction depth can not be met. In addition,
+we can use either two-way or AMI calls for assured-replication and one-way operations for soft-replication.
Important Note : In current stage, the Fault Tolerant Event Service can only be made under
MPC build. The conventional makefiles are yet to be supported.
+
+Programs
+-------------
This directory contains the following programs:
ftrt_eventservice : Implements the functionality of fault tolerant event channel.
@@ -25,7 +60,9 @@ This directory contains the following programs:
ftec : a shell script to start ftrt_eventservice.
+
Quick start:
+-------------
Run the applications as follows:
@@ -47,7 +84,7 @@ Quick start:
$ ./supplier
How do we add a new FTRTEC to the system?
-
+---------------------------------------------
Just use
./ftec -j
@@ -88,7 +125,7 @@ Is there any adjustable options for FTRTEC?
How do I start the FTRTEC using ftrtec_factory_service?
-
+---------------------------------------------------------------
The ftrtec_factory_service is a small program that can instaniate a ftrt_eventservice on demand.
It exports the FT::GenericFactory interface to its client. There are two ways that
you can get the IOR for the factory object. 1) specify the name you want the factory
@@ -135,7 +172,7 @@ Here are the parameters in create_object() to control how ftrt_eventservice is c
ftrt_eventservice can be started using sciop.
How do I use the ftrtec_gateway_service program ?
-
+-----------------------------------------------------
The FTRTEC uses some features in FT CORBA that requires every client to use FT ORB to work. If your
client is written based other ORBs other than TAO. You cannot get the desired fault tolerance feature.
In this case you can have the ftec_gateway as an intermediator between the FTRTEC and you client program.