Bring a large saucepan of water to the boil then add spaghetti and let cook until al dente. Drain and run cold tap water over spaghetti for a minute making sure all the spaghetti is slightly cooled by the water.
In a medium sized saucepan heat oil and fry garlic, onion, carrot and dried oregano until very tender.
Add vegetable stock and tomatoes. Wait until it boils then turn heat to medium and add bacon and olives.
In a small bowl mix cornflour and cold water together. Slowly pour mixture into sauce while stirring.
When sauce starts to boil again add mushrooms and spaghetti. Season with salt and pepper.
Serve in a bowl with parmesan cheese and fresh basil.