Make metadata code independent of mysql. Make sure metadata repositories get properly decorated.

You mean why the decorator exists to begin with? The idea is to let the normal repository code work/keep working without worrying about indexing and then to wrap the indexing functionality around it in two tactical places, namely 
1. around the repository, catching inserts and deletes to make sure the documents in the index are also inserted and deleted.
2. around the metadata service, catching metadata changes to make sure the index mapping reflects the correct metadata structure.

The whole bit about "not worrying" about indexing seems not to be overly optimistic, cause it's causing a bit of a hassle getting this to work. :)