From 44202966364d7b7f2be7d70f8877366cd50b7890 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Honza=20Kr=C3=A1l?= Date: Wed, 4 Dec 2013 13:22:33 +0100 Subject: [PATCH] For string body make sure we serialize unicode properly --- elasticsearch/serializer.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/elasticsearch/serializer.py b/elasticsearch/serializer.py index 970db113..1e932c3d 100644 --- a/elasticsearch/serializer.py +++ b/elasticsearch/serializer.py @@ -21,7 +21,11 @@ class JSONSerializer(object): def dumps(self, data): # don't serialize strings if isinstance(data, (type(''), type(u''))): - return data + try: + return data.encode('utf-8') + except UnicodeDecodeError: + # Python 2 and str, no need to re-encode + return data try: return json.dumps(data, default=self.default)