E mail did not pull because of the character encoding?

Hey all:

I set up the e-mail client but I receive this log:

Traceback (most recent call last):
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 196, in receive
communication = self.insert_communication(raw)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 237, in insert_communication
self.set_thread(communication, email)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 342, in set_thread
parent.insert(ignore_permissions=True)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 203, in insert
self.run_before_save_methods()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 754, in run_before_save_methods
self.run_method(“validate”)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 655, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 883, in composer
return composed(self, method, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 866, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 649, in
fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py”, line 29, in validate
self.make_new_lead_if_required()
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py”, line 71, in make_new_lead_if_required
lead.insert(ignore_permissions=True)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 203, in insert
self.run_before_save_methods()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 754, in run_before_save_methods
self.run_method(“validate”)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 655, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 883, in composer
return composed(self, method, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 866, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 649, in
fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/lead/lead.py”, line 46, in validate
self.image = has_gravatar(self.email_id)
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/init.py”, line 133, in has_gravatar
hexdigest = md5.md5(email).hexdigest()
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\xe9’ in position 7: ordinal not in range(128)

Should I set the my.cnf encoding to utf-8 ?

the original my.cnf did not set it:

The second error is again:

pull_from_email_account

{‘retry’: 0, ‘log’: <function log at 0xb5f348ec>, ‘site’: u’erpnext.vm’, ‘event’: u’all’, ‘method_name’: u’pull_from_email_account’, ‘method’: <function pull_from_email_account at 0xb5ed90d4>, ‘user’: u’Administrator’, ‘kwargs’: {‘email_account’: u’Replies’}, ‘async’: True, ‘job_name’: u’pull_from_email_account|Replies’}
Traceback (most recent call last):
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/background_jobs.py”, line 61, in execute_job
method(**kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 439, in pull_from_email_account
email_account.receive()
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 214, in receive
raise Exception, frappe.as_json(exceptions)
Exception: [
“Traceback (most recent call last):\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 196, in receive\n communication = self.insert_communication(raw)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 237, in insert_communication\n self.set_thread(communication, email)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 342, in set_thread\n parent.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 203, in insert\n self.run_before_save_methods()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 754, in run_before_save_methods\n self.run_method("validate")\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 655, in run_method\n out = Document.hook(fn)(self, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 883, in composer\n return composed(self, method, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 866, in runner\n add_to_return_value(self, fn(self, *args, **kwargs))\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 649, in \n fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 29, in validate\n self.make_new_lead_if_required()\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 71, in make_new_lead_if_required\n lead.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 203, in insert\n self.run_before_save_methods()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 754, in run_before_save_methods\n self.run_method("validate")\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 655, in run_method\n out = Document.hook(fn)(self, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 883, in composer\n return composed(self, method, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 866, in runner\n add_to_return_value(self, fn(self, *args, **kwargs))\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 649, in \n fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/lead/lead.py", line 46, in validate\n self.image = has_gravatar(self.email_id)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/init.py", line 133, in has_gravatar\n hexdigest = md5.md5(email).hexdigest()\nUnicodeEncodeError: ‘ascii’ codec can’t encode character u’\xe9’ in position 7: ordinal not in range(128)\n”
]

Uh it is getting interesting, can I get some help?

{‘retry’: 0, ‘log’: <function log at 0xb6027f0c>, ‘site’: u’erpnext.vm’, ‘event’: u’all’, ‘method_name’: u’pull_from_email_account’, ‘method’: <function pull_from_email_account at 0xb5fcb6f4>, ‘user’: u’Administrator’, ‘kwargs’: {‘email_account’: u’Krnacs’}, ‘async’: True, ‘job_name’: u’pull_from_email_account|Krnacs’}
Traceback (most recent call last):
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/background_jobs.py”, line 61, in execute_job
method(**kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 439, in pull_from_email_account
email_account.receive()
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 214, in receive
raise Exception, frappe.as_json(exceptions)
Exception: [
“Traceback (most recent call last):\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 196, in receive\n communication = self.insert_communication(raw)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 237, in insert_communication\n self.set_thread(communication, email)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 342, in set_thread\n parent.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 203, in insert\n self.run_before_save_methods()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 754, in run_before_save_methods\n self.run_method("validate")\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 655, in run_method\n out = Document.hook(fn)(self, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 883, in composer\n return composed(self, method, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 866, in runner\n add_to_return_value(self, fn(self, *args, **kwargs))\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 649, in \n fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 29, in validate\n self.make_new_lead_if_required()\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 71, in make_new_lead_if_required\n lead.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 204, in insert\n self._validate()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 384, in _validate\n self._validate_mandatory()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 608, in _validate_mandatory\n name=self.name))\nMandatoryError: [Lead, LEAD-00085]: lead_name\n”,
“Traceback (most recent call last):\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 196, in receive\n communication = self.insert_communication(raw)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 237, in insert_communication\n self.set_thread(communication, email)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 342, in set_thread\n parent.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 203, in insert\n self.run_before_save_methods()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 754, in run_before_save_methods\n self.run_method("validate")\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 655, in run_method\n out = Document.hook(fn)(self, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 883, in composer\n return composed(self, method, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 866, in runner\n add_to_return_value(self, fn(self, *args, **kwargs))\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 649, in \n fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 29, in validate\n self.make_new_lead_if_required()\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 71, in make_new_lead_if_required\n lead.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 204, in insert\n self._validate()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 384, in _validate\n self._validate_mandatory()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 608, in _validate_mandatory\n name=self.name))\nMandatoryError: [Lead, LEAD-00085]: lead_name\n”,
“Traceback (most recent call last):\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 196, in receive\n communication = self.insert_communication(raw)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 237, in insert_communication\n self.set_thread(communication, email)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py", line 342, in set_thread\n parent.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 203, in insert\n self.run_before_save_methods()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 754, in run_before_save_methods\n self.run_method("validate")\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 655, in run_method\n out = Document.hook(fn)(self, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 883, in composer\n return composed(self, method, *args, **kwargs)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 866, in runner\n add_to_return_value(self, fn(self, *args, **kwargs))\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 649, in \n fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 29, in validate\n self.make_new_lead_if_required()\n File "/home/frappe/frappe-bench/apps/erpnext/erpnext/crm/doctype/opportunity/opportunity.py", line 71, in make_new_lead_if_required\n lead.insert(ignore_permissions=True)\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 204, in insert\n self._validate()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 384, in _validate\n self._validate_mandatory()\n File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 608, in _validate_mandatory\n name=self.name))\nMandatoryError: [Lead, LEAD-00085]: lead_name\n”
]

And it is the latest, something to do with the - utf8mb4_unicode_ci - :

email_account.receive

Traceback (most recent call last):
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 196, in receive
communication = self.insert_communication(raw)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 237, in insert_communication
self.set_thread(communication, email)
File “/home/frappe/frappe-bench/apps/frappe/frappe/email/doctype/email_account/email_account.py”, line 314, in set_thread
}, fields=“name”)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 517, in get_all
return frappe.get_all(*args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 1096, in get_all
return get_list(doctype, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 1069, in get_list
return frappe.model.db_query.DatabaseQuery(doctype).execute(None, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/db_query.py”, line 80, in execute
result = self.build_and_run()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/db_query.py”, line 104, in build_and_run
return frappe.db.sql(query, as_dict=not self.as_list, debug=self.debug, update=self.update)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 148, in sql
self._cursor.execute(query)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/MySQLdb/cursors.py”, line 205, in execute
self.errorhandler(self, exc, value)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/MySQLdb/connections.py”, line 36, in defaulterrorhandler
raise errorclass, errorvalue
OperationalError: (1267, “Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation ‘like’”)

Can you raise this issue on GitHub

Will do it ASAP

UP!

Do I receive some help on this subject please…

@rmehta
Thank you!

Happy holiday!

Your work was included in to the
Installed Apps
ERPNext: v7.2.1
Frappe Framework: v7.2.1

Now this subject is closed.

@rmehta
Sorry it has some problem,
I Raise a new issue on gitHub