1. A method for pre-provisioning validated database snapshots, the method comprising: receiving a plurality of database blocks corresponding to a point-in-time copy of a source database; storing the database blocks on a storage system; receiving transaction logs from the source database corresponding to transactions executed in the source database; creating multiple recovery milestones without haying received a request for provisioning a virtual database, each recovery milestone comprising database blocks from which a consistent snapshot of source database corresponding to a point in time can be created, wherein at least some of the database blocks are associated with multiple recovery milestones, the creating of each recovery milestone comprising: applying a set of transaction logs to either a plurality of database blocks received from the source database or a plurality of database blocks of a previous recovery milestone; and validating the recovery milestone created to determine whether the recovery milestone can be used to create a consistent snapshot of the source database, the validating comprising, responsive to determining that the recovery milestone is invalid, identifying a defect resulting in creation of the invalid recovery milestone and executing steps to fix the defect, the steps comprising receiving a recent version of a vendor library to create a corresponding valid recovery milestone; and responsive to receiving a request to provision a virtual database corresponding to a point in time, identifying a recovery milestone corresponding to the point in time, and provisioning the requested virtual database based on the recovery milestone.