I have a REST based application which is being upgraded from v1 to v2 and migration has to be done lazily.
In v1 I have some data say investigator saved in one bean and bean is persisted in DB.
In v2, I have a GET call
HTTP GET @ /investigators
From a REST point of view, it does not matter when the backend behind the REST interface will have data available. If your lazy migration forces you to provision the data for a specific investigator and the moment it is requested for the first time, this fine. I can see no violation of REST principles.
Of course the code that implements the GET request should not directly copy data from DB1 to DB2. It should call a service that does this behind the scenes.