Mutiple Crashes - Failed to turn on WAL: DatabaseError #4826

Closed
opened 2026-03-07 20:02:38 -06:00 by GiteaMirror · 2 comments
Owner

Originally created by @FireAmpersand on GitHub (Jan 5, 2022).

Hi Team,

I am looking into switching from bitwarden to vaultwarden but my docker container keeps crashing with the following error.

[ERROR] thread 'main' panicked at 'Failed to turn on WAL: DatabaseError(__Unknown, "unable to open database file")': src/db/mod.rs:307

I am not sure if this is the correct place as the only way to fix it is to restart the computer. Restarting docker or the container does not help. After the reboot, the app works great for i would say about 15-20 minutes before happening again. No other containers are breaking like this so not sure if Docker is the cause.

I am running Docker Desktop on Windows on Server 2019. I start the container with the following docker-compose file.

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    ports:
      - 85:80
    volumes:
      - E:\Apps\vaultwarden\vwdata\:/data

Windows server is up to date as well as Docker Desktop (4.3.2). Image is the most recent build. I have also reinstalled Docker Desktop with no luck.

Originally created by @FireAmpersand on GitHub (Jan 5, 2022). Hi Team, I am looking into switching from bitwarden to vaultwarden but my docker container keeps crashing with the following error. `[ERROR] thread 'main' panicked at 'Failed to turn on WAL: DatabaseError(__Unknown, "unable to open database file")': src/db/mod.rs:307` I am not sure if this is the correct place as the only way to fix it is to restart the computer. Restarting docker or the container does not help. After the reboot, the app works great for i would say about 15-20 minutes before happening again. No other containers are breaking like this so not sure if Docker is the cause. I am running Docker Desktop on Windows on Server 2019. I start the container with the following docker-compose file. ``` services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: always ports: - 85:80 volumes: - E:\Apps\vaultwarden\vwdata\:/data ``` Windows server is up to date as well as Docker Desktop (4.3.2). Image is the most recent build. I have also reinstalled Docker Desktop with no luck.
Author
Owner

@FireAmpersand commented on GitHub (Jan 5, 2022):

Support String if it helps

Your environment (Generated via diagnostics page)

  • Vaultwarden version: v1.23.1
  • Web-vault version: v2.25.0
  • Running within Docker: true (Base: Debian)
  • Environment settings overridden: false
  • Uses a reverse proxy: true
  • IP Header check: false (X-Forwarded-For)
  • Internet access: true
  • Internet access via a proxy: false
  • DNS Check: true
  • Time Check: true
  • Domain Configuration Check: true
  • HTTPS Check: true
  • Database type: SQLite
  • Database version: 3.35.4
  • Clients used:
  • Reverse proxy and version:
  • Other relevant information:

Config (Generated via diagnostics page)

Show Running Config

Environment settings which are overridden:

{
  "_duo_akey": null,
  "_enable_duo": false,
  "_enable_email_2fa": true,
  "_enable_smtp": true,
  "_enable_yubico": true,
  "_ip_header_enabled": true,
  "admin_token": "***",
  "allowed_iframe_ancestors": "",
  "attachments_folder": "data/attachments",
  "authenticator_disable_time_drift": false,
  "data_folder": "data",
  "database_max_conns": 10,
  "database_url": "****/**.*******",
  "db_connection_retries": 15,
  "disable_2fa_remember": false,
  "disable_admin_token": false,
  "disable_icon_download": false,
  "domain": "*****://*****.*************.**",
  "domain_origin": "*****://*****.*************.**",
  "domain_path": "",
  "domain_set": true,
  "duo_host": null,
  "duo_ikey": null,
  "duo_skey": null,
  "email_attempts_limit": 3,
  "email_expiration_time": 600,
  "email_token_size": 6,
  "emergency_access_allowed": true,
  "emergency_notification_reminder_schedule": "0 5 * * * *",
  "emergency_request_timeout_schedule": "0 5 * * * *",
  "enable_db_wal": true,
  "extended_logging": true,
  "helo_name": null,
  "hibp_api_key": null,
  "icon_blacklist_non_global_ips": true,
  "icon_blacklist_regex": null,
  "icon_cache_folder": "data/icon_cache",
  "icon_cache_negttl": 259200,
  "icon_cache_ttl": 2592000,
  "icon_download_timeout": 10,
  "incomplete_2fa_schedule": "30 * * * * *",
  "incomplete_2fa_time_limit": 1,
  "invitation_org_name": "Vaultwarden",
  "invitations_allowed": true,
  "ip_header": "X-Real-IP",
  "job_poll_interval_ms": 30000,
  "log_file": null,
  "log_level": "Info",
  "log_timestamp_format": "%Y-%m-%d %H:%M:%S.%3f",
  "org_attachment_limit": null,
  "org_creation_users": "",
  "password_iterations": 100000,
  "reload_templates": false,
  "require_device_email": false,
  "rsa_key_filename": "data/rsa_key",
  "send_purge_schedule": "0 5 * * * *",
  "sends_allowed": true,
  "sends_folder": "data/sends",
  "show_password_hint": false,
  "signups_allowed": true,
  "signups_domains_whitelist": "",
  "signups_verify": false,
  "signups_verify_resend_limit": 6,
  "signups_verify_resend_time": 3600,
  "smtp_accept_invalid_certs": false,
  "smtp_accept_invalid_hostnames": false,
  "smtp_auth_mechanism": "Login",
  "smtp_debug": false,
  "smtp_explicit_tls": false,
  "smtp_from": "********@*************.**",
  "smtp_from_name": "Vaultwarden",
  "smtp_host": "****.****.**",
  "smtp_password": "***",
  "smtp_port": 25,
  "smtp_ssl": false,
  "smtp_timeout": 15,
  "smtp_username": "*********@****.**",
  "templates_folder": "data/templates",
  "trash_auto_delete_days": null,
  "trash_purge_schedule": "0 5 0 * * *",
  "use_syslog": false,
  "user_attachment_limit": null,
  "web_vault_enabled": true,
  "web_vault_folder": "web-vault/",
  "websocket_address": "0.0.0.0",
  "websocket_enabled": false,
  "websocket_port": 3012,
  "yubico_client_id": null,
  "yubico_secret_key": null,
  "yubico_server": null
}
@FireAmpersand commented on GitHub (Jan 5, 2022): Support String if it helps ### Your environment (Generated via diagnostics page) * Vaultwarden version: v1.23.1 * Web-vault version: v2.25.0 * Running within Docker: true (Base: Debian) * Environment settings overridden: false * Uses a reverse proxy: true * IP Header check: false (X-Forwarded-For) * Internet access: true * Internet access via a proxy: false * DNS Check: true * Time Check: true * Domain Configuration Check: true * HTTPS Check: true * Database type: SQLite * Database version: 3.35.4 * Clients used: * Reverse proxy and version: * Other relevant information: ### Config (Generated via diagnostics page) <details><summary>Show Running Config</summary> **Environment settings which are overridden:** ```json { "_duo_akey": null, "_enable_duo": false, "_enable_email_2fa": true, "_enable_smtp": true, "_enable_yubico": true, "_ip_header_enabled": true, "admin_token": "***", "allowed_iframe_ancestors": "", "attachments_folder": "data/attachments", "authenticator_disable_time_drift": false, "data_folder": "data", "database_max_conns": 10, "database_url": "****/**.*******", "db_connection_retries": 15, "disable_2fa_remember": false, "disable_admin_token": false, "disable_icon_download": false, "domain": "*****://*****.*************.**", "domain_origin": "*****://*****.*************.**", "domain_path": "", "domain_set": true, "duo_host": null, "duo_ikey": null, "duo_skey": null, "email_attempts_limit": 3, "email_expiration_time": 600, "email_token_size": 6, "emergency_access_allowed": true, "emergency_notification_reminder_schedule": "0 5 * * * *", "emergency_request_timeout_schedule": "0 5 * * * *", "enable_db_wal": true, "extended_logging": true, "helo_name": null, "hibp_api_key": null, "icon_blacklist_non_global_ips": true, "icon_blacklist_regex": null, "icon_cache_folder": "data/icon_cache", "icon_cache_negttl": 259200, "icon_cache_ttl": 2592000, "icon_download_timeout": 10, "incomplete_2fa_schedule": "30 * * * * *", "incomplete_2fa_time_limit": 1, "invitation_org_name": "Vaultwarden", "invitations_allowed": true, "ip_header": "X-Real-IP", "job_poll_interval_ms": 30000, "log_file": null, "log_level": "Info", "log_timestamp_format": "%Y-%m-%d %H:%M:%S.%3f", "org_attachment_limit": null, "org_creation_users": "", "password_iterations": 100000, "reload_templates": false, "require_device_email": false, "rsa_key_filename": "data/rsa_key", "send_purge_schedule": "0 5 * * * *", "sends_allowed": true, "sends_folder": "data/sends", "show_password_hint": false, "signups_allowed": true, "signups_domains_whitelist": "", "signups_verify": false, "signups_verify_resend_limit": 6, "signups_verify_resend_time": 3600, "smtp_accept_invalid_certs": false, "smtp_accept_invalid_hostnames": false, "smtp_auth_mechanism": "Login", "smtp_debug": false, "smtp_explicit_tls": false, "smtp_from": "********@*************.**", "smtp_from_name": "Vaultwarden", "smtp_host": "****.****.**", "smtp_password": "***", "smtp_port": 25, "smtp_ssl": false, "smtp_timeout": 15, "smtp_username": "*********@****.**", "templates_folder": "data/templates", "trash_auto_delete_days": null, "trash_purge_schedule": "0 5 0 * * *", "use_syslog": false, "user_attachment_limit": null, "web_vault_enabled": true, "web_vault_folder": "web-vault/", "websocket_address": "0.0.0.0", "websocket_enabled": false, "websocket_port": 3012, "yubico_client_id": null, "yubico_secret_key": null, "yubico_server": null } ``` </details>
Author
Owner

@BlackDex commented on GitHub (Jan 5, 2022):

The problem here is Windows. You are using some kind of shared storage which uses Samba/CIFS as it's backend. That does not support locking. See https://github.com/dani-garcia/vaultwarden/wiki/FAQs#can-i-run-vaultwarden-as-an-azure-webapp

Remove the sqlite database file, disable WAL and start again. Or use something else then sqlite.

@BlackDex commented on GitHub (Jan 5, 2022): The problem here is Windows. You are using some kind of shared storage which uses Samba/CIFS as it's backend. That does not support locking. See https://github.com/dani-garcia/vaultwarden/wiki/FAQs#can-i-run-vaultwarden-as-an-azure-webapp Remove the sqlite database file, disable WAL and start again. Or use something else then sqlite.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vaultwarden#4826