Repository navigation
Releases: ORNL/oscar
Releases · ORNL/oscar
Release list
Release v3.11.0
3.11.0 2026-11-02
Release overview
OSCAR 3.11.0 is the first official release published under Oak Ridge National Laboratory's github.com/ORNL organization (ORNL/oscar), re-architected for multi-year, 24/7 operation across up to 50 concurrent radiation portal monitor (RPM) and RTSP camera lanes on Ubuntu Server 24.04 x86-64 and Windows 11 x86-64 (with Docker Desktop and WSL 2).
Release artifacts — which file to download
| Release Asset | Target Audience & Use Case |
|---|---|
oscar-3.11.0.zip (+ .sha256) |
Connected Ubuntu Server 24.04 or Windows 11 installations and upgrades. Includes Docker Compose definitions, Linux/Windows administration CLIs (oscar.sh / oscar.bat), configure-windows-host.ps1, application build context, all Markdown documentation, and all four localized PDF operator manuals. |
oscar-3.11.0-windows-x86_64-offline-full.zip (+ .sha256) |
Air-gapped / offline Windows 11 installations where Docker Desktop or WSL 2 is not yet installed. Bundles pinned Docker Desktop 4.87.0 and WSL 2.7.3 installers, pre-built container images (oscar:3.11.0, oscar-postgis:3.11.0, nginxinc/nginx-unprivileged:1.28.1-alpine), administration scripts, and all Markdown/PDF documentation. |
oscar-3.11.0-windows-x86_64-offline-images.zip (+ .sha256) |
Air-gapped / offline Windows 11 installations or upgrades where compatible Docker Desktop and WSL 2 are already running. Contains the pre-built container image archive, administration scripts, and documentation without the Windows prerequisite installers. |
OSCAR-3.11.0-Administrator-Operator-Manual-{en,es,fr,el}.pdf |
Standalone localized Administrator and Operator Manuals in English (en), Español (es), Français (fr), and Ελληνικά (el). |
oscar-v3.11.0-source.zip (+ .sha256) |
Complete tracked source archive including all submodules (osh-core, osh-addons, osh-oakridge-modules, and oscar-viewer; GitHub's auto-generated source archive omits submodules). |
OSCAR-3.11.0-SHA256SUMS.txt |
Master SHA-256 checksum manifest covering all release ZIPs and localized PDF manuals. |
Start here — documentation for new and current users
- New Users (Fresh Installation):
- Read the Release Overview, Architectural Rationale, and User Guide.
- Follow the Quick Start Guide (
.\oscar.bat prepare-host+.\oscar.bat initon Windows 11;sudo bash oscar.sh initon Ubuntu 24.04). - Consult the Administrator Guide for LAN/Tailscale TLS trust, firewall scoping, and optional
single-snapshot backup setup, plus the localized Operator Manuals (English, Español, Français, Ελληνικά).
- Current Users Upgrading from
pre-3.11.0(3.10.0,3.9.x,3.8.x):oscar upgradeintentionally preserves an existingconfig.jsonand PostgreSQL volume and never silently converts apre-3.11.0database. For full 3.11.0PARQUET_PRIMARYstorage and checksummed PostgreSQL, preserve the old deployment read-only after backup/export and initialize a fresh 3.11.0 deployment. If deliberately retaining a legacy volume set in-place, follow the explicit one-time volume/root adoption workflow in the Release Overview and Upgrade Guide, Administrator Guide, and Storage Operations Runbook.
- Current Users Upgrading Same-Profile
3.11.0+Deployments & Managing Storage:- Extract into a clean sibling directory, copy
.env,secrets/, andtls/, and runoscar upgrade. See Storage Architecture, Data Lifecycle Policy, Cold Archive Format, Backup and Restore, and Storage Operations.
- Extract into a clean sibling directory, copy
- Feature & Developer Guides:
Why the major architectural changes in 3.11.0 were implemented
- Why
PARQUET_PRIMARYTiered Storage Replaced Single-Table PostgreSQL Detector Retention: At a 50-lane site emitting 1 Hz gamma/neutron telemetry, single-table PostgreSQL JSONB retention generated millions of rows per day and severe MVCC dead-tuple bloat, autovacuum I/O contention, WAL amplification, and multi-gigabyte B-tree/GIN index fragmentation during row-by-row retention deletes. Staging immutable detector streams into 30-minuteLOGGEDPostgreSQL partitions (osg_*), sealing parity-verified windows into Zstandard-compressed Apache Parquet files (~10–15x smaller on disk), retiring whole stage partitions viaO(1)NO INHERIT+DROP TABLE, and federating hot + cold reads through embedded DuckDB eliminatesDELETEbloat, keeps PostgreSQL compact (~9–12 GiB), speeds up multi-day historical CQL/report scans ~19x, and preserves 100% OpenSensorHubIObsSystemDatabase/ConSys/ CQL2 compatibility. - Why Five-Frame JPEG Media Replaced Long-Term Raw MP4 Storage: Retaining full H.264 MP4 clips across 50 cameras consumes terabytes rapidly, while video re-encoding was CPU-heavy and brittle on 1-second occupancies. Asynchronous extraction of five deterministic baseline sRGB JPEGs (
FIRST,QUARTER,MIDDLE,THREE_QUARTERS,LAST) with a 24-hour MP4 rollback grace and 30-day secondary-frame pruning (keepingMIDDLE/frame-03.jpglong-term) preserves visual evidence at a small fraction of MP4 disk usage. - Why Direct Pre-Parse Daily-File Journaling Was Added: Reconstructing vendor daily CSVs from parsed database rows risked losing raw messages across restarts or parser errors and caused startup spikes on 50-lane systems.
DailyFileJournalServicerecordsCRC32C-framed vendor messages on disk before parsing and decouples historical day rendering from live ingestion. - Why Schema-v2 Single-Snapshot Backup (
archive_mode=off) Replaced Continuous External WAL Archiving: Continuous external WAL archiving risked silent disk exhaustion on unattended servers if backup storage disconnected, while multiple local cold-tier copies multiplied storage cost. Opt-insinglemode uses streamedpg_basebackup,pg_verifybackup, HMAC-SHA-256 inventory verification, and an atomicCURRENTpointer for self-contained same-host or cross-host recovery. - Why Operational Views, Batched Status of Health, Event UUID/QR & Serialized Statistics Were Built: Multi-gate sites needed URL-scoped workstation views (
/view/<slug>) so gate consoles subscribe only to assigned lanes; bounded 30-second health batching and keyframe-gated HLS recovery so 50-lane dashboards and cameras never stall browsers; single-code QR export/import for air-gapped alarm handoff; and serialized National Statistics refreshes so archive scans cannot overlap. - Why Windows 11 Modern Standby (
S0 Low Power Idle) & Pre-Login Docker Hardening Were Added: Endurance testing on Windows 11 Modern Standby hardware proved that AC display blanking (VIDEOIDLE > 0) triggersKernel-Power 506idle suspension even whenSTANDBYIDLE = 0, and that Docker Desktop does not start after an unattended power-loss reboot until interactive login.configure-windows-host.ps1(prepare-host/host-check) now enforcesVIDEOIDLE = 0on Modern Standby systems, registersOSCAR-DockerDesktop-BootStart(LogonType=S4U) for pre-login container startup, caps WSL 2 memory via.wslconfig, verifies NIC IPv4 stability, and enables bugcheck auto-reboot across 20 automated checks.
Storage-profile changes and rollout
- Introduce the
OscarTieredObsSystemDatabasestorage profile with sequential observation IDs, batched writes, compact short-lived stage ownership, and a versioned PostgreSQL archive catalog - Initialize new PostgreSQL clusters with data checksums, WAL compression, I/O timing, and
pg_stat_statements, while explicitly keepingarchive_mode=offand omitting any external WAL bind; an existing cluster is not recreated byupgrade - Preserve an upgraded deployment's saved
config.jsonand database, so a pre-3.11.0 deployment is not silently converted to the complete 3.11.0 storage profile - Require a fresh 3.11.0 database and standard configuration for the current test systems and new...