The creation of this file was introduced just recently (somewhere in the commits of april 1st - april 4th). This doesn't seem right.
Redis uses the fork() UNIX system API to create a point-in-time snapshot of the data store for storage to disk. This impacts several features on Redis: AOF/RDB backup, master-slave synchronization, and clustering. Windows does not have a fork-like API available, so we have had to simulate this behavior by placing the Redis heap in a memory mapped file that can be shared with a child(quasi-forked) process. By default we set the size of this file to be equal to the size of physical memory. In order to control the size of this file we have added a maxheap flag. See the Redis.Windows.conf file in msvs\setups\documentation (also included with the NuGet and Chocolatey distributions) for details on the usage of this flag.
Thanks for explaining this.
How can i move this file to disk D:/ ?
You can starting with 2.8.12, using the heapdir config setting. Recent releases are here: https://github.com/MSOpenTech/redis/releases, in addition to nuget and chocolatey.
Wow. I just discovered this is the reason why my hard drive is always full--6 of these files, taking up almost 40GB, after about 30 minutes of playing around with Redis at a hackathon install fest. I didn't see them in my WinDirStat analyses because I neglected to run as admin. They also remained on my drive after uninstalling Redis. Is there a warning about this somewhere in the install docs? I didn't see one in my quick scan.
Can I delete these QFork files? They took 60% of my drive capacity and they seem to claim 2GB a day, even though I did not add any single key to Redis DB for a while.
yes, the files can be deleted when Redis is not running.
Version 2.8.2400 should already take care of auto-cleaning those files.
Thank you, I'll upgrade to the newer version which was not done for a while, since I didn't use the application using redis for a while.