Re: spurious error in self-heald.t

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Was able to recreate it. Thanks for the report. Will look into why this could possibly happen.
-Krutika


From: "Emmanuel Dreyfus" <manu@xxxxxxxxxx>
To: "Emmanuel Dreyfus" <manu@xxxxxxxxxx>
Cc: "Gluster Devel" <gluster-devel@xxxxxxxxxxx>
Sent: Friday, November 28, 2014 4:00:01 PM
Subject: Re: spurious error in self-heald.t

Would such a workaround make sense?

diff --git a/xlators/cluster/afr/src/afr-self-heald.c b/xlators/cluster/afr/src/
afr-self-heald.c
index a341015..dd7ac1a 100644
--- a/xlators/cluster/afr/src/afr-self-heald.c
+++ b/xlators/cluster/afr/src/afr-self-heald.c
@@ -547,6 +579,11 @@ afr_shd_full_sweep (struct subvol_healer *healer, inode_t *inode)
                                          entry->d_stat.ia_gfid);
 
                        if (entry->d_stat.ia_type == IA_IFDIR) {
+                                if (entry->inode->ia_type == IA_INVAL) {
+                                        inode_unref (entry->inode);
+                                        entry->inode = afr_shd_inode_find (this,
+                                            subvol, entry->d_stat.ia_gfid);
+                                }
                                ret = afr_shd_full_sweep (healer, entry->inode);
                                if (ret)
                                        break;
--
Emmanuel Dreyfus
manu@xxxxxxxxxx
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://supercolony.gluster.org/mailman/listinfo/gluster-devel

_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://supercolony.gluster.org/mailman/listinfo/gluster-devel

[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux