Using embedded node client in 2.2.0

Hi All,
We use embedded client node to send/receive data from elasticsearch for a while. I am trying to upgrade to ES 2.2.0, and when using bulk indexing requests I get tons of these exceptions in the log -

ProcessClusterEventTimeoutException[failed to process cluster event (put-mapping [entity]) within 30s]
at org.elasticsearch.cluster.service.InternalClusterService$2$
at java.util.concurrent.ThreadPoolExecutor.runWorker(

If I check the master node logs, it lists pending nodes which are always my embedded node client IPs....

Also, I see that there are way too many put_mapping tasks piling up....

Is it a good idea to embed node client in your jvm with 2.2.0? what has changed between ES 1.7.X to 2.2 that may cause this behavior? Should I switch to using transport client instead? Please advice.