13.07.2016 09:36, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:58 AM, Dmitry Melekhov <[email protected]
<mailto:[email protected]>> wrote:
13.07.2016 09:26, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:50 AM, Dmitry Melekhov <[email protected]
<mailto:[email protected]>> wrote:
13.07.2016 09:16, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:38 AM, Dmitry Melekhov
<[email protected] <mailto:[email protected]>> wrote:
13.07.2016 09:04, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:29 AM, Dmitry Melekhov
<[email protected] <mailto:[email protected]>> wrote:
13.07.2016 08:56, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:23 AM, Dmitry Melekhov
<[email protected] <mailto:[email protected]>> wrote:
13.07.2016 08:46, Pranith Kumar Karampuri пишет:
On Wed, Jul 13, 2016 at 10:10 AM, Dmitry
Melekhov <[email protected]
<mailto:[email protected]>> wrote:
13.07.2016 08:36, Pranith Kumar Karampuri
пишет:
On Wed, Jul 13, 2016 at 9:35 AM, Dmitry
Melekhov <[email protected]
<mailto:[email protected]>> wrote:
13.07.2016 01:52, Anuradha Talur пишет:
----- Original Message -----
From: "Dmitry Melekhov"
<[email protected]
<mailto:[email protected]>>
To: "Pranith Kumar
Karampuri"
<[email protected]
<mailto:[email protected]>>
Cc: "gluster-users"
<[email protected]
<mailto:[email protected]>>
Sent: Tuesday, July 12, 2016
9:27:17 PM
Subject: Re: [Gluster-users]
3.7.13, index healing broken?
12.07.2016 17:39, Pranith
Kumar Karampuri пишет:
Wow, what are the steps to
recreate the problem?
just set file length to
zero, always reproducible.
If you are setting the file
length to 0 on one of the bricks
(looks like
that is the case), it is not a bug.
Index heal relies on failures
seen from the mount point(s)
to identify the files that need
heal. It won't be able to
recognize any file
modification done directly on
bricks. Same goes for heal info
command which
is the reason heal info also
shows 0 entries.
Well, this makes self-heal useless
then- if any file is accidently
corrupted or deleted (yes! if file
is deleted directly from brick this
is no recognized by idex heal too),
then it will not be self-healed,
because self-heal uses index heal.
It is better to look into bit-rot
feature if you want to guard against
these kinds of problems.
Bit rot detects bit problems, not missing
files or their wrong length, i.e. this is
overhead for such simple task.
It detects wrong length. Because checksum
won't match anymore.
Yes, sure. I guess that it will detect missed
files too. But it needs far more resources,
then just comparing directories in bricks?
What use-case you are trying out is leading
to changing things directly on the brick?
I'm trying to test gluster failure tolerance
and right now I'm not happy with it...
Which cases of fault tolerance are you not happy
with? Making changes directly on the brick or
anything else as well?
I'll repeat:
As I already said- if I for some reason ( real
case can be only by accident ) will delete file
this will not be detected by self-heal daemon, and,
thus, will lead to lower replication level, i.e.
lower failure tolerance.
To prevent such accidents you need to set selinux
policies so that files under the brick are not modified
by accident by any user. At least that is the solution
I remember when this was discussed 3-4 years back.
So only supported platfrom is linux? Or, may be, it is
better to improve self-healing to detect missing or
wrong length files, I guess this is very low cost in
terms of host resources operation.
Just a suggestion, may be we need to look to
alternatives in near future....
This is a corner case, from design perspective it is
generally not a good idea to optimize for the corner case.
It is better to protect ourselves from the corner case
(SElinux etc) or you can also use snapshots to protect
against these kind of mishaps.
Sorry, I'm not agree.
As you know if on access missed or wrong lenghted file from
fuse client it is restored (healed), i.e. gluster recognizes
file is wrong and heal it , so I do not see any reason to
provide this such function as self-healing.
Thank you!
Ah! Now how do you suggest we keep track of which of 10s of
millions of files the user accidentally deleted from the brick
without gluster's knowledge? Once it comes to gluster's knowledge
we can do something. But how does gluster become aware of
something it is not keeping track of? At the time you access it
gluster knows something went wrong so it restores it. If you
change something on the bricks even by accident all the data
gluster keeps (similar to journal) is a waste. Even the disk
filesystems will ask you to do fsck if something unexpected
happens so full self-heal is similar operation.
You are absolutely right- question is why gluster does not become
aware about such problem is case of self-healing?
Because the operations that are performed directly on brick do not go
through gluster stack.
OK, I'll repeat-
As you know if on access missed or wrong lenghted file from fuse client
it is restored (healed), i.e. gluster recognizes file is wrong and heal
it , so I do not see any reason to provide this such function as
self-healing.
--
Pranith
--
Pranith
_______________________________________________
Gluster-users mailing list
[email protected]
http://www.gluster.org/mailman/listinfo/gluster-users