summaryrefslogtreecommitdiffstats
path: root/tests/functional/afr
Commit message (Collapse)AuthorAgeFilesLines
* [TestFix] Remove hot and cold bricks list - Part2Bala Konda Reddy M2020-07-082-16/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the non-tiered volume types, In few test cases while bringing bricks offline, collecting both hot_tier_bricks and cold_tier_bricks and it is not needed to collect hot and cold tier bricks. Removing tier kwarg in one of the test. Removing the hot and cold tiered bricks and collecting only bricks of the particular volume as mentioned below. Removing below section ``` bricks_to_bring_offline_dict = (select_bricks_to_bring_offline( self.mnode, self.volname)) bricks_to_bring_offline = list(filter(None, ( bricks_to_bring_offline_dict['hot_tier_bricks'] + bricks_to_bring_offline_dict['cold_tier_bricks'] + bricks_to_bring_offline_dict['volume_bricks']))) ``` Modifying as below for bringing bricks offline. ``` bricks_to_bring_offline = bricks_to_bring_offline_dict['volume_bricks'] ``` Change-Id: I4f59343b380ced498516794a8cc7c968390a8459 Signed-off-by: Bala Konda Reddy M <bala12352@gmail.com>
* [TestFix] Remove hot and cold bricks list on regular volumesBala Konda Reddy M2020-06-243-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | For the non-tiered volume types, In few test cases while bringing bricks offline, collecting both hot_tier_bricks and cold_tier_bricks and it is not needed to collect hot and cold tier bricks. Removing the hot and cold tiered bricks and collecting only bricks of the particular volume as mentioned below. Removing below section ``` bricks_to_bring_offline_dict = (select_bricks_to_bring_offline( self.mnode, self.volname)) bricks_to_bring_offline = list(filter(None, ( bricks_to_bring_offline_dict['hot_tier_bricks'] + bricks_to_bring_offline_dict['cold_tier_bricks'] + bricks_to_bring_offline_dict['volume_bricks']))) ``` Modifying as below for bringing bricks offline. ``` bricks_to_bring_offline = bricks_to_bring_offline_dict['volume_bricks'] ``` Change-Id: Icb1dc4a79cf311b686d839f2c9390371e42142f7 Signed-off-by: Bala Konda Reddy M <bala12352@gmail.com>
* [Test] Git clone on glusterfs volumeBala Konda Reddy M2020-06-161-0/+80
| | | | | | | | | | | Test Steps: 1. Create a volume and mount it on one client 2. git clone the glusterfs repo on the glusterfs volume 3. Set the performance options to off 4. Repeat step 2 on a different directory Change-Id: Iaecce7cd14ecf84058c75847a037c6589d3833e9 Signed-off-by: Bala Konda Reddy M <bala12352@gmail.com>
* [TestFix] Correct the library name for a functionsayaleeraut2020-06-081-3/+3
| | | | | | | | | The function "set_volume_options()" is a part of "volume_ops" lib, but was wrongly imported from "volume_libs" lib earlier. Corrected the import statement. Change-Id: I7295684e7a564468ac42bbe1f00643ee150f769d Signed-off-by: sayaleeraut <saraut@redhat.com>
* [Testfix] Move teardownclass to teardownkshithijiyer2020-06-084-43/+43
| | | | | | | | | | | | | | | | | | Problem: A pattern was observed where testcases which were passing were throwing error in teadownclass this was becuase docleanup was running before teadownclass and when teardownclass was executed it failed as the setup was already cleaned. Solution: Change code to teardown from teardownclass and move setup volume code to setup from setupclass. Change-Id: I37c6fde1f592224c114148f0ed7215b2494b4502 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [BUG][Test] Add tc to check heal with only shd runningPranav2020-05-111-0/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Failing in CentOS-CI due to this bug https://bugzilla.redhat.com/show_bug.cgi?id=1768380 Description: Test Script which verifies that the server side healing must happen only if the heal daemon is running on the node where source brick resides. * Create and start the Replicate volume * Check the glustershd processes - Only 1 glustershd should be listed * Bring down the bricks without affecting the cluster * Create files on volume * kill the glustershd on node where bricks is running * bring the bricks up which was killed in previous steps * check the heal info - heal info must show pending heal info, heal shouldn't happen since glustershd is down on source node * issue heal * trigger client side heal * heal should complete successfully Change-Id: I1fba01f980a520b607c38d8f3371bcfe086f7783 Co-authored-by: Vijay Avuthu <vavuthu@redhat.com>, Milind Waykole <milindwaykole96@gmail.com> Signed-off-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Milind Waykole <milindwaykole96@gmail.com> Signed-off-by: Pranav <prprakas@redhat.com>
* [Test] Add tc to check volume metadata-self-healkshithijiyer2020-05-111-0/+606
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testcase steps: 1.Turn off the options self heal daemon 2.Create IO 3.Calculate arequal of the bricks and mount point 4.Bring down "brick1" process 5.Change the permissions of the directories and files 6.Change the ownership of the directories and files 7.Change the group of the directories and files 8.Bring back the brick "brick1" process 9.Execute "find . | xargs stat" from the mount point to trigger heal 10.Verify the changes in permissions are not self healed on brick1 11.Verify the changes in permissions on all bricks but brick1 12.Verify the changes in ownership are not self healed on brick1 13.Verify the changes in ownership on all the bricks but brick1 14.Verify the changes in group are not successfully self-healed on brick1 15.Verify the changes in group on all the bricks but brick1 16.Turn on the option metadata-self-heal 17.Execute "find . | xargs md5sum" from the mount point to trgger heal 18.Wait for heal to complete 19.Verify the changes in permissions are self-healed on brick1 20.Verify the changes in ownership are successfully self-healed on brick1 21.Verify the changes in group are successfully self-healed on brick1 22.Calculate arequal check on all the bricks and mount point Change-Id: Ia7fb1b272c3c6bf85093690819b68bd83efefe14 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test] Add tc to check impact of replace brick on shdkshithijiyer2020-04-291-0/+186
| | | | | | | | | | | | | | | | | | | | | | | Description: Test Script to verify the glustershd server vol file has only entries for replicate volumes. Testcase steps: 1.Create multiple volumes and start all volumes 2.Check the glustershd processes(Only 1 glustershd should be listed) 3.Do replace brick on the replicate volume 4.Confirm that the brick is replaced 5.Check the glustershd processes(Only 1 glustershd should be listed and pid should be different) 6.glustershd server vol should be updated with new bricks Change-Id: I09245c8ff6a2b31a038749643af294aa8b81a51a Co-authored-by: Vijay Avuthu <vavuthu@redhat.com>, Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test][BUG] Add testcase to replace-brick and test self-heal of fileskshithijiyer2020-03-111-0/+263
| | | | | | | | | | | | | | | | | | | | | | Testcase steps: 1.Create directory on mount point and write files/dirs 2.Create another set of files (1K files) 3.While creation of files/dirs are in progress Kill one brick 4.Remove the contents of the killed brick(simulating disk replacement) 5.When the IO's are still in progress, restart glusterd on the nodes where we simulated disk replacement to bring back bricks online 6.Start volume heal 7.Wait for IO's to complete 8.Verify whether the files are self-healed 9.Calculate arequals of the mount point and all the bricks CentOS-CI failure due to the following bug: https://bugzilla.redhat.com/show_bug.cgi?id=1807384 Change-Id: I9e9f58a16a7950fd7d6493cbb5c4f5483892851e Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test] Add test for manual heal full of file using cmdkshithijiyer2020-03-061-0/+182
| | | | | | | | | | | | | | | | | | Testcase steps: 1.Create a single brick volume 2.Add some files and directories 3.Get arequal from mountpoint 4.Add-brick such that this brick makes the volume a replica vol 1x3 5.Start heal full 6.Make sure heal is completed 7.Get arequals from all bricks and compare with arequal from mountpoint Change-Id: I4ef140b326b3d9edcbd5b1f0b7d9c43f38ccfe66 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test][Bug]Test to check directory gfid mismatch per BZ#1661258kshithijiyer2020-03-021-0/+147
| | | | | | | | | | | | | | | | | | Testcase steps: 1. Create a volume and mount it. 2. Create a directory on mount and check whether all the bricks have the same gfid. 3. Now delete gfid attr from all but one backend bricks, 4. Do lookup from the mount. 5. Check whether all the bricks have the same gfid assigned. Failing in CentOS-CI due to the following bug: https://bugzilla.redhat.com/show_bug.cgi?id=1696075 Change-Id: I4eebc247b15c488cfa24599e0afec2fa5671656f Co-authored-by: Anees Patel <anepatel@redhat.com> Signed-off-by: Anees Patel <anepatel@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Remove python version dependency(Part 1)kshithijiyer2020-02-2625-247/+202
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sys library was added to all the testcases to fetch the `sys.version_info.major` which fetches the version of python with which glusto and glusto-tests is installed and runs the I/O script i.e file_dir_ops.py with that version of python but this creates a problem as older jobs running on older platforms won't run the way they use to, like if the older platform had python2 by default and we are running it tests from a slave which has python3 it'll fails and visa-versa. The problem is introduced due the below code: ``` cmd = ("/usr/bin/env python%d %s create_deep_dirs_with_files " "--dirname-start-num 10 --dir-depth 1 --dir-length 1 " "--max-num-of-dirs 1 --num-of-files 5 %s" % ( sys.version_info.major, self.script_upload_path, self.mounts[0].mountpoint)) ``` The solution to this problem is to change `python%d` to `python` which would enable the code to run with whatever version of python is avaliable on that client this would enable us to run any version of framework with both the older and latest platforms. Change-Id: I7c8200a7578f03c482f0c6a91832b8c0fdb33e77 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Add steps to stabilize afr testcasesSri Vignesh2020-02-186-49/+62
| | | | | | | Added steps to reset volume and resolved teardown class cleanup failures. Change-Id: I06b0ed8810c9b064fd2ee7c0bfd261928d8c07db
* [Test] Test entry transaction crash consistency with fopskshithijiyer2020-02-061-0/+384
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testcase 1: Test entry transaction crash consistency : create - Create IO - Calculate arequal before creating snapshot - Create snapshot - Modify the data - Stop the volume - Restore snapshot - Start the volume - Get arequal after restoring snapshot - Compare arequals Testcase 2: Test entry transaction crash consistency : delete - Create IO of 50 files - Delete 20 files - Calculate arequal before creating snapshot - Create snapshot - Delete 20 files more - Stop the volume - Restore snapshot - Start the volume - Get arequal after restoring snapshot - Compare arequals Testcase 3: Test entry transaction crash consistency : rename - Create IO of 50 files - Rename 20 files - Calculate arequal before creating snapshot - Create snapshot - Rename 20 files more - Stop the volume - Restore snapshot - Start the volume - Get arequal after restoring snapshot - Compare arequals Change-Id: I7cb9182f91ae50c47d5ae9b3f8031413b2bbfbbf Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test]Creating/Deleting sparse files should be consistent to reflect ↵kshithijiyer2020-01-241-0/+164
| | | | | | | | | | | | | | | | | | available space Testcase: - note the current available space on the mount - create 1M file on the mount - note the current available space on the mountpoint and compare with space before creation - remove the file - note the current available space on the mountpoint and compare with space before creation Change-Id: Iff017039d1888d03f067ee2a9f26aff327bd4059 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Removing additonal underscore(_) from testcase name.kshithijiyer2020-01-161-2/+2
| | | | | Change-Id: Idcc40442869cb3e44873625887409592d9e0710d Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Remove variable script_local_path/script_abs_path(Part 4)kshithijiyer2020-01-0717-50/+25
| | | | | | | | Please refer to the commit message of the below patch: https://review.gluster.org/#/c/glusto-tests/+/23902/ Change-Id: I1df0324dac2da5aad4064cc72ef77dcb5bf67e4f Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Fix] Remove variable script_local_path(Part 3)kshithijiyer2020-01-0711-33/+11
| | | | | | | | Please refer to the commit message of the below patch: https://review.gluster.org/#/c/glusto-tests/+/23902/ Change-Id: Icf32bb20b7eaf2eabb07b59be813997a28872565 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [py2to3] Add py3 support for tests in 'tests/functional/afr'Valerii Ponomarov2019-12-1831-284/+408
| | | | | Change-Id: Ic14be81f1cd42c470d2bb5c15505fc1bc168a393 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Add py3 support for tests in 'tests/functional/afr/heal'Valerii Ponomarov2019-12-127-42/+60
| | | | | Change-Id: Id4df838565ec3f9ad765cf223bb5115e43dac1c5 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* [py2to3] Replace usage of ".iteitems()" attr with ".items()"Valerii Ponomarov2019-11-211-2/+2
| | | | | | | | Dict attribute called "iteritems()" is not supported in the py3. So, replace it's usage with another similar attr called "items()". Change-Id: I130b7f67f0a2d5da5ed6c3d792f5ff024ba148f4 Signed-off-by: Valerii Ponomarov <kiparis.kh@gmail.com>
* Adding test case : test_no_glustershd_with_distributeMilind Waykole2019-11-201-0/+176
| | | | | | | Change-Id: I12b5586bdcef128df64fcd8a0ba80f193395f313 Co-authored-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Vijay Avuthu <vavuthu@redhat.com> Signed-off-by: Milind Waykole <milindwaykole96@gmail.com>
* Enabling client side heal,as client side heal is disabled by default in RHGS 3.5milindw962019-10-151-5/+42
| | | | | | Change-Id: I7f8769defd34d55d8eec720c40ed55e69523f917 Signed-off-by: Anees Patel <anepatel@redhat.com> Signed-off-by: milindw96 <milindwaykole96@gmail.com>
* [Fix] Fixing string formatting errors and client heal errorskshithijiyer2019-09-191-37/+51
| | | | | | Change-Id: Ifef2ffe022accf59edcbc949c505f47931b19fe4 Signed-off-by: Anees Patel <anepatel@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* Fix AFR test case tearDown and library importVinayak Papnoi2019-09-111-3/+16
| | | | | | | | | | | | | The test case 'test_client_side_quorum_with_fixed_validate_max_bricks' does not have a tearDown part where the volume options which have been set inside the test case have not been reset to default. The library function 'set_volume_options' was being imported from a wrong library. This fix includes this change along with the tearDown steps. Change-Id: Ic57494e7a7e8a25303b7979f98cc2dfbc9a7d7b6 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* Fix AFR test case tearDownVinayak Papnoi2019-08-081-6/+18
| | | | | | | | | | | | The test case 'test_client_side_quorum_with_fixed_for_cross3' does not include the tearDown part where the volume options which have been set inside the test case have to be reset to default. This fix includes the necessary tearDown steps along with a few cosmetic changes. Change-Id: I86187cef4523492ec97707ff93d0eca365293008 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* Enable client-side heal as client-side healing is diabled in RHGS 3.5Anees Patel2019-08-051-0/+10
| | | | | Change-Id: I0992b1b9af4e12f4e20d7a5dc184048de104d89d Signed-off-by: Anees Patel <anepatel@redhat.com>
* Fixing busy umount errorsAnees Patel2019-02-251-0/+239
| | | | | Change-Id: I7f7b5cfdee09067d8d96bfcf56ce8a3372ca9368 Signed-off-by: Anees Patel <anepatel@redhat.com>
* Fixes for checking uid, gid and permissionVitalii Koriakov2019-02-081-60/+79
| | | | | Change-Id: I683e6ff47120b7db8ee6ae02ed83eba19e6ac4c9 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Delete quorum method from old file. Added fixes for flake8Vitalii Koriakov2019-01-302-791/+130
| | | | | Change-Id: I2acf835a4cf7301c64c4c8a9423f78672cdf9aa4 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* New quorum behavior fixesVitalii Koriakov2019-01-281-0/+651
| | | | | Change-Id: I364054c35f623893700798bedef965fe05f6aabf Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Delete test_client_side_quorum_with_auto_option and ↵Vitalii Koriakov2019-01-251-360/+0
| | | | | | | test_client_side_quorum_with_auto_option_overwrite_fixed Change-Id: I5e22228eaf8574f2ccb1ae38cb98ec01e6493fdf Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* fixing the quorum changes according to new behaviourVijay Avuthu2019-01-251-3/+4
| | | | | | | If quorum is not met, reads/writes fails with transport end point not connected Change-Id: I219c99fc5b96147c059174daf0383454e1bd2831
* New quorum behavior fixesVitalii Koriakov2019-01-251-0/+333
| | | | | Change-Id: I0a2c0ba2e28fc23fe3ff2db57b4ba3c0f08993aa Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* New quorum behavior fixesVitalii Koriakov2019-01-251-0/+218
| | | | | Change-Id: I156e80e958d9e4c7aeec3a97bbcb16e8bfa36f30 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Moved test_glustershd_on_all_volume_types to separate folderVitalii Koriakov2018-12-272-223/+271
| | | | | Change-Id: I3d749c5d131973217d18fc1158236806645e4ab4 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Fixing the test-case to delete brick directories of replaced bricks, As this ↵Anees Patel2018-12-111-158/+0
| | | | | | | was not handled by teardown class Change-Id: I789adbf0909c5edd0a2eb19ed4ccebcb654700fd Signed-off-by: Anees Patel <anepatel@redhat.com>
* Distribute to replica 2 conversion is done with force option to avoid ↵Anees Patel2018-12-091-1/+1
| | | | | | | split-brain warning per BZ1579758 Change-Id: I674557e153234e0f6af20f12d168b744bda3a3f8 Signed-off-by: Anees Patel <anepatel@redhat.com>
* Moved test_data_self_heal_algorithm_full_default from afr to arbiter folderVitalii Koriakov2018-12-061-148/+0
| | | | | Change-Id: I04ffdedb1ce25ab05239c77b4dd5893ce18b32f7 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Moved test_self_heal_differing_in_file_type from afr to arbiter folderVitalii Koriakov2018-12-061-193/+0
| | | | | Change-Id: I9f33c84be39bdca85909c2ae337bd4482532d061 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Moved test_existing_glustershd_should_take_care_of_self_healing to separate ↵Vitalii Koriakov2018-12-062-230/+256
| | | | | | | folder Change-Id: I1fb4497ac915c7a93f223ef4e6946eeb4dcd0e90 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Modified the test per BZ Bug 1579758root2018-12-021-1/+1
| | | | | Change-Id: I8d15f482dbde12670975e32af685570a0eaa50b6 Signed-off-by: Anees <anepatel@redhat.com>
* Fixing TC test_client_side_quorum_with_auto_option_cross2Vijay Avuthu2018-11-272-780/+794
| | | | | | | | | Issue: Creating hardlinks fails since TC trying to create same hardlink twicw from 2 different clients. Change-Id: I1c0d48f53eec00ed2a766b786c551d83ac278946
* Moved test_self_heal_symbolic_links from afr to arbiter folderVitalii Koriakov2018-11-231-245/+0
| | | | | Change-Id: I6a95e82977f4ac6092716c064597931768023710 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Fix the test caseVijay Avuthu2018-11-221-0/+382
| | | | | | test_client_side_quorum_auto_local_to_volume_not_cluster Change-Id: Ibf16517fe062f9335d17c0e6d88ddab44a644c7b
* fixVijay Avuthu2018-11-221-361/+3
| | | | | | test_client_side_quorum_auto_local_to_volume_not_cluster Change-Id: I8abef160fb6aecb0f74edec0324a53bb23bb2885
* Deleting test_metadata_self_heal from test_self_heal fileVitalii Koriakov2018-11-151-353/+0
| | | | | Change-Id: I4560b425aa470da27631eb6401e3775fb90c2330 Signed-off-by: Vitalii Koriakov <vkoriako@nredhat.com>
* Moved test_self_heal_algorithm_full_daemon_off from afr to arbiter folderVitalii Koriakov2018-11-081-111/+1
| | | | | Change-Id: I0143a4ffa16fa0c3ea240f5debbdc5519a9e5445 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Moved test_data_self_heal_algorithm_diff_default from afr to arbiter folderVitalii Koriakov2018-10-231-148/+0
| | | | | Change-Id: I6462446cce6c06a7559028eee1a6968af093c959 Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>
* Moved test_data_self_heal_algorithm_diff_heal_command from afr to arbiter folderVitalii Koriakov2018-10-231-204/+0
| | | | | Change-Id: Id32859df069106d6c9913147ecfa8d378dfa8e9d Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com>