Bug 8138: Do not clean journal and snapshots 64/54264/6
authorVratko Polak <vrpolak@cisco.com>
Fri, 21 Apr 2017 09:44:46 +0000 (11:44 +0200)
committerDaniel Farrell <dfarrell@redhat.com>
Fri, 21 Apr 2017 16:29:34 +0000 (16:29 +0000)
Change-Id: If50aa4ebda02f9155296ff870c50c98b48173701
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
csit/libraries/ClusterManagement.robot
csit/suites/controller/Clustering_Datastore/car_outage_corners.robot
csit/suites/netconf/clusteringscale/topology_leader_ha.robot
csit/suites/netconf/clusteringscale/topology_owner_ha.robot

index a3f83ce7420cabc2f8ad95da8c35b330a61d5747..3a72b01fa1a33cc199b58ffe6a4004ff7f75caa4 100644 (file)
@@ -425,6 +425,8 @@ Freeze_Or_Unfreeze_Members_From_List_Or_All
 Clean_Journals_And_Snapshots_On_List_Or_All
     [Arguments]    ${member_index_list}=${EMPTY}    ${karaf_home}=${KARAF_HOME}
     [Documentation]    Delete journal and snapshots directories on every node listed (or all).
+    ...    BEWARE: If only a subset of members is cleaned, this causes RetiredGenerationException in Carbon after the affected node re-start.
+    ...    See https://bugs.opendaylight.org/show_bug.cgi?id=8138
     ${index_list} =    List_Indices_Or_All    given_list=${member_index_list}
     ${command} =    Set Variable    rm -rf "${karaf_home}/journal" "${karaf_home}/snapshots"
     : FOR    ${index}    IN    @{index_list}    # usually: 1, 2, 3.
index 507a2c2a2632f2a13519bafc3205ca496c16b368..f896324f4ffde06065f20e02a284da31ecf92397 100644 (file)
@@ -42,6 +42,7 @@ ${CLUSTER_DIR}    ${CURDIR}/../../../variables/clustering
 *** Test Cases ***
 Kill_Majority_Of_The_Followers
     [Documentation]    Kill half plus one car Follower members and set reviving followers down (otherwsise tipping followers cannot join cluster).
+    ...    Mark most of killed members as explicitly down, to allow the surviving leader make progress.
     ClusterManagement.Kill_Members_From_List_Or_All    member_index_list=${list_of_killing}    confirm=True
     : FOR    ${index}    IN    @{list_of_reviving}
     \    ${data}    OperatingSystem.Get File    ${CLUSTER_DIR}/member_down.json
@@ -56,9 +57,8 @@ Attempt_To_Add_Cars_To_Leader
     # TODO: Is there a specific status and mesage to require in this scenario?
     BuiltIn.Should_Contain    ${message}    '50
 
-Clean_And_Start_Tipping_Follower
+Start_Tipping_Follower
     [Documentation]    Start one Follower member without persisted data.
-    ClusterManagement.Clean_Journals_And_Snapshots_On_List_Or_All    member_index_list=${list_of_tipping}
     ClusterManagement.Start_Members_From_List_Or_All    member_index_list=${list_of_tipping}    wait_for_sync=True    timeout=${MEMBER_START_TIMEOUT}
     BuiltIn.Wait_Until_Keyword_Succeeds    30s    2s    ClusterManagement.Verify_Leader_Exists_For_Each_Shard    shard_name_list=${SHARD_NAME_LIST}    shard_type=config    member_index_list=${list_of_majority}
 
@@ -71,7 +71,7 @@ See_Cars_On_Existing_Members
     : FOR    ${session}    IN    @{list_of_majority}
     \    TemplatedRequests.Get_As_Json_Templated    folder=${VAR_DIR}/cars    session=${session}    verify=True    iterations=${CAR_ITEMS}    iter_start=${MAJORITY_START_I}
 
-Clean_And_Start_Other_Followers
+Start_Other_Followers
     [Documentation]    Start other followers without persisted data.
     ClusterManagement.Start_Members_From_List_Or_All    member_index_list=${list_of_reviving}    wait_for_sync=True    timeout=${MEMBER_START_TIMEOUT}
     BuiltIn.Wait_Until_Keyword_Succeeds    30s    2s    ClusterManagement.Verify_Leader_Exists_For_Each_Shard    shard_name_list=${SHARD_NAME_LIST}    shard_type=config
index 4dd7a2d5d35cd6d5d4ba6ec3b43de08f49643b47..b1062ca3fbabfe591adb3a65ecb7cdab9a8970e4 100644 (file)
@@ -91,9 +91,7 @@ Reboot_Topology_Leader
     ...    After cluster sync, sleep additional time to ensure manager processes requests with the rebooted member fully rejoined.
     [Tags]    @{TAGS_NONCRITICAL}    # To avoid long WUKS list expanded in log.html
     ClusterManagement.Kill_Single_Member    ${topology_config_leader_index}
-    # TODO: Introduce ClusterManagement.Clean_Journals_And_Snapshots_On_Single_Member
     ${owner_list} =    BuiltIn.Create_List    ${topology_config_leader_index}
-    ClusterManagement.Clean_Journals_And_Snapshots_On_List_Or_All    ${owner_list}
     ClusterManagement.Start_Single_Member    ${topology_config_leader_index}
     BuiltIn.Comment    FIXME: Replace sleep with WUKS when it becomes clear what to wait for.
     ${sleep_time} =    Get_Typical_Time    coefficient=3.0
index 8bedf52f14182e79a03f4567d72e9613890bf365..db92c400f4d9b3806f374478e3f2f7efe27c77cd 100644 (file)
@@ -114,9 +114,7 @@ Reboot_Manager_Owner
     ...    After cluster sync, sleep additional time to ensure manager processes requests with the rebooted member fully rejoined.
     [Tags]    @{TAGS_NONCRITICAL}    # To avoid long WUKS list expanded in log.html
     ClusterManagement.Kill_Single_Member    ${netconf_manager_owner_index}
-    # TODO: Introduce ClusterManagement.Clean_Journals_And_Snapshots_On_Single_Member
     ${owner_list} =    BuiltIn.Create_List    ${netconf_manager_owner_index}
-    ClusterManagement.Clean_Journals_And_Snapshots_On_List_Or_All    ${owner_list}
     ClusterManagement.Start_Single_Member    ${netconf_manager_owner_index}
     BuiltIn.Comment    FIXME: Replace sleep with WUKS when it becomes clear what to wait for.
     ${sleep_time} =    Get_Typical_Time    coefficient=3.0