Skip to content

IAsyncFile::incrementalDeleteHelper calls AsyncFileWinASIO::open() without specifying OPEN_UNBUFFERED triggering an error/assertion #1380

@KrzysFR

Description

@KrzysFR

See this forum thread for details, but I'm frequently getting 'FileOpenError' with message Must be unbuffered on Windows with 5.x and 6.0 versions.

I think I was able to track it down to incrementalDeleteHelper() in the IAsyncFile actor that is called to delete old storage or log files. It attempts to get the size of files it is removing, by opening them. In this instance, it does not pass the OPEN_UNBUFFERED flag when calling open(), which was causing the Windows port to throw in 5.x/6.0. This was changed to an ASSERT() in both windows and linux ports recently.

Reference<IAsyncFile> f = wait(IAsyncFileSystem::filesystem()->open(filename, IAsyncFile::OPEN_READWRITE | IAsyncFile::OPEN_UNCACHED, 0));

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions