if any data in resultset is stored on server with utf8_bin or latin1_bin or any other _bin collation, BINARY flag is passed for the field.
As BINARY flag is used to differentiate TEXT from BLOB too, MySQLdb chooses not to apply unicode() on utf8 data that has the flag set.
Though there might be plans to separate TEXT from BLOB in protocol, for now checking character set existence/value for the field in information on the wire could work better than current behavior.
That of course might require changing of converters interface..
Log in to post a comment.