Description of problem dht_readdirp_cbk sets the entry->inode to NULL for directory entries in order to force a lookup. This causes a massive slowdown when listing directories which contain a lot of sub-directories. If the inode for the directory is already present in the inode table, it implies that the inode was linked (ie, a lookup was performed already). If the inode for the directory entry is already linked, we do not need to send another lookup for the directory. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
REVIEW: https://review.gluster.org/21673 (cluster/dht: Set the entry->inode if dir was lookup up earlier) posted (#1) for review on master by N Balachandran
the above patch got abandoned due to inactivity timeout, and hence moving the bug to NEW.
This can cause stale data to be saved in the cache. Closing the BZ.