microsoft / microsoft/FASTER

hardcoded win32 MAX_PATH check in LogicalStorageDevice

Open
#951 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C#
Stars
6.6k
Forks
595
PR merge metrics
No merged PRs in 30d

Description

https://github.com/microsoft/FASTER/blob/7f71289fc1e5a188e90a50f26994fb0d88657dc0/cs/src/core/Device/LocalStorageDevice.cs#L110

We just hit this in our use case, where the machine has the extended max path registry key set, but we were still getting this, I looked at the class and it looks like it is throwing an exception if the path is > 260 characters, even with the registry key set

with this, even if you manually specify the special syntax to get win32 to use a extended path \\?\C:\some\path\here won't work

https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at cs/src/core/Device/LocalStorageDevice.cs#L110 and compare the check with the linked Windows maximum-path documentation. Trace how the path reaches this validation and identify the existing tests for LocalStorageDevice. Done means configured extended-length paths, including the ?\ syntax described in the issue, are not rejected solely for exceeding 260 characters.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.