"drush sql-sync" failing with Illegal string offset 'site' backend.inc:1030
I had same issue and fixed it by specifying the %drush-script path for my remote machine alias. Just ssh into your remote machine and run "drush status" to find the correct "Drush script" path and put it in under path-aliases array. So it would look like this:

'path-aliases' =&gt; array(
  '%drush-script' =&gt; '/{your_path}/drush.php',
)