was the call inbound or outbound and did you get that setting from Ingroup or Campaign?
Is recording also set for the agent? I can only think that there's a conflict/overlap in recording for DID/User/Ingroup/Campaign and that the log shows the call length instead of the recording length when the recording was initiated only during one stage of the call.
Or the agent pushed the "stop recording" button.
Technically none of those should create a wrong value in that field, but there are a lot of factors involved.
Also, of course, it's possible there's a flaw in the system somewhere. A dialplan context without a "hangup()" would be expected to leave the field blank instead of wrong, but this is linux where anything can magically happen. lol.