{"record":{"id":"610f6b32cf898ab8","repo":"hashicorp/nomad","slug":"job-max-count-d-cannot-be-negative","errorCode":null,"errorMessage":"job_max_count (%d) cannot be negative","messagePattern":"job_max_count \\((.+?)\\) cannot be negative","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"command/agent/agent.go","lineNumber":381,"sourceCode":"\t\tif jobMaxPriority < structs.JobDefaultMaxPriority || jobMaxPriority > structs.JobMaxPriority {\n\t\t\treturn nil, fmt.Errorf(\"job_max_priority cannot be %d. Must be between %d and %d\", *agentConfig.Server.JobMaxPriority, structs.JobDefaultMaxPriority, structs.JobMaxPriority)\n\t\t}\n\t}\n\tjobDefaultPriority := structs.JobDefaultPriority\n\tif agentConfig.Server.JobDefaultPriority != nil && *agentConfig.Server.JobDefaultPriority != 0 {\n\t\tjobDefaultPriority = *agentConfig.Server.JobDefaultPriority\n\t\tif jobDefaultPriority < structs.JobDefaultPriority || jobDefaultPriority >= jobMaxPriority {\n\t\t\treturn nil, fmt.Errorf(\"job_default_priority cannot be %d. Must be between %d and %d\", *agentConfig.Server.JobDefaultPriority, structs.JobDefaultPriority, jobMaxPriority)\n\t\t}\n\t}\n\tconf.JobMaxPriority = jobMaxPriority\n\tconf.JobDefaultPriority = jobDefaultPriority\n\n\tjobMaxCount := structs.JobDefaultMaxCount\n\tif agentConfig.Server.JobMaxCount != nil {\n\t\tjobMaxCount = *agentConfig.Server.JobMaxCount\n\t\tif jobMaxCount < 0 {\n\t\t\treturn nil, fmt.Errorf(\"job_max_count (%d) cannot be negative\", jobMaxCount)\n\t\t}\n\t}\n\tconf.JobMaxCount = jobMaxCount\n\n\tif agentConfig.Server.JobTrackedVersions != nil {\n\t\tif *agentConfig.Server.JobTrackedVersions <= 0 {\n\t\t\treturn nil, fmt.Errorf(\"job_tracked_versions must be greater than 0\")\n\t\t}\n\t\tconf.JobTrackedVersions = *agentConfig.Server.JobTrackedVersions\n\t}\n\n\tconf.OIDCIssuer = agentConfig.Server.OIDCIssuer\n\n\t// Set up the bind addresses\n\trpcAddr, err := net.ResolveTCPAddr(\"tcp\", agentConfig.normalizedAddrs.RPC)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"Failed to parse RPC address %q: %v\", agentConfig.normalizedAddrs.RPC, err)\n\t}","sourceCodeStart":363,"sourceCodeEnd":399,"githubUrl":"https://github.com/hashicorp/nomad/blob/482b49bf1aec006f089bcfc7e632d8f6ac303e5e/command/agent/agent.go#L363-L399","documentation":"Fires in convertServerConfig while translating agent config: server.job_max_count was set to a negative number, which cannot bound job counts; valid values are zero or positive.","triggerScenarios":"Thrown at command/agent/agent.go:381 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set job_max_count to a non-negative integer","Remove the option to use the default (structs.JobDefaultMaxCount)"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"482b49bf1aec006f089bcfc7e632d8f6ac303e5e","analyzedAt":"2026-09-04T07:54:14.808Z","contentChangedAt":"2026-09-04T07:54:14.808Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}