[Bugs] [Bug 1672480] Bugs Test Module tests failing on s390x

bugzilla at redhat.com bugzilla at redhat.com
Thu Mar 7 09:44:07 UTC 2019


https://bugzilla.redhat.com/show_bug.cgi?id=1672480



--- Comment #59 from abhays <abhaysingh1722 at yahoo.in> ---
(In reply to Nithya Balachandran from comment #57)
> (In reply to abhays from comment #55)
> > (In reply to Nithya Balachandran from comment #54)
> > > > 
> > > > However, the test cases are still failing and only pass if x86 hash values
> > > > are provided(Refer to comment#8):-
> > > > ./tests/bugs/glusterfs/bug-902610.t
> > > > ./tests/bugs/posix/bug-1619720.t
> > > 
> > > Please provide more information on what changes you tried.
> > 
> > For tests/bugs/glusterfs/bug-902610.t:-
> > In the test case, after the kill_brick function is run, the mkdir $M0/dir1
> > doesn't work and hence the get_layout function test fails. So,as a
> > workaround we tried not killing the brick and then checked the functionality
> > of the test case, after which the dir1 did get created in all the 4 bricks,
> > however, the test failed with the following output:-
> 
> The mkdir function will fail if the hashed brick of the directory being
> created is down. In your case, the change in hashed values means the brick
> that was killed is the hashed subvol for the directory. Killing a different
> brick  should cause it to succeed.
> 
> In any case this is not a feature that we support anymore so I can just
> remove the test case.
> 
> > Therefore, can these changes be added in the test case with a condition for
> > s390x separately?
> 
> I do not think we should separate it out like this. The better way would be
> to just find 2 bricks that work for both big and little endian.
> I will try out your changes on a big endian system and see if this
> combination will work there as well.
> 
> > 
> > Also, We have a few queries on the tests behaviour.
> > When a directory or a file gets created, according to me, it should be
> > placed in the brick depending on its hash range and value of the
> > file/directory.
> > However, in the above test, as you can see, if we don't kill the
> > bricks{2,3}, the directory gets created in all the bricks{0,1,2,3}.So, does
> > it not consider hash values and range at this point or is it something to do
> > with mounting FUSE?
> 
> The way dht creates files and directories is slightly different.
> 
> For files, it calculates the hash and creates it in the subvolume in whose
> directory layout range it falls.
> For directories, it first tries to create it on the hashed subvol. If for
> some reason that fails, it will not be created on the other bricks. In this
> test, for s390x, one of the bricks killed was the hashed subvol so mkdir
> fails. 
> The solution here is to make sure the bricks being killed are not the hashed
> subvol in either big or little endian systems.

Thanks for this explanation.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list