We are using Rails 7.0.4.3, with some background workers, using cloudtasker (0.13.0) and redis (7). Locally everything is ok, but on Google Cloud Task, workers do not perform due to the following error message:
ArgumentError: Value 600 must be a Hash or a Google::Protobuf::Duration...
This error happens when we upgrade to Ruby 3.1.1, being working until Ruby 3.0.0.
We just expect the worker execution, but an error is raised on its initialization by Google Cloud Run.
The worker is very simple:
class EnrollmentsValidatorWorker
include Cloudtasker::Worker
cloudtasker_options queue: :enrollments, lock: :while_executing, on_conflict: :reject
def perform
EnrollmentsValidationByItDataset.call
rescue StandardError => e
send_message "Error: #{e.message}. #{e.backtrace.join("
")}"
end
end
How can we solve this?