The big issue being missed here is accuracy of data retained. Whose responsibility is it when, data is wrong or missing. How server will the criminal penalties be for any errors, considering errors can be generated by faulty hard disk drives, faulty hardware, faulty power supply and of course human error and purposeful alteration or deletion.
So ISPs are required to retain data, so how many years in jail do they get when there's a lighting strike and all their servers are wiped out.
Also accuracy of data retention methods, the intent is to use this data in criminal prosecution, what penalty will the ISP pay if the data is proved in error after a person has been convicted off a crime based upon that data.
Currently ISP retain data to cover bill payment, fees in the order or 10 to 50 dollars, that's how reliable their data system has to be, when that data is used in criminal prosecution you a re talking civil risk in the order of millions of dollars, how much more to have to be spend to upgrade the reliability of the data retention systems to adequately cover that risk.