| ! |
| ! @@@ START COPYRIGHT @@@ |
| ! |
| ! Licensed to the Apache Software Foundation (ASF) under one |
| ! or more contributor license agreements. See the NOTICE file |
| ! distributed with this work for additional information |
| ! regarding copyright ownership. The ASF licenses this file |
| ! to you under the Apache License, Version 2.0 (the |
| ! "License"); you may not use this file except in compliance |
| ! with the License. You may obtain a copy of the License at |
| ! |
| ! http://www.apache.org/licenses/LICENSE-2.0 |
| ! |
| ! Unless required by applicable law or agreed to in writing, |
| ! software distributed under the License is distributed on an |
| ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ! KIND, either express or implied. See the License for the |
| ! specific language governing permissions and limitations |
| ! under the License. |
| ! |
| ! @@@ END COPYRIGHT @@@ |
| ! |
| |
| ! |
| ! NonStop Process pair testing. |
| ! |
| ! - 1 NonStop Server, 1 client test driver |
| ! |
| ! Test A |
| ! Client sends 20 requests to server |
| ! 5th, 10th, and 15th cause server primary to abort, |
| ! 20th will cause server to exit gracefully when client closes server. |
| ! |
| ! Server primary check points requests to backup |
| ! 5th, 10th, and 15th cause server primary to abort and |
| ! backup to takeover as primary and continues to |
| ! accept and checkpoint requests from client. |
| ! |
| ! Server |
| ! Primary |
| ! - starts backup <-(backup take over processing starts here) |
| ! - mounts device |
| ! - accepts connection from client |
| ! - loops |
| ! o receives message from client |
| ! o processes message from client |
| ! o checkpoints message from client to backup |
| ! - on a process death notice |
| ! o starts backup |
| ! |
| ! Backup |
| ! - opens primary |
| ! - loops |
| ! o receives checkpoint messages from primary |
| ! o processes checkpoint messages from primary |
| ! - on a process death notice |
| ! o takes over as primary |
| ! o closes primary |
| ! o startup Primary processing as above |
| ! |
| ! Client |
| ! - opens Server |
| ! - loops |
| ! o sends MAX_CYCLES messages to server |
| ! o every 5th send is an CMD_ABORT to abort current primary |
| ! causing a takeover by the server backup |
| ! - on a process death notice |
| ! o takes over as primary |
| ! o closes primary |
| ! o startup Primary processing as above |
| ! |
| exec {nowait,name $SERV0,nid 0, OUT SERV0.T1.log}nsserver |
| ps |
| delay 2 |
| ps |
| exec {nowait,name $CLI,nid 0,debug}nsclient |
| ps |
| delay 5 |
| ps |
| exit |