Closed perrynzhou closed 4 years ago
The dht_selfheal_layout_new_directory call's at the time of set layout on a directory at backend. As you can see logs are throwing below messages
[2020-08-31 01:29:57.098180] I [MSGID: 109063] [dht-layout.c:641:dht_layout_normalize] 0-dht3-dht: Found anomalies [{path=/}, {gfid=00000000-0000-0000-0000-000000000001}, {holes=1}, {overlaps=0}] [2020-08-31 01:29:57.098187] D [MSGID: 0] [dht-common.c:1325:dht_needs_selfheal] 0-dht3-dht: fixing assignment on /
Once layout has been configured and volume has been mount on another client dht_lookup_dir_cbk has found the layout and it does not call the function dht_selfheal_layout_new_directory.There are other condition also when dht call's this function like when dht found the xattr needs to be heal on backend dht call's this function.
The xattr ( trusted.glusterfs.mdata) is specific to ctime features if ctime feature is enable the xattr has been populate on the backend. By default feature is enabled that's why you are seeing this parameter.
The dht_selfheal_layout_new_directory call's at the time of set layout on a directory at backend. As you can see logs are throwing below messages
[2020-08-31 01:29:57.098180] I [MSGID: 109063] [dht-layout.c:641:dht_layout_normalize] 0-dht3-dht: Found anomalies [{path=/}, {gfid=00000000-0000-0000-0000-000000000001}, {holes=1}, {overlaps=0}] [2020-08-31 01:29:57.098187] D [MSGID: 0] [dht-common.c:1325:dht_needs_selfheal] 0-dht3-dht: fixing assignment on /
Once layout has been configured and volume has been mount on another client dht_lookup_dir_cbk has found the layout and it does not call the function dht_selfheal_layout_new_directory.There are other condition also when dht call's this function like when dht found the xattr needs to be heal on backend dht call's this function.
The xattr ( trusted.glusterfs.mdata) is specific to ctime features if ctime feature is enable the xattr has been populate on the backend. By default feature is enabled that's why you are seeing this parameter.
@mohit84 thank you very much.i got it
@csabahenk @mykaul @mohit84 @itisravi @amarts @hari when first mount volume taht will call dht_selfheal_layout_new_directory,but when second mount with different mount dir, dht_selfheal_layout_new_directory not be called,cal you tell me why?
@csabahenk @mykaul @mohit84 @itisravi @amarts @hari what's meaning for trusted.glusterfs.mdata and trusted.glusterfs.mdata?is has way to trace with gdb for that attribute?