diff --git a/crates/db/src/db.rs b/crates/db/src/db.rs index 704ac4049df5790b16e6d41b87142f1b619be6e2..3412a0baff64ec5203c0124af572152bb7b65e20 100644 --- a/crates/db/src/db.rs +++ b/crates/db/src/db.rs @@ -39,6 +39,7 @@ const FALLBACK_DB_NAME: &'static str = "FALLBACK_MEMORY_DB"; const DB_FILE_NAME: &'static str = "db.sqlite"; lazy_static::lazy_static! { + static ref ZED_STATELESS: bool = std::env::var("ZED_STATELESS").map_or(false, |v| !v.is_empty()); static ref DB_FILE_OPERATIONS: Mutex<()> = Mutex::new(()); pub static ref BACKUP_DB_PATH: RwLock> = RwLock::new(None); pub static ref ALL_FILE_DB_FAILED: AtomicBool = AtomicBool::new(false); @@ -49,6 +50,10 @@ lazy_static::lazy_static! { /// is moved to a backup folder and a new one is created. If that fails, a shared in memory db is created. /// In either case, static variables are set so that the user can be notified. pub async fn open_db(db_dir: &Path, release_channel: &ReleaseChannel) -> ThreadSafeConnection { + if *ZED_STATELESS { + return open_fallback_db().await; + } + let release_channel_name = release_channel.dev_name(); let main_db_dir = db_dir.join(Path::new(&format!("0-{}", release_channel_name))); diff --git a/script/start-local-collaboration b/script/start-local-collaboration index 9c63b301e550253e2e64d9526eb30e0f4a19f7bf..82341bf6db0d15ccb0a1ac84af5841b2279f6716 100755 --- a/script/start-local-collaboration +++ b/script/start-local-collaboration @@ -36,6 +36,7 @@ position_1=0,0 position_2=${width},0 # Authenticate using the collab server's admin secret. +export ZED_STATELESS=1 export ZED_ADMIN_API_TOKEN=secret export ZED_SERVER_URL=http://localhost:8080 export ZED_WINDOW_SIZE=${width},${height}