Skip to content

FATAL Error: Database invalidated. Failed to create checkpoint as .wal file does not exist #331

@bineetsingh30

Description

@bineetsingh30

Java 21, Duckdb 1.2.2.0, OS: Linux Redhat 10

In my Java application, I am opening multiple connections from different threads to Duckdb in persistent mode. In the start of the application, I create a main connection, and now any subsequent connection is created using DuckDBConnection.duplicate.
DuckDB file is only accessed from this process.

My connection is created with property jdbc_stream_results set to true.

One of my update query failed with error:

java.sql.SQLException: FATAL Error: Failed: database has been invalidated because of a previous fatal error. The database must be restarted prior to being used again.
Original error: "Failed to create checkpoint because of error: Could not remove file "/home/ec2-user/duckdb/./duckdb.db.wal": No such file or directory"

Scenario:

  1. DuckDb is being queried by a select query on a different table parallely.
  2. Update/INSERT queries are coming. They are processed in different threads. To run a query, I create new connection (using duplicate) and run the query.

My duckdb.db file is around 160 GB.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions