summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* [Test] Add TC to check SEL context on glusterfs.xml fileLeela Venkaiah G2020-04-221-0/+75
| | | | | | | | | | Test Steps: 1. Check the existence of '/usr/lib/firewalld/services/glusterfs.xml' 2. Validate the owner of this file as 'glusterfs-server' 3. Validate SELinux label context as 'system_u:object_r:lib_t:s0' Change-Id: I55bfb3b51a9188e2088459eaf5304b8b73f2834a Signed-off-by: Leela Venkaiah G <lgangava@redhat.com>
* [Test] Add tc to stop rebalance with migration in progresskshithijiyer2020-04-221-0/+167
| | | | | | | | | | | | | | | | | | | | | | Description: This test case creates a large file at mount point, adds extra brick and initiates rebalance. While migration is in progress, it stops rebalance process and checks if it has stopped. Testcase Steps: 1. Create and start a volume. 2. Mount volume on client and create a large file. 3. Add bricks to the volume and check layout 4. Rename the file such that it hashs to different subvol. 5. Start rebalance on volume. 6. Stop rebalance on volume. Change-Id: I7edd37a548467d6624ffe1efa64b0c1b56ff26ed Co-authored-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [TestFix] Fix to make TC compatible with DHT libsayaleeraut2020-04-221-38/+52
| | | | | | | | | | | | | The TC was failing with "AssertionError: ('hash range is not there %s', False)" even though the bricks were healed and the directory was created on non-hashed bricks. This was due to the conflict between the TC and the DHT library changes (added to fix the issues caused by DHT pass-through functionality). The code is now modified according to the library changes and hence the TC works fine. Change-Id: I501e7db89643822fbc711e631ceacda79e4c4ea4 Signed-off-by: sayaleeraut <saraut@redhat.com>
* [py2py3] Fixing a bunch of python3 incompatibilitieskshithijiyer2020-04-202-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: There are two python2 to python3 incompatibilities present in test_add_brick_when_quorum_not_met.py and test_add_identical_brick_new_node.py. In test_add_brick_when_quorum_not_met.py the testcase fails with the below error: > for node in range(num_of_nodes_to_bring_down, num_of_servers): E TypeError: 'float' object cannot be interpreted as an integer This is because a = 10 / 5 returns a float in python3 but it returns a int in python2 as shown below: Python 2.7.15 (default, Oct 15 2018, 15:26:09) [GCC 8.2.1 20180801 (Red Hat 8.2.1-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> a = 10/5 >>> type(a) <type 'int'> Python 3.7.3 (default, Mar 27 2019, 13:41:07) [GCC 8.3.1 20190223 (Red Hat 8.3.1-2)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> a = 10/5 >>> type(a) <class 'float'> In test_add_identical_brick_new_node.py testcase fails with the below error: > add_bricks.append(string.replace(bricks_list[0], self.servers[0], self.servers[1])) E AttributeError: module 'string' has no attribute 'replace' This is because string is depriciated in python3 and is replaced with str. Solution: For the first issue we would need to change a = 10/5 to a = 10//5 as it is constant across both python versions. For the second issue adding try except block as shown below would be suffice: except AttributeError: add_bricks.append(str.replace(bricks_list[0], self.servers[0], self.servers[1])) Change-Id: I9ec325760b279032af3748101bd2bfc58589d57d Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Add sleep after glusterd restartSri Vignesh2020-04-201-1/+7
| | | | | | | | | Add sleep after glusterd restart is run async in servers by avoiding another transaction in progress failure in testcase Change-Id: I514c24813dc7c102b807a582ae2b0d19069e0d34 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Testfix] Fix rpyc_get_connection() issue in test_metadata_self_healkshithijiyer2020-04-161-16/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `g.rpyc_get_connection()` has a limitaion where it can't convert python2 calls to python3 calls. Due to this a large number of testcases fail when executed from a python2 machine on a python3 only setup or visa versa with the below stack trace: ``` E ========= Remote Traceback (1) ========= E Traceback (most recent call last): E File "/root/tmp.tL8Eqx7d8l/rpyc/core/protocol.py", line 323, in _dispatch_request E res = self._HANDLERS[handler](self, *args) E File "/root/tmp.tL8Eqx7d8l/rpyc/core/protocol.py", line 591, in _handle_inspect E if hasattr(self._local_objects[id_pack], '____conn__'): E File "/root/tmp.tL8Eqx7d8l/rpyc/lib/colls.py", line 110, in __getitem__ E return self._dict[key][0] E KeyError: (b'rpyc.core.service.SlaveService', 94282642994712, 140067150858560) ``` Solution: Write generic code which can run from python2 to python3 and visa-versa Change-Id: I7783485a784ef4b57f626f77e6012d918fee6032 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Add steps in teardown to wait for all bricks onlineSri Vignesh2020-04-141-1/+7
| | | | | | | | Add steps wait_for_bricks_to_be_online in teardown after the glusterd is started in teststeps Change-Id: Id30a3d870c6ba7c77b0e79604521ec41fe624822 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Test]: Check replace brick in ECubansal2020-04-131-0/+336
| | | | | | | | | Steps: 1.Checks replace-brick and data intergrity post that 2.Checks replace-brick while IO's are in progress Change-Id: Idfc801fde50967924696b2e909633b9ca95ac721 Signed-off-by: ubansal <ubansal@redhat.com>
* [Testfix] Fix logging errorkshithijiyer2020-04-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: Line 135 is missing () which leads to the below trace back when the testcase fails: ``` Traceback (most recent call last): File "/usr/lib64/python2.7/logging/__init__.py", line 851, in emit msg = self.format(record) File "/usr/lib64/python2.7/logging/__init__.py", line 724, in format return fmt.format(record) File "/usr/lib64/python2.7/logging/__init__.py", line 464, in format record.message = record.getMessage() File "/usr/lib64/python2.7/logging/__init__.py", line 328, in getMessage msg = msg % self.args TypeError: not all arguments converted during string formatting Logged from file test_volume_start_stop_while_rebalance_in_progress.py, line 135 ``` Solution: Adding the missing () brackets in line 135. Change-Id: I318a5b838f01840afee5d4109645cc7dcd86c8fa Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test]: check heal of custom xattr on newly added bricksayaleeraut2020-03-261-0/+172
| | | | | | | | | | | | | | | | BZ#1702298 - Custom xattrs are not healed on newly added brick Test Steps: 1) Create a volume. 2) Mount the volume using FUSE. 3) Create 100 directories on the mount point. 4) Set the xattr on the directories. 5) Add bricks to the volume and trigger rebalance. 6) Wait for rebalance to complete. 7) After rebalance completes,check if all the bricks have healed. 8) Check the xattr for dirs on the newly added bricks. Change-Id: If83f65ea163ccf16f9024d6b3a867ba7b35773f0 Signed-off-by: sayaleeraut <saraut@redhat.com>
* [Testfix] Fix error in loggingkshithijiyer2020-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Testcase test_ec_version was failing with the below traceback: Traceback (most recent call last): File "/usr/lib64/python2.7/logging/__init__.py", line 851, in emit msg = self.format(record) File "/usr/lib64/python2.7/logging/__init__.py", line 724, in format return fmt.format(record) File "/usr/lib64/python2.7/logging/__init__.py", line 464, in format record.message = record.getMessage() File "/usr/lib64/python2.7/logging/__init__.py", line 328, in getMessage msg = msg % self.args TypeError: %d format: a number is required, not str Logged from file test_ec_version_healing_whenonebrickdown.py, line 233 This was due to a missing 's' in the log message on line 233. Solution: Add the missing s in the log message on line 233 as shown below: g.log.info('Brick %s is offline successfully', brick_b2_down) Also renaming the file for more clarity of what the testcase does. Change-Id: I626fbe23dfaab0dd6d77c75329664a81a120c638 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test+libfix] Add testcase to access of filekshithijiyer2020-03-191-0/+172
| | | | | | | | | | | | | Testcase steps: (file access) - rename the file so that the hashed and cached are different - make sure file can be accessed as long as cached is up Fixes a library issue as well in find_new_hashed() Change-Id: Id81264848d6470b9fe477b50290f5ecf917ceda3 Co-authored-by: Susant Palai <spalai@redhat.com> Signed-off-by: Susant Palai <spalai@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test+libfix] Testcases for rename with subvol downkshithijiyer2020-03-171-0/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Case 1: 1.mkdir srcdir and dstdir(such that srcdir and dstdir hashes to different subvols) 2.Bring down srcdir hashed subvol 3.mv srcdir dstdir (should fail) Case 2: 1.mkdir srcdir dstdir 2.Bring down srcdir hashed 3.Bring down dstdir hashed 4.mv srcdir dstdir (should fail) Case 3: 1.mkdir srcdir dstdir 2.Bring down dstdir hashed subvol 3.mv srcdir dstdir (should fail) Additional library fix details: Also fixing library function to work with distributed-disperse volume by removing `if oldhashed._host != brickdir._host:` as the same node can host multiple bricks of the same volume. Change-Id: Iaa472d1eb304b547bdec7a8e6b62c1df1a0ce591 Co-authored-by: Susant Palai <spalai@redhat.com> Signed-off-by: Susant Palai <spalai@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Test]: Add checks for peer detach of offline volumesnchilaka2020-03-171-43/+60
| | | | | | | | | | Changes done in this patch include: 1. reduced runtime of test by removing multiple volume configs 2. added extra validation for node already peer detached 3. added test steps to cover peer detach when volume is offline Change-Id: I80413594e90b59dc63b7f4f52e6e348ddb7a9fa0 Signed-off-by: nchilaka <nchilaka@redhat.com>
* [testfix] Add sleep in snapshot failuresSri Vignesh2020-03-121-22/+27
| | | | | | | | | | | | Add sleep in test_snap_delete_original_volume.py after cloning a volume added sleep and then starting the volume. Changed io to write in one mount point otherwise seeing issues with validate io. removed baseclass cleanup because original volume is already cleaned up in testcase. Change-Id: I7bf9686384e238e1afe8491013a3058865343eee Signed-off-by: Sri Vignesh <sselvan@redhat.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>
* [Testfix] Remove python version dependency(Part 5)kshithijiyer2020-03-0921-98/+72
| | | | | | | | | Please refer to commit message of patch [1]. [1] https://review.gluster.org/#/c/glusto-tests/+/24140/ Change-Id: I5319ce497ca3359e0e7dbd9ece481bada1ee2205 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]: check peer probe behavior when glusterd is downnchilaka2020-03-051-0/+160
| | | | | | | | | | | | | | | | | | | | | BZ#1257394 - Provide meaningful errors on peer probe and peer detach Test Steps: 1 check the current peer status 2 detach one of the valid nodes which is already part of cluster 3 stop glusterd on that node 4 try to attach above node to cluster, which must fail with Transport End point error 5 Recheck the test using hostname, expected to see same result 6 start glusterd on that node 7 halt/reboot the node 8 try to peer probe the halted node, which must fail again. 9 The only error accepted is as below "peer probe: failed: Probe returned with Transport endpoint is not connected" 10 Check peer status and make sure no other nodes in peer reject state Change-Id: Ic0a083d5cb150275e927723d960e89fe1a5528fb Signed-off-by: nchilaka <nchilaka@redhat.com>
* [testfix] Add timeout to fix failuresSri Vignesh2020-03-034-11/+31
| | | | | | | | | | | Add extra time for beaker machines to validate the testcases for test_rebalance_spurious.py added cleanup in teardown because fix layout patch is still not merged. Change-Id: I7ee8324ff136bbdb74600b730b4b802d86116427 Signed-off-by: Sri Vignesh <sselvan@redhat.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] Fix timeout issue in test_heal_full_node_rebootkshithijiyer2020-02-261-1/+1
| | | | | | | | | | | | | | | | | | | | | Problem: The current timeout for reboot given in test_heal_full_node_reboot is about 350 seconds which works with most hardware configurations. However when reboot is done on slower systems which take time to come up this logic fails due to which this testcase and the preceding testcases fail. Solution: Change the timeout for reboot from 350 to 700, this wouldn't affect the testcase's perfromance in good hardware configurations as the timeout is for the max value and if the node is up before the testcase it'll exit anyways. Change-Id: I60d05236e8b08ba7d0fec29657a93f2ae53404d4 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Remove python version dependency(Part 4)kshithijiyer2020-02-2619-98/+58
| | | | | | | | | Please refer to commit message of patch [1]. [1] https://review.gluster.org/#/c/glusto-tests/+/24140/ Change-Id: I25d30f7bdb20f0825709c4c852140e1906870ce7 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Remove python version dependency(Part 3)kshithijiyer2020-02-2618-95/+63
| | | | | | | | Please refer to commit message of patch [1]. [1] https://review.gluster.org/#/c/glusto-tests/+/24140/ Change-Id: Ib357d5690bb28131d788073b80a088647167fe80 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Remove python version dependency(Part 2)kshithijiyer2020-02-2622-137/+89
| | | | | | | | Please refer to commit message of patch [1]. [1] https://review.gluster.org/#/c/glusto-tests/+/24140/ Change-Id: Ic0b3b1333ac7b1ae02f701943d49510e6d46c259 Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Remove python version dependency(Part 1)kshithijiyer2020-02-2627-257/+208
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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] Fix test_excerise_rebalance_command script failureskshithijiyer2020-02-251-35/+68
| | | | | | | | | | | | Script sometimes fails at expand volume with "Already part of volume" error fixed it with this patch. Change-Id: I628bbdb268e5a42112f68d9148da6bdb775acd26 Co-authored-by: Prasad Desala <tdesala@redhat.com>, Milind Waykole <milindwaykole96@gmail.com> Signed-off-by: Prasad Desala <tdesala@redhat.com> Signed-off-by: Milind Waykole <milindwaykole96@gmail.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [Testfix] Modify test to work with new performance.io-cache defaultkshithijiyer2020-02-251-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The default value of performance.io-cache was ON by default before gluster 6.0, in gluster 6.0 it was set to OFF. Solution: Adding code to check gluster version and then check weather it is ON or OFF as shown below: ``` if get_gluster_version(self.mnode) >= 6.0: self.assertIn("off", ret['performance.io-cache'], "io-cache value is not correct") else: self.assertIn("on", ret['performance.io-cache'], "io-cache value is not correct") ``` CentOS-CI failure analysis: This patch is expected to failed as if we run `gluster --version` on nightly builds the output returned as shown below: ``` # gluster --version glusterfs 20200220.a0e0890 Repository revision: git://git.gluster.org/glusterfs.git Copyright (c) 2006-2016 Red Hat, Inc. <https://www.gluster.org/> GlusterFS comes with ABSOLUTELY NO WARRANTY. It is licensed to you under your choice of the GNU Lesser General Public License, version 3 or any later version (LGPLv3 or later), or the GNU General Public License, version 2 (GPLv2), in all cases as published by the Free Software Foundation. ``` This output can't be parsed by get_gluster_version() function which is used in this patch to get the gluster version and check for perfromance.io-cache's default value accordingly. Change-Id: I00b652a9d5747cbf3006825bb17b9ca2f69cb9cd Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Add steps to stabilise glusterdSri Vignesh2020-02-256-54/+78
| | | | | | | | | | | Moved steps from teardown class to teardown and removed unwanted teardown class and rectified the testcase failing with wait for io to complete by removing the step because after validate io the sub process terminates and results in failure. Change-Id: I2eaf05680b817b681aff8b48683fc9dac88896b0 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [testfix] Add steps to add peer_probe_servers in cleanupSri Vignesh2020-02-2010-89/+60
| | | | | Change-Id: I0fa6bbacda16fb97d3454a8510a937442b5755a4 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [testfix] removed the rmdir which was merged in baseclassSri Vignesh2020-02-198-47/+4
| | | | | Change-Id: I04f7b7c894d48d0188379028412d9c6b48eac210 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [testfix] Add steps to stabilise content in glusterd - part2Sri Vignesh2020-02-1912-93/+57
| | | | | | | | | | and used wait for peer to connect and wait for glusterd to connect functions in testcases added fixes to check file exists increased timeout value for failure cases Change-Id: I9d5692f635ed324ffe7dac9944ec9b8f3b933fd1 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [TestFix] Changing code used to create arbiter volumeskshithijiyer2020-02-1922-289/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As distributed-arbiter and arbiter weren't present before patch [1], arbiter and distributed-arbiter volumes were created by the hack show below where a distributed-replicated or replicated volume's configuration was modified to create an arbiter volume. ``` @runs_on([['replicated', 'distributed-replicated'], ['glusterfs', 'nfs']]) class TestSelfHeal(GlusterBaseClass): ................. @classmethod def setUpClass(cls): ............... # Overriding the volume type to specifically test the volume # type Change from distributed-replicated to arbiter if cls.volume_type == "distributed-replicated": cls.volume['voltype'] = { 'type': 'distributed-replicated', 'dist_count': 2, 'replica_count': 3, 'arbiter_count': 1, 'transport': 'tcp'} ``` Now this code is to be updated where we need to remove code which was used to override volume configuration and just add arbiter or distributed-arbiter in `@runs_on([],[])` as shown below: ``` @runs_on([['replicated', 'distributed-arbiter'], ['glusterfs', 'nfs']]) class TestSelfHeal(GlusterBaseClass): ``` Links: [1] https://github.com/gluster/glusto-tests/commit/08b727842bc66603e3b8d1160ee4b15051b0cd20 Change-Id: I4c44c2f3506bd0183fd991354fb723f8ec235a4b Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Add steps to stabilize the existing content in ArbiterSri Vignesh2020-02-185-78/+84
| | | | | Change-Id: I2ba0c81dad41bdac704007bd1780b8a98cb50358 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Test] Add test to create 50k files & check heal with add brickkshithijiyer2020-02-181-0/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Testcase steps: 1.Set the volume option "metadata-self-heal": "off" "entry-self-heal": "off" "data-self-heal": "off" "self-heal-daemon": "off" 2.Bring down all bricks processes from selected set 3.Create IO (50k files) 4.Get arequal before getting bricks online 5.Bring bricks online 6.Set the volume option "self-heal-daemon": "on" 7.Check for daemons 8.Start healing 9.Check if heal is completed 10.Check for split-brain 11.Get arequal after getting bricks online and compare with arequal before getting bricks online 12.Add bricks to volume 13.Do rebalance and wait for it to complete 14.Get arequal after adding bricks and compare with arequal after getting bricks online Change-Id: I1598c4d6cf98ce99249e85fc377b9db84886f284 Co-authored-by: Vitalii Koriakov <vkoriako@redhat.com> Signed-off-by: Vitalii Koriakov <vkoriako@redhat.com> 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
* [testfix] Add steps to stabilize contents in snapshot - part2Sri Vignesh2020-02-186-88/+81
| | | | | | | | | used library functions to wait for glusterd to start and wait for peer to connect and made modifications in teardown part to rectified statements to correct values Change-Id: I40b4362ae1491acf75681c7623c16c53213bb1b9 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* Add steps to stabilize the existing content in glusterdSri Vignesh2020-02-1814-153/+143
| | | | | | | | | Added wait_for_io_to_complete function to testcases used wait_for_glusterd function and wait_for_peer_connect function Change-Id: I4811848aad8cca4198cc93d8e200dfc47ae7ac9b Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Test] Moved test_data_self_heal_daemon_off from afr to arbiter folderkshithijiyer2020-02-101-0/+364
| | | | | | | Change-Id: I1eacfd74c730d28e36bb8f7e3a1f574edc3d13c7 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] 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] Verify file modifications - glusterfindVinayak Papnoi2020-01-301-0/+233
| | | | | | | | | | | | | | | | | | | Verifying the glusterfind functionality with deletion of files. * Create a volume * Create a session on the volume * Create various files from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile * Modify the contents of the files from mount point * Perform glusterfind pre * Perform glusterfind post * Check the contents of outfile Files modified must be listed Change-Id: Ie696e194364b2b86a7ceb5fb6e10066ecc669577 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [testfix] Fix name used for snapshot creationVinayak Papnoi2020-01-291-87/+92
| | | | | | | | | | | | | | | | | | There can be a case where due to a failed tearDown of a previous test case, the snapshot creation might fail because of redundant snapshot of the same name present. This fix includes the changed snapshot names along with tearDown for deleting the snapshots created in the test case "test_snap_info_glusterd_restart.py". Changing the names of the test case function to something relevant to the test case. Making use of the method "wait_for_glusterd_to_start" in places where glusterd is restarted. Change-Id: I6cb50dc84d306194b6bd363daf7ae0ebd6bb12ee Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [testfix] Update test_snap_list_after_restartVinayak Papnoi2020-01-291-88/+109
| | | | | | | | | | | | | | | | | There can be a case where due to a failed tearDown of a previous test case, the snapshot creation might fail. This can happen when a redundant snapshot with the same name is present. This fix includes the changed snapshot names along with tearDown for deleting the snapshots created in the test case "test_snap_list_after_restart.py". This fix also includes the method 'wait_for_glusterd_to_start' where there is a restart of glusterd. Adding a check for validation of snapshots using snapname. Change-Id: If8b48a12bd067ad54dba742eeb88444beaf5f153 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [LibFix][TestFix] Add function get_unique_lv_list_from_all_serversSri Vignesh2020-01-281-11/+7
| | | | | | | | Added library to cleanup lv created after snapshot clone and made modifications with cleanup. Change-Id: I71a437bf99eac1170895510475ddb30748771672 Signed-off-by: Sri Vignesh <sselvan@redhat.com>
* [Testfix] Reduced number of created files. Deleted not needed loggingkshithijiyer2020-01-271-109/+40
| | | | | | | Change-Id: Id0cdda175865c84bef917211560acee8ea10fe7b 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>
* [Test] Added test case to copy directorykshithijiyer2020-01-241-0/+227
| | | | | | | | | | | Description: This test creates directories and subdirectories and their copies at mount point and checks for layout and directory information at all subvols. Change-Id: Iabce046e7ce63c5428061bcefb98d06359dac8bd Co-authored-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: Kartik_Burmee <kburmee@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [testfix] Use library methods in test_256_snapsVinayak Papnoi2020-01-231-109/+101
| | | | | | | | | | | | | | The test case 'test_256_snapshots.py' contains hard-coded commands which can be run using the existing library functions from the snap_ops.py library, such as: * snap_create * set_snap_config This patch includes usage of appropriate functions in place of the hard-coded commands along with various cosmetic changes. Change-Id: I6da7444d903efd1be6582c8fea037a5c4fddc111 Signed-off-by: Vinayak Papnoi <vpapnoi@redhat.com>
* [Test] Adding testcase to verify volume sanitykshithijiyer2020-01-221-0/+84
| | | | | | | | | | | | | | | | | Summary: Verify file/directory creation or deletion on volume doesn't leave behind any broken symlinks on the bricks. Steps: 1.Create 10 files and directories. 2.Check if broken symlinks are present on brick path. 3.Remove files and directories. 4.Check if broken symlinks are present on brick path. Change-Id: If65a5eaa0fe0e1b96f002496744580e0ede5a4af Co-authored-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com> Signed-off-by: kshithijiyer <kshithij.ki@gmail.com>
* [libfix][testfix] Add waiter function for glusterd and peer connected ↵Sri Vignesh2020-01-211-32/+12
| | | | | | | | | library files Moving waiters from testcase and adding it as function in library in gluster_init and peer_ops. Change-Id: I5ab1e42a5a0366fadb399789da1c156d8d96ec18 Signed-off-by: Sri Vignesh <sselvan@redhat.com>