{"comment":{"url":"https://api.github.com/repos/blue-yonder/sqlalchemy_exasol/comments/16296022","html_url":"https://github.com/blue-yonder/sqlalchemy_exasol/commit/5478bffcc25673891df75f5396921804e8817755#commitcomment-16296022","id":16296022,"user":{"login":"BY-jk","id":5099251,"avatar_url":"https://avatars.githubusercontent.com/u/5099251?v=3","gravatar_id":"","url":"https://api.github.com/users/BY-jk","html_url":"https://github.com/BY-jk","followers_url":"https://api.github.com/users/BY-jk/followers","following_url":"https://api.github.com/users/BY-jk/following{/other_user}","gists_url":"https://api.github.com/users/BY-jk/gists{/gist_id}","starred_url":"https://api.github.com/users/BY-jk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BY-jk/subscriptions","organizations_url":"https://api.github.com/users/BY-jk/orgs","repos_url":"https://api.github.com/users/BY-jk/repos","events_url":"https://api.github.com/users/BY-jk/events{/privacy}","received_events_url":"https://api.github.com/users/BY-jk/received_events","type":"User","site_admin":false},"position":null,"line":null,"path":"","commit_id":"5478bffcc25673891df75f5396921804e8817755","created_at":"2016-02-24T13:15:18Z","updated_at":"2016-02-24T13:15:18Z","body":"I looked a bit into it. The EXADialect and PyODBCConnector are both 'competing' for initializing `supports_unicode_statements`.\r\n\r\nEXADialect (421): `supports_unicode_statements = sys.platform != 'darwin'`\r\nPyODBCConnector(21):\r\n`if util.py2k:\r\n        # PyODBC unicode is broken on UCS-4 builds\r\n        supports_unicode = sys.maxunicode == 65535\r\n        supports_unicode_statements = supports_unicode`\r\nPyODBCConnector(139):\r\n`self.supports_unicode_statements = (\r\n            not util.py2k or\r\n            (not self.freetds and not self.easysoft)\r\n        )`\r\n\r\non darwin, the statement on line 21 evaluates to `True`, same for line 139 in the ìnitialize()` function as we are testing on py2k and neither use freetds nor easysoft as odbc implementation.\r\n\r\nThis is a quite fragile initialization of configuration variables. It seems likely that changing the inheritance order changes the outcome of the initialization. Not sure yet what breaks the tests `test_numeric_as_float` and `test_render_literal_numeric_asfloat`."}}