I think that the issue is some of the underlying components in Calibre do not obey the CALIBRE_TEMP_DIR setting and use the system temp setting regardless which is why you get a problem if there is NO space at that location.