Glacier.Sql 1.0.0

dotnet add package Glacier.Sql --version 1.0.0
                    
NuGet\Install-Package Glacier.Sql -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Glacier.Sql" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Glacier.Sql" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Glacier.Sql" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Glacier.Sql --version 1.0.0
                    
#r "nuget: Glacier.Sql, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Glacier.Sql@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Glacier.Sql&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Glacier.Sql&version=1.0.0
                    
Install as a Cake Tool

Glacier.Sql

NuGet Version NuGet Downloads

Glacier.Sql is a high-performance C# SQL query execution engine built directly on top of the Glacier.Polaris columnar, memory-efficient Arrow-backed DataFrame engine. It translates T-SQL queries into optimized Polaris LazyFrame expression pipelines, enabling low-overhead SQL access to columnar files on disk.


Features

  • T-SQL Parser: A custom Pratt/recursive-descent tokenizer and parser implementing standard SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, and DROP statements.
  • Transactional Storage: SQL-native transactions (BEGIN TRANSACTION, COMMIT, ROLLBACK) with crash-recovery mechanisms via shadowed table file logging.
  • Native Triggers: Persistent, automated SQL-native triggers (AFTER and INSTEAD OF for INSERT, UPDATE, and DELETE events) with virtual inserted and deleted context resolution.
  • Relational View Engine: Fully persisted relational view definitions in the catalog, recursively inlined into query execution plans.
  • Correlated Subqueries: Support for scalar subqueries, list membership (IN), and correlated/uncorrelated existential qualifiers (EXISTS / NOT EXISTS) mapped to optimized Semi/Anti relational joins.
  • Schema Alterations: Schema modifications (ALTER TABLE ADD/DROP COLUMN) with automatic Arrow IPC file rewrites and null-padding.
  • Data Integrity Constraints: Robust column-level constraints including PRIMARY KEY, UNIQUE, NOT NULL, and CHECK expressions with transaction rollbacks on violation.
  • Concurrency & Locking: Async-friendly, thread-independent reader-writer locking mechanism to ensure serializable write isolation and non-blocking shared reads.
  • Information Schema: Transient system metadata querying via INFORMATION_SCHEMA.TABLES and INFORMATION_SCHEMA.COLUMNS.

Project Structure

Glacier.Sql/
│
├── Glacier.Sql.slnx               # Visual Studio Solution model
│
├── src/
│   ├── Glacier.Sql/               # Main engine assembly
│   │   ├── Catalog/               # Metadata catalog & async-friendly table locking
│   │   ├── Engine/                # Query compilation (Planner), Execution handlers & SQL Engine
│   │   ├── Parser/                # Lexer, AST Nodes, Pratt Statement/Expression Parsers
│   │   └── Storage/               # Arrow IPC reading and writing wrappers
│   │
│   └── Glacier.Sql.Host/          # Stdio-based JSON-RPC MCP Server host
│
├── tests/
│   └── Glacier.Sql.Tests/         # Extensively covered XUnit test suite
│
└── MANUAL.md                      # Comprehensive User & Developer SQL reference manual

Getting Started

Prerequisites

  • .NET 10.0 SDK

Build the Solution

Run the following command in the solution root directory to compile:

dotnet build

Run Tests

To execute the test suite validating transactions, triggers, view inlining, subqueries, concurrency locking, and constraint enforcement:

dotnet test

For more detailed information on syntax, design patterns, and internal architecture, see MANUAL.md.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 91 5/27/2026