I have a new server and am planning to upgrade the paltry 2 GB of memory to the maximum of 16 GB. (Theoretically 8 GB is the limit, but empirically 16 GB has been shown to work.) Some guides advise that ECC memory is not that important, but I'm not so sure I believe this.
I've installed FreeNAS and am planning to add ZFS volumes as soon as my new hard drives arrive. Would it be stupid to skimp and get non-ECC memory for a ZFS-based NAS? If it's necessary, then I'll bite the bullet, but if it's just paranoia, then I'll probably skip it.
Is there any reason ZFS or FeeeNAS specifically would require ECC memory, or suffer especially when running on a system using non-ECC memory?
ZFS only protects your investment in the data on the disk. If the server is to be in production then you want the highest possible uptime and ECC helps this by allowing the server to tolerate a ONE BIT error in failing memory. This can give you time to schedule and replace failing memory without a panic.
ECC RAM is a good thing, but let's look at the context...
For your intended use, a ProLiant Microserver is a nice small form-factor low-impact server. It lacks some of the attributes commonly associated with production-quality systems (only four drive bays, single power supply, weaker CPU). So, I think you'll run into problems associated with those deficiencies far sooner than the effects of not having error-correcting RAM. The guides you've read are correct... ECC RAM is not going to be that important in that particular system...
This does not hold true for higher-end production-quality systems.
I'll add: The Microserver is spec'd with ECC RAM. Why wouldn't you use it?
I would argue that running FreeNAS with non-ECC RAM is a stupid idea, as is running it as a virtualized guest, when the data stored on the ZFS volume is important.
Joshua Paetzel, one of the FreeNAS developers, has a good write-up on this topic: http://www.freenas.org/whats-new/2015/02/a-complete-guide-to-freenas-hardware-design-part-i-purpose-and-best-practices.html.
TL;DR