improve push performance

To make it work:
- need to append &amp;rewriteBatchedStatements=true to mysql connection url
- ~~need to change entity id generation strategy to Table~~
- need to add a few hibernate properties

Point 1 needs to be performed manually (edit zanata-ds.xml or standalone.xml if in openshift). Point ~~2~~ and 3 are done in this PR

**note**
turn out we can not use table ID generator in JBoss(managed environment). Quoted from MultipleHiLoPerTableGenerator javadoc
> A hilo IdentifierGenerator that returns a Long, constructed using a hi/lo algorithm. The hi value MUST be fetched in a seperate transaction to the Session transaction so the generator must be able to obtain a new connection and commit it. Hence this implementation may not be used when the user is supplying connections. In this case a SequenceHiLoGenerator would be a better choice (where supported).

The problem is we get connection from datasource therefore it can't guarantee it to be a new connection and it may fail with exception "Caused by: java.sql.SQLException: You cannot commit during a managed transaction!"

Therefore batch insert is not possible with mysql. Batch update can be achieved.
There is a limit on packet size http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_max_allowed_packet but this is usually big enough. The protocol limit is 1G to allow BLOB etc.

We can't use positions because we don't know what positions they are. The argument is from caller as resIds and some of them may be obsolete/missing.

I was thinking to throw an exception when the size limit is over 100(current batch) but then I thought what if we change batch size in the future. Someone on stackoverflow claimed he has tried 8000 in IN clause and it works fine so I guess it should be fine as long as we all do code review