Me here again. Figured it out, looks like somehow I missed the fact that the mongo instance was not 5.0.27, something i thought we’d verified when moving to a remote server but yeah. So. For others, here’s a mini postmortem:
Symptoms
So much like this thread FranticX.Database.DatabaseConnectionException - Deadline - AWS Thinkbox Discussion Forums (thinkboxsoftware.com), you’ll have problems submitting. You won’t have problems running the client and/or monitor
Things you’ll see that would be puzzling are:
- being able to use MongoDBCompass to easily connect to your db
- running a Deadline Worker on a fresh collection in your mongodb database, and seeing it create alllll the deadline-required tables
- seeing your Worker correctly report status messages that Monitor picks up
- You will be able to make edits in Deadline Monitor to say plugin configuration, and see those reflected in the database as well.
- RCS won’t work at all
- slightly inconsistent error messages in the worker log that talk about connection issues
2024-06-25 18:10:36: Worker - An error occurred while updating the Worker’s info: An error occurred while trying to connect to the Database sunshine:27017. It is possible that the Mongo Database server is incorrectly configured, currently offline, blocked by a firewall, or experiencing network issues.
2024-06-25 18:10:36: Full error: An exception occurred while receiving a message from the server. (FranticX.Database.DatabaseConnectionException)
and
2024-06-25 18:20:31: at Deadline.Scheduling.JobRepositoryScan.PerformPendingJobScan(Boolean checkLastPendingJobTime, Boolean verbose, String region, Boolean logRepositoryHistory)
2024-06-25 18:20:31: ---------- Inner Stack Trace (System.IO.EndOfStreamException) ----------
2024-06-25 18:20:31: at MongoDB.Driver.Core.Misc.StreamExtensionMethods.ReadBytes(Stream stream, Byte buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)
2024-06-25 18:20:31: at MongoDB.Driver.Core.Connections.BinaryConnection.ReceiveBuffer(CancellationToken cancellationToken)
Debugging
So, unfortunately, I still didn't find anything client-side to really pinpoint this, it was only when I got a hold of the container logs and saw this:Specifically the line in yellow:
OP_DELETE is no longer supported
That opcode was deprecated in 5.0, and unsupported from 5.1 onwards. See: Legacy Opcodes - MongoDB Manual v7.0