Session log problems

DataMind Oda saves your chats as session log files on your computer. When it cannot open or save one of those files, it shows a message like the ones on this page. Find your message below, read what it means, and follow what to do.

Most of these messages come from a file that is damaged, from a file changed outside DataMind Oda, or from a second copy of Oda touching the same chat. For where these files live and how Oda keeps them, see Session files on your computer. A chat written by a different version of Oda is covered in Opening sessions from other versions, and a chat repaired after a sudden stop is covered in Recovering sessions after a crash.

Note

When a session log file fails one of these checks, DataMind Oda refuses to work from it rather than guess. It leaves the file as it is and never deletes it for you.

Find your message

  1. Read the message and note its text, including any ids, paths and numbers in it.
  2. Find the same message in the tables below.
  3. Follow the row. If the message returns every time, keep the file it names and contact your DataMind OS administrator with the message. Messages that are not listed here are covered in Updates and troubleshooting.

Damaged session log files

These messages mean Oda stopped reading a session log because part of it is not valid.

MessageWhat it meansWhat to do
session "<id>": stored log is corrupt: <detail> (raw log: <path>)The saved file is damaged. The detail says what Oda found, and the path names the file on your computer.Keep the file at that path as it is and contact your DataMind OS administrator with this message.
corrupt session log: header line is not valid JSONThe first line of the file, which names the chat, cannot be read.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt session log: first line is not a JSON objectThe first line can be read, but it is not a chat header.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt session log: first line is not a session headerThe first line is not a record that Oda recognises as the start of a chat.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt session log: unparsable committed event at line <n>A saved part of the file at that line cannot be read.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt session log: invalid committed event at line <n>: <detail>The saved part at that line is not valid; the detail says why.Keep the file as it is and contact your DataMind OS administrator with this message.
empty or header-less session logThe file is empty or does not begin with a chat header.Keep the file as it is and contact your DataMind OS administrator with this message.

Damaged compressed session log files

By default, session logs are saved in a compressed form. These messages mean the compressed file is damaged.

MessageWhat it meansWhat to do
corrupt Zstandard session log: invalid frame magic at byte <n>The compressed file stops looking like valid compressed data at that byte.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt Zstandard session log: reserved frame-header bit at byte <n> / corrupt Zstandard session log: reserved block type at byte <n>A structure check inside the compressed file failed at that byte.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt Zstandard session log: first frame is not exactly one header lineThe compressed file must begin with one part holding exactly the chat header, and it does not.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt Zstandard session log: header frame failed validation: <detail>The header inside the compressed file failed its check; the detail says why.Keep the file as it is and contact your DataMind OS administrator with this message.
corrupt Zstandard session log: complete frame contains a torn JSONL recordA finished part of the compressed file ends in the middle of a saved record.Keep the file as it is and contact your DataMind OS administrator with this message.
empty or header-less Zstandard session logThe compressed file is empty or has no header.Keep the file as it is and contact your DataMind OS administrator with this message.

A chat is already saved or in use

DataMind Oda allows one writer per chat at a time, so its log stays in order.

MessageWhat it meansWhat to do
session "<id>" already existsA file for this chat is already saved, and Oda will not create another one over it.Open the chat that is already there. Nothing on disk was replaced.
session "<id>" is already owned by an active write handleAnother task or window of DataMind Oda is saving to this chat.Wait for that task to finish, or close the other window, then try again. Reading the chat is not blocked.
session "<id>": <operation> is not available on a read handle / session "<id>": <operation> on a closed handleOda tried to save through a connection that can only read the chat, or after the chat was closed.Open the chat again and repeat the action. If the message returns, contact your DataMind OS administrator.
session "<id>": close failed to drain and to release its write lockWhile closing the chat, Oda could not finish saving and could not release the chat's write lock.Try again. If the message returns, keep it for your administrator. The lock ends when the process holding it stops.

Files that are missing or do not match

These messages mean Oda could not find the chat's file, or the file it found does not match the chat it was asked to open.

MessageWhat it meansWhat to do
session "<id>" not foundOda looked for this chat's file and did not find it.Check that you are on the computer where the chat was saved. If the file was moved or removed outside DataMind Oda, return it, then open the chat again.
stored session identity mismatch: requested "<id>", header contains "<meta>"The file on disk belongs to a different chat than the one being opened.Keep the file as it is and contact your DataMind OS administrator with this message.
requested id "<x>" does not match header id "<y>"The place Oda opened says one chat, and the file inside says another.Keep the file as it is and contact your DataMind OS administrator with this message.
header id "<x>" and cwd identify "<path>"The chat id and folder saved inside the file point to a different location than the one Oda opened.Keep the file as it is and contact your DataMind OS administrator with this message.

Files in the wrong form or the wrong place

These messages mean a session log file is stored in a way this copy of Oda does not read.

MessageWhat it meansWhat to do
session artifact "<path>" uses <other suffix>, but this backend is configured for compression "<mode>"; use a separate root or select the matching compression modeThe file is saved in a different form (compressed or plain) than the folder it is in expects.Keep files of different forms in different folders. Open this chat in the copy of DataMind Oda that saved it.
session artifact "<path>" uses the unsupported flat-file layout; use a separate root or move it into a project/session directory before loadingThe file sits directly in the folder that holds chats, not inside a folder of its own.Oda does not load it from there. Move it into the chat folder it belongs to, or keep it in a folder of its own.
duplicate JSONL session id "<id>" appears in multiple project directoriesThe same chat appears in more than one place under the folder where Oda keeps chats.Oda does not choose between the copies. Keep the one you need and ask your administrator to remove the other.

When a save fails

These messages mean a write to a session log file did not finish as expected.

MessageWhat it meansWhat to do
refusing to materialize "<id>": a log already exists on disk (open it instead)Oda was about to create this chat's file and found one already on disk.Open the existing chat. Nothing was overwritten.
session "<id>": stored log shrank below a previously observed prefix (<n> < <m>)The file is now shorter than the part Oda had already read, so something changed it outside Oda.Open the chat again. Do not change session log files in another program. If the message returns, keep the file as it is and contact your DataMind OS administrator.
failed to roll back append to "<path>"A save failed, and undoing the partial write failed too, so the file may end with an incomplete part.Open the chat again; Oda discards an incomplete end of the file before its next write. If the message returns, keep it for your administrator.
append seq mismatch for "<id>": expected <n> at index <i>, got <m>A new part of the log did not continue the file exactly where it ended, so Oda refused it instead of guessing.Try the action again. If the message returns, contact your DataMind OS administrator with it.
session event batch is not losslessly JSON-serializable because it contains non-JSON-serializable dataA record could not be saved exactly as it was, so Oda refused rather than save a changed version.Try again. If the message returns, contact your DataMind OS administrator with it.

When preparing an older chat file does not finish

When Oda opens a chat file from an older version, it prepares and checks a copy first. These messages mean that preparation did not finish. The file you already have is not changed by these steps.

MessageWhat it meansWhat to do
migration verifier returned an invalid responseThe check Oda runs on the prepared copy returned an answer it could not use.Open the chat again. If the message returns, keep the file and the message for your administrator.
migration verifier exited before reporting a result (code <n>)The check stopped early, with code <n>.Open the chat again. If the message returns, keep the file and the message for your administrator.
migration verifier abortedThe check was stopped before it finished.Open the chat again.
migration verifier termination failedThe check could not be shut down cleanly.Open the chat again. If the message returns, keep it for your administrator.
current session generation already exists at "<path>": <reason>A prepared copy of this chat is already at that path.Open the chat again. If the message returns, keep it for your administrator. Nothing on disk is overwritten.
historical session generation changed during migration: "<path>"The older chat file changed while Oda was preparing its copy.Close the chat, then open it again so the check runs against the current file.
target bytes differ from the migrated generationThe prepared copy and the copy that is already on disk do not match, so Oda refused to replace it.Keep the file as it is and contact your DataMind OS administrator with this message.

Questions, answered

What does the file path in a message mean?

Some messages end with (raw log: <path>). The path is where the session log file sits on your computer. Keep the file there when you ask for help.

Does DataMind Oda delete or change a file it cannot read?

No. DataMind Oda refuses to work from a session log that fails a check rather than guess, and nothing in Oda deletes session log files. The file stays as it is.

Why does a message say a chat "already exists"?

The message guards a file that is already on disk. Oda will not create another file over it. Open the chat that is already there; nothing was replaced.

Why can only one task write a chat at a time?

One writer per chat keeps its log in order. While a task or another Oda window is writing the chat, a second attempt is refused with is already owned by an active write handle. Reading the chat is not blocked. Wait for the other task, or close the other window, then try again.

What do the line and byte numbers in a message point to?

They mark where Oda stopped reading: a line in a plain session log, a byte in a compressed one. They help find the damaged part; you do not need to open the file yourself.

What is a Zstandard session log?

By default, DataMind Oda saves session logs in a compressed form called Zstandard. A message that begins with corrupt Zstandard session log means that compressed file is damaged.

A message comes back every time I open the chat. What now?

The file has a lasting problem. Keep it as it is, note the message, and contact your DataMind OS administrator. Do not change session log files in another program.

I copied my chats to another computer. Why do some refuse to open?

Session log files are read in the folder shape and the saved form they came with. If you moved files between computers by hand, a file may refuse with a message about compression or its layout. Open it in the copy of DataMind Oda that saved it, or return it to its original folder.