I'm looking at buying a high mileage E46 320d. I've owned 2 in the past but nothing with over 120k miles. My budget will only allow me to look at cars with more miles on the clock. I'll be buying in the UK and want a 2004 for less than £4000. Just want to know how long these engines are good for?