One of my clients is insistent on having some promotional products that are free. They cause a lot of problems.
The most recent is: Trying to checkout with a cart that has a price of zero breaks the Tiered shipping module if using mysql. It dies with an exception "Truncated incorrect DOUBLE value: '0E-8'"
This change fixed it for me: http://bitbucket.org/alexrobbins/satchmo/changeset/b6b3277ec1fd