0
votes

We have an sms job that gets fired for each sms that needs to be sent, so if we have 100 sms we schedule 100 jobs to allow for single and multiple sms's.

When we send the sms campaign it uses a 3rd party rest service to send the sms's, we sent a campaign of 7500 sms's, so there are 7500 jobs in the queue as soon as it sent 151 sms's we start getting

[2020-10-28 15:41:16] production.ERROR: Serialization of 'Doctrine\DBAL\Driver\PDOConnection' is not allowed {"exception":"[object] (Exception(code: 0): Serialization of 'Doctrine\DBAL\Driver\PDOConnection' is not allowed at /home/site/releases/20201026103626/vendor/laravel/framework/src/Illuminate/Queue/Queue.php:139)

for all the rest of the sms's Not sure why this is happening.

We use laravel queues with the database (mysql) connection, all the rest of the sites on that server works fine, does not seem to lose connection to the database (when browsing the site while the queues are running) The database server is a separate server dedicated for mysql.

1
Check your job definition. If for example after X time jobs time out and need to be reqeued (I think) they will be requeued in their current state i.e. if you added extra properties they will be serialised as well. Of course this is just speculationapokryfos

1 Answers

0
votes

The problem is gone, there was alot of code for checking what time it is and only allow sending of sms's between certain times and other code i removed it and only left the actual sending of sms code and now everything went through perfectly maybe there was some issue in the other code that caused this.