Since I was trying to break the schemaname.tablename by overcomplicating it and not doing a very good search here first (
DDC-639, sorry Roman!), I happened to notice that the quoteIdentifier method in AbstractPlatform doesn't appear to be correctly quoting the schema and table name if quotes are needed. I'm not using any quoting but just glancing at the code, shouldn't $str be exploded on '.' in case of a schema.tablename string passed in? The current method looks like it will return (quote)schemaname.tablename(quote) instead of (quote)schemaname(quote).(quote)tablename(quote).
Maybe something along the lines of:
$expStr = explode('.', $str);
return $c . join("$c.$c", $expStr) . $c;
Awesome piece of work! It rocks!!