How to Make It
In a large pot, heat the oil over moderately high heat. Add the sausage and cook, stirring frequently, until browned, about 5 minutes. Remove the sausage with a slotted spoon.
Reduce the heat to moderate. Add the onion, carrot, celery, garlic, thyme, and bay leaf to the pot and cook, stirring occasionally, until the vegetables soften, about 10 minutes.
Meanwhile, combine 2 cups of the beans and 2 cups of the water in a blender and puree until smooth.
Add the tomatoes, the bean puree, the remaining 8 cups water, the salt, and the pepper to the pot. Bring to a boil, skimming any foam that rises to the surface. Stir in the sausage, the remaining 2 cups beans, and the spinach. Simmer until the spinach wilts, about 3 minutes. Serve the soup topped with grated Parmesan, and pass more Parmesan at the table.