StableBit DrivePool Release Final

StableBit DrivePool

StableBit DrivePool Release Final is now available for download:

In this post I’d like to make a quick recap of what’s new in this build since the last release final (

Bug Fixes

It has been quite a while since the StableBit DrivePool 2.0 release final and this build has accumulated quite a few bug fixes since then. Many issues were addressed in this release including UI glitches, service issues and file system issues.

Here are some of the highlights:

  • User Interface:
    •  Minimize / Maximize buttons were added to the horizontal UI.
    • Tasks such as balancing and background duplication can now be boosted in I/O priority or completely aborted from the UI.
    • There is a new Troubleshooting menu under the settings menu which allows you to collect a boot time file system log, file system tracing data or to reset StableBit DrivePool’s settings to a clean install state (with your duplication settings and pooled data not affected).
    • You can now send a test email message after entering an email address for notifications.
    • Disk tooltips were not showing up sometimes.
    • The disks list was sometimes redrawing in a “glitchy” way causing an annoying flicker.
    • The disk index (or number) is now shown in the disk tooltip.
    • Performance statistics will now update in 2 second intervals (instead of every second) in order to make them more readable.
    • There is a new community submitted Bulgarian translation (thanks!). To contribute other translations visit:
  • Service:
    • Got rid of excessive error report generation in some places.
    • Pool performance statistics were being reported for all pools in aggregate instead of for each pool individually.
    • When the last disk that is part of a pool goes missing or is disconnected, the pool’s settings will be kept for 365 days just in case that pool comes back. Previously, that pool’s settings would have been reset.
    • Balancing plugins are now given 30 seconds to make their balancing calculations or else they will be forcefully aborted. This prevents a balancing plugin from stalling a balancing pass.
    • The pool will always be measured first before performing other tasks, such as the background consistency check. This change was made mainly to thwart user confusion over incomplete pool measurements showing up in the UI.
    • Improvements were made to the disk emptying algorithm when balancing.
    • Disk removal no longer requires a remeasure pass after it completes.
  • File System:
    • The virtual disk enumerator now registers as a storage controller making our virtual disk be more compatible with 3rd party software that query for its controller.
    • Reparse points can now be created on the pool. This adds support for symbolic links, junction points and mount points on the pool. This one took a lot of effort to get done.
    • Fixed a consistent system crash on x86 systems triggered by heavy I/O.
    • Byte range locks were not following the same behavior as NTFS leading to issues with all kinds of 3rd party software.
    • On drive removal, empty “PoolPart…” files were being created needlessly.
    • A file size tracking inconsistency was fixed that was causing the pool measurement to drift.

For a full list of changes and fixes you can refer to the change log here:

File Placement

File placement is a new feature of StableBit DrivePool 2.1 and it gives you the ability to specify which disks will be used to store files in one or more folders on the pool. Further down I’ll show you some examples of how I’m using this feature to organize my pools in a way that wasn’t possible before.


File placement is accessible from the Pool Options menu under Balancing…

File Placement

This new feature adds the flexibility of per disk file organization with the convenience of drive pooling. It’s designed to give you the best of both worlds.

I’ve already talked extensively about the file placement UI and how it works in my previous blog posts, so I’m not going to repeat that. If you’d like you can refer to those blog posts here:

Instead, in this post I’m going to give you some practical examples of how I’m using file placement myself in order to optimize my virtual machine usage.

File Placement and SSDs

First, I’m going to show you how I’m using file placement combined with SSDs in order to seamlessly optimize the performance of one or two VMs on the pool.

In one of my machines I have a pool with a small SSD drive and a few larger spinning disks. I have a few virtual machines that I use, but some of them I use more often than others and I would like to place those frequently used VMs on the SSD drive for better performance. I started out by placing 2 virtual machines on the SSD drive using file placement.


This gave me a tremendous performance boost whenever I used those VMs and it worked out great.

But as my usage changed, and the virtual machines grew, I decided to get a second SSD for my virtual machines and to spread them out over both SSDs. All I had to do is add the new SSD to the pool and designate my virtual machine folders to be placed on that disk as well.


This approach allowed me to create a type of “sub-pool” that can be easily expanded without manually moving files around from disk to disk.

In the future, I can even designate a separate SSD for each VM, all on the same pool.


The great thing about doing this with StableBit DrivePool and file placement is that the path to the VMs doesn’t change, regardless of where they’re actually stored. My virtualization software (WMWare Workstation) always sees my virtual machines on the same pool drive letter and I don’t have to worry about managing multiple pools or dealing with OS licensing issues (that tend to crop up when moving VMs around). All I do is flip a few check boxes in StableBit DrivePool and that’s it.

File Placement and Disk Throughput

I’ll give you another example that doesn’t involve SSDs.

On another system that’s mostly dedicated to running virtual machines, putting all of the VMs on SSDs is cost prohibitively expensive. So instead I’ve opted to use file placement to group VMs that I tend to use at the same time to be placed on separate spinning disks. This allows me to power on and use multiple virtual machines at the same time without oversaturating the disk I/O.


With this setup, I can use virtual machines 1, 2, 3 and 4 at the same time, without incurring a huge disk I/O penalty. The same goes for virtual machines 5, 6, 7 and 8.

In the future, I can add more spinning disks to the pool and reorganize my VMs to let me run more of them at the same time without incurring a disk I/O penalty.

Again, doing this with StableBit DrivePool’s file placement is a breeze and allows me to keep all of my virtual machines at the same path while at the same time gives me the flexibility of future expansion and lets me choose which disks should be used to store each VM.

Coming up Next

Now that the 2.1 release final of StableBit DrivePool is out, StableBit Scanner 2.5.0 is on its way to a release final as well. Coming up within a week the next public BETA of StableBit Scanner 2.5.0 and hopefully soon after that a release final.

After that we’re going to see a public BETA of StableBit DrivePool 2.2.