Skip to content

Fix per-process image cache key equality#1108

Open
fallintoplace wants to merge 1 commit into
rapidsai:mainfrom
fallintoplace:fix/per-process-cache-key-equality
Open

Fix per-process image cache key equality#1108
fallintoplace wants to merge 1 commit into
rapidsai:mainfrom
fallintoplace:fix/per-process-cache-key-equality

Conversation

@fallintoplace

Copy link
Copy Markdown

Summary

Fix per-process image cache key equality so entries with the same tile location but different file hashes do not alias.

What changed

  • compare both file_hash and location_hash in the per-process cache key equality functor
  • add a CPU-only regression test that inserts two cache entries with the same tile location and different file hashes
  • wire the new regression test into cucim_tests

Why

The per-process cache hash already mixed file_hash and location_hash, but equality only compared location_hash.

That allowed different files or IFDs with matching tile coordinates to be treated as the same cache key, which could return the wrong cached tile or reject a valid insert as a duplicate.

Validation

  • reviewed the per-process cache hash/equality implementation and confirmed the mismatch with the shared-memory cache comparator
  • added a regression test through the public cache manager API to exercise the collision case directly
  • attempted local CMake configure, but this machine cannot build the project because FindCUDAToolkit fails to locate nvcc

@fallintoplace fallintoplace requested review from a team as code owners June 27, 2026 21:05
@copy-pr-bot

copy-pr-bot Bot commented Jun 27, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant