Unless database1 and database2 are somehow replicated, I can't see your use case working. The aim of 2LC is to act as cache of read data. It's not mean to act as primary source of data. It's only a temporary place to hold recent entites/collections/queries to avoid going to the server again. If data is evicted from the 2LC, it expects to retrieve it again from the database. But, as you can see in your case, db1 and db2 need to have data replicated between them for your use case to work.