Skip to content

Commit

Permalink
Merge pull request #3 from buzzfeed/mysql_8_keyerror
Browse files Browse the repository at this point in the history
tornado_mysql: catch mysql 8 keyerror 255 exception
  • Loading branch information
svang-bf authored Feb 1, 2024
2 parents 47d1ed9 + 4083c64 commit 1cc2eec
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
8 changes: 8 additions & 0 deletions tornado_mysql/charset.py
Original file line number Diff line number Diff line change
Expand Up @@ -249,6 +249,14 @@ def by_name(self, name):
_charsets.add(Charset(241, 'utf8mb4', 'utf8mb4_esperanto_ci', ''))
_charsets.add(Charset(242, 'utf8mb4', 'utf8mb4_hungarian_ci', ''))
_charsets.add(Charset(243, 'utf8mb4', 'utf8mb4_sinhala_ci', ''))
_charsets.add(Charset(244, 'utf8mb4', 'utf8mb4_german2_ci', ''))
_charsets.add(Charset(245, 'utf8mb4', 'utf8mb4_croatian_ci', ''))
_charsets.add(Charset(246, 'utf8mb4', 'utf8mb4_unicode_520_ci', ''))
_charsets.add(Charset(247, 'utf8mb4', 'utf8mb4_vietnamese_ci', ''))
_charsets.add(Charset(248, 'gb18030', 'gb18030_chinese_ci', 'Yes'))
_charsets.add(Charset(249, 'gb18030', 'gb18030_bin', ''))
_charsets.add(Charset(250, 'gb18030', 'gb18030_unicode_520_ci', ''))
_charsets.add(Charset(255, 'utf8mb4', 'utf8mb4_0900_ai_ci', ''))


charset_by_name = _charsets.by_name
Expand Down
5 changes: 4 additions & 1 deletion tornado_mysql/connections.py
Original file line number Diff line number Diff line change
Expand Up @@ -981,7 +981,10 @@ def _get_server_information(self):
lang, stat, cap_h, salt_len = struct.unpack('<BHHB', data[i:i+6])
i += 6
self.server_language = lang
self.server_charset = charset_by_id(lang).name
try:
self.server_charset = charset_by_id(lang).name
except KeyError:
self.server_charset = None

self.server_status = stat
if DEBUG: print("server_status: %x" % stat)
Expand Down

0 comments on commit 1cc2eec

Please sign in to comment.