Put the beans in a large bowl, cover with cold water and soak overnight. Rinse, then transfer to a saucepan, cover with cold water and cook for 45 minutes, or until just tender. Drain.
Meanwhile, heat the oil in a large saucepan. Add the leek and onion and cook over medium heat for 2–3 minutes until softened but not browned. Add the carrot, celery