I have a 2003 BMW 330i that is running rough at idle. When I drive, it feels like it is losing power. Sometimes the gears do not shift when supposed to. When at a stop light, the RPM's rev from 500-900? And it feels like the car is giving a little gas by itself. I replaced the spar kplugs, belts, fuel injection service, and fuel filter for over 800! I used all this money and the problem is not solved. I had the codes read and it came with about 7 codes. The mechanic said he would replace the back o2 sensors but I was under the impression that the back ones did not control how the car actually runs. Can anyone help?