update pending contributions transaction date wrong
If you are using Batch update using profile than including Receive date in your profile will actually solve your issue. There has been change in code to handle contribution fields correctly now. 

The workflow does make sense when changing contribution to completed the receive date is updated to now(). The system assumes that money has come in now unless you specify the exact date. 

So when you include Receive date in your profile it will be pre populated with old values and hence it won't update to now().

HTH

Pradeep