{"record":{"id":"8d20c520b7de52d5","repo":"nats-io/nats-server","slug":"processroutedheadermsgargs-parse-error-s","errorCode":null,"errorMessage":"processRoutedHeaderMsgArgs Parse Error: '%s'","messagePattern":"processRoutedHeaderMsgArgs Parse Error: '(.+?)'","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/route.go","lineNumber":314,"sourceCode":"\t\tcase ' ', '\\t', '\\r', '\\n':\n\t\t\tif start >= 0 {\n\t\t\t\targs = append(args, arg[start:i])\n\t\t\t\tstart = -1\n\t\t\t}\n\t\tdefault:\n\t\t\tif start < 0 {\n\t\t\t\tstart = i\n\t\t\t}\n\t\t}\n\t}\n\tif start >= 0 {\n\t\targs = append(args, arg[start:])\n\t}\n\n\tc.pa.arg = arg\n\tswitch len(args) {\n\tcase 0, 1, 2, 3:\n\t\treturn fmt.Errorf(\"processRoutedHeaderMsgArgs Parse Error: '%s'\", args)\n\tcase 4:\n\t\tc.pa.reply = nil\n\t\tc.pa.queues = nil\n\t\tc.pa.hdb = args[2]\n\t\tc.pa.hdr = parseSize(args[2])\n\t\tc.pa.szb = args[3]\n\t\tc.pa.size = parseSize(args[3])\n\tcase 5:\n\t\tc.pa.reply = args[2]\n\t\tc.pa.queues = nil\n\t\tc.pa.hdb = args[3]\n\t\tc.pa.hdr = parseSize(args[3])\n\t\tc.pa.szb = args[4]\n\t\tc.pa.size = parseSize(args[4])\n\tdefault:\n\t\t// args[2] is our reply indicator. Should be + or | normally.\n\t\tif len(args[2]) != 1 {\n\t\t\treturn fmt.Errorf(\"processRoutedHeaderMsgArgs Bad or Missing Reply Indicator: '%s'\", args[2])","sourceCodeStart":296,"sourceCodeEnd":332,"githubUrl":"https://github.com/nats-io/nats-server/blob/3a66a489d262bf89b71a71c955c94920394532f3/server/route.go#L296-L332","documentation":"processRoutedHeaderMsgArgs splits the route protocol's HMSG-style argument line and hit the len(args) 0-3 case: fewer tokens than the minimal subject [reply] header-size total-size form. The message argument line is malformed/truncated — a protocol-level parse failure on data received over a cluster route connection, not an operator config problem.","triggerScenarios":"Thrown at server/route.go:314 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check cluster peers run compatible nats-server versions","Verify no proxy/LB is truncating or mangling route connection data","Capture route traffic to inspect the malformed argument line"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3a66a489d262bf89b71a71c955c94920394532f3","analyzedAt":"2026-09-02T04:41:54.247Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}