Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mit-pdos/go-journal
Verified, concurrent, crash-safe transaction system
https://github.com/mit-pdos/go-journal
verification
Last synced: about 7 hours ago
JSON representation
Verified, concurrent, crash-safe transaction system
- Host: GitHub
- URL: https://github.com/mit-pdos/go-journal
- Owner: mit-pdos
- License: mit
- Created: 2021-05-18T16:58:44.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-07-20T16:15:28.000Z (6 months ago)
- Last Synced: 2024-12-26T20:13:53.356Z (7 days ago)
- Topics: verification
- Language: Go
- Homepage:
- Size: 284 KB
- Stars: 54
- Watchers: 10
- Forks: 4
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GoTxn: a verified, concurrent, crash-safe transaction system
[![CI](https://github.com/mit-pdos/go-journal/actions/workflows/build.yml/badge.svg)](https://github.com/mit-pdos/go-journal/actions/workflows/build.yml)
GoTxn is a transaction system that makes it easy to safely access a disk with
concurrent transactions that are atomic if the system crashes in the middle. The
implementation is verified in
[Perennial](https://github.com/mit-pdos/perennial), and the proof can be found
alongside the Perennial framework.The biggest use of GoTxn is [GoNFS](https://github.com/mit-pdos/daisy-nfsd), a
verified implementation of the Network File System (NFS) API that uses GoTxn to
simplify implementing and verifying a concurrent file system.This repository is still called go-journal, as GoTxn evolved from a journaling
system to a transaction system. The journaling layer is still available as
`github.com/mit-pdos/go-journal/jrnl`.## Publications
[GoJournal: a verified, concurrent, crash-safe journaling
system](https://www.chajed.io/papers/gojournal:osdi2021.pdf) at OSDI 2021