Hi everyone,
I am using Odoo 13 docker. I have over 3000 contacts and am trying to send mass email to contacts but the email goes into schedular and remains into queue. Test emails works fine.
Also the performance of the UI goes so low that even it won't load the email marketing page any more.
The server is Xeon quad core with 48 GB ram so hardware surely isn't an issue.
This is crucial time for our business to send these emails so any help will be really appreciated.
here is the log;
2020-09-15 23:43:08,466 1 INFO production odoo.addons.base.models.ir_cron: Starting job `Email Marketing: Process queue`.
2020-09-15 23:43:08,738 1 INFO production odoo.addons.mass_mailing.models.mailing: Mass-mailing mailing.mailing(13,) targets res.partner, no opt out list available
2020-09-15 23:43:08,739 1 INFO production odoo.addons.mass_mailing.models.mailing: Mass-mailing mailing.mailing(13,) has already reached 0 res.partner emails
2020-09-15 23:43:19,916 1 INFO production werkzeug: 192.168.0.29 - - [15/Sep/2020 23:43:19] "POST /longpolling/poll HTTP/1.1" 200 - 19 0.034 50.052
2020-09-15 23:44:11,070 1 INFO production werkzeug: 192.168.0.29 - - [15/Sep/2020 23:44:11] "POST /longpolling/poll HTTP/1.1" 200 - 8 0.081 50.143
2020-09-15 23:45:02,413 1 INFO production werkzeug: 192.168.0.29 - - [15/Sep/2020 23:45:02] "POST /longpolling/poll HTTP/1.1" 200 - 8 0.079 50.165
2020-09-15 23:45:08,616 1 WARNING ? odoo.service.server: Thread <Thread(odoo.service.cron.cron0, started daemon 139818298242816)> virtual real time limit (120/120s) reached.
2020-09-15 23:45:08,622 1 INFO ? odoo.service.server: Dumping stacktrace of limit exceeding threads before reloading
2020-09-15 23:45:08,985 1 INFO ? odoo.tools.misc:
# Thread: <Thread(odoo.service.cron.cron0, started daemon 139818298242816)> (db:production) (uid:n/a) (url:n/a)
File: "/usr/lib/python3.7/threading.py", line 885, in _bootstrap
self._bootstrap_inner()
File: "/usr/lib/python3.7/threading.py", line 917, in _bootstrap_inner
self.run()
File: "/usr/lib/python3.7/threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File: "/usr/lib/python3/dist-packages/odoo/service/server.py", line 430, in target
self.cron_thread(i)
File: "/usr/lib/python3/dist-packages/odoo/service/server.py", line 411, in cron_thread
ir_cron._acquire_job(db_name)
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_cron.py", line 273, in _acquire_job
cls._process_jobs(db_name)
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_cron.py", line 237, in _process_jobs
registry[cls._name]._process_job(job_cr, job, lock_cr)
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_cron.py", line 147, in _process_job
cron._callback(job['cron_name'], job['ir_actions_server_id'], job['id'])
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_cron.py", line 109, in _callback
self.env['ir.actions.server'].browse(server_action_id).run()
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_actions.py", line 545, in run
res = func(action, eval_context=eval_context)
File: "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_actions.py", line 59, in run_action_code_multi
res = super(ServerAction, self).run_action_code_multi(action, eval_context)
File: "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_actions.py", line 430, in run_action_code_multi
safe_eval(action.sudo().code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action'
File: "/usr/lib/python3/dist-packages/odoo/tools/safe_eval.py", line 351, in safe_eval
return unsafe_eval(c, globals_dict, locals_dict)
File: "", line 1, in <module>
File: "/usr/lib/python3/dist-packages/odoo/addons/mass_mailing/models/mailing.py", line 578, in _process_mass_mailing_queue
mass_mailing.action_send_mail()
File: "/usr/lib/python3/dist-packages/odoo/addons/mass_mailing/models/mailing.py", line 548, in action_send_mail
composer.send_mail(auto_commit=auto_commit)
File: "/usr/lib/python3/dist-packages/odoo/addons/mail/wizard/mail_compose_message.py", line 263, in send_mail
all_mail_values = wizard.get_mail_values(res_ids)
File: "/usr/lib/python3/dist-packages/odoo/addons/mass_mailing/wizard/mail_compose_message.py", line 21, in get_mail_values
res = super(MailComposeMessage, self).get_mail_values(res_ids)
File: "/usr/lib/python3/dist-packages/odoo/addons/mail/wizard/mail_compose_message.py", line 299, in get_mail_values
rendered_values = self.render_message(res_ids)
File: "/usr/lib/python3/dist-packages/odoo/addons/mail/wizard/mail_compose_message.py", line 482, in render_message
bodies = self.env['mail.template']._render_template(self.body, self.model, res_ids, post_process=True)
File: "/usr/lib/python3/dist-packages/odoo/addons/mail/models/mail_template.py", line 298, in _render_template
results[res_id] = self.render_post_process(result)
File: "/usr/lib/python3/dist-packages/odoo/addons/mass_mailing/models/mail_template.py", line 20, in render_post_process
blacklist=['/unsubscribe_from_list']
File: "/usr/lib/python3/dist-packages/odoo/addons/link_tracker/models/link_tracker.py", line 159, in convert_links
link = self.create(vals)
File: "<decorator-gen-99>", line 2, in create
File: "/usr/lib/python3/dist-packages/odoo/api.py", line 314, in _model_create_single
return create(self, arg)
File: "/usr/lib/python3/dist-packages/odoo/addons/link_tracker/models/link_tracker.py", line 133, in create
create_vals['title'] = self._get_title_from_url(create_vals['url'])
File: "/usr/lib/python3/dist-packages/odoo/addons/link_tracker/models/link_tracker.py", line 97, in _get_title_from_url
p = html.fromstring(page.text.encode('utf-8'), parser=html.HTMLParser(encoding='utf-8'))
File: "/usr/lib/python3/dist-packages/requests/models.py", line 857, in text
encoding = self.apparent_encoding
File: "/usr/lib/python3/dist-packages/requests/models.py", line 727, in apparent_encoding
return chardet.detect(self.content)['encoding']
File: "/usr/lib/python3/dist-packages/chardet/__init__.py", line 38, in detect
detector.feed(byte_str)
File: "/usr/lib/python3/dist-packages/chardet/universaldetector.py", line 211, in feed
if prober.feed(byte_str) == ProbingState.FOUND_IT:
File: "/usr/lib/python3/dist-packages/chardet/charsetgroupprober.py", line 71, in feed
state = prober.feed(byte_str)
File: "/usr/lib/python3/dist-packages/chardet/sbcharsetprober.py", line 86, in feed
order = char_to_order_map[c]
2020-09-15 23:45:08,992 1 INFO ? odoo.service.server: Initiating server reload
2020-09-15 23:45:10,394 1 INFO ? odoo: Odoo version 13.0-20200826
2020-09-15 23:45:10,394 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf
2020-09-15 23:45:10,394 1 INFO ? odoo: addons paths: ['/usr/lib/python3/dist-packages/odoo/addons', '/var/lib/odoo/addons/13.0', '/mnt/extra-addons']
2020-09-15 23:45:10,395 1 INFO ? odoo: database: odoo@172.17.0.2:5432
2020-09-15 23:45:10,636 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
2020-09-15 23:45:10,783 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on b12c1e93066c:8069
2020-09-15 23:45:24,399 1 INFO ? odoo.http: HTTP Configuring static files
2020-09-15 23:45:24,426 1 INFO production odoo.modules.loading: loading 1 modules...
2020-09-15 23:45:24,458 1 INFO production odoo.modules.loading: 1 modules loaded in 0.03s, 0 queries
2020-09-15 23:45:24,518 1 INFO production odoo.modules.loading: loading 62 modules...
2020-09-15 23:45:25,401 1 INFO production odoo.modules.loading: 62 modules loaded in 0.88s, 0 queries