From: Jeffrey Altman Date: Wed, 4 Jan 2012 04:36:50 +0000 (-0500) Subject: Windows: Do not prime the service directory cache X-Git-Tag: upstream/1.8.0_pre1^2~2846 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=b92a676517084432c64e1ccb1efff59e7bcbe088;p=packages%2Fo%2Fopenafs.git Windows: Do not prime the service directory cache Performing a directory enumeration is an expensive operation that we should be attempting to avoid. The current directory enumeration and evaluate target requests will use inline bulk status RPCs to the file server which obtain status for 49 items at a time from a single directory. Change-Id: I78e08680fec9715c3c446d0c4c5226cd79db80bd Reviewed-on: http://gerrit.openafs.org/6502 Tested-by: BuildBot Reviewed-by: Peter Scott Tested-by: Jeffrey Altman Reviewed-by: Jeffrey Altman --- diff --git a/src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp b/src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp index 5e4157ac3..b62a0bded 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp @@ -223,26 +223,6 @@ AFSQueryDirectory( IN PIRP Irp) TRUE); bReleaseFcb = TRUE; - - // - // Tell the service to prime the cache of the directory content - // - - ntStatus = AFSEnumerateDirectoryNoResponse( &pCcb->AuthGroup, - &pFcb->ObjectInformation->FileId); - - if( !NT_SUCCESS( ntStatus)) - { - - AFSDbgLogMsg( AFS_SUBSYSTEM_FILE_PROCESSING, - AFS_TRACE_LEVEL_ERROR, - "AFSQueryDirectory Enumerate directory failure for parent %wZ Mask %wZ Status %08lX\n", - &pCcb->DirectoryCB->NameInformation.FileName, - &pCcb->MaskName, - ntStatus); - - try_return( ntStatus); - } } else {