diff --git a/src/XrdFileCache/XrdFileCache.cc b/src/XrdFileCache/XrdFileCache.cc index c2f6bad21d7..39329047cce 100644 --- a/src/XrdFileCache/XrdFileCache.cc +++ b/src/XrdFileCache/XrdFileCache.cc @@ -254,6 +254,11 @@ Cache::GetNextFileToPrefetch() } // std::sort(m_files.begin(), m_files.end(), myobject); + + size_t l = m_files.size(); + int idx = rand() % l; + File* f = m_files[idx]; + std::random_shuffle(m_files.begin(), m_files.end()); File* f = m_files.back(); f->MarkPrefetch();