GitXplorerGitXplorer
m

go-journal

public
50 stars
4 forks
3 issues

Commits

List of commits on branch master.
Verified
1d09d436fcbd943296f43372c3896714254838c0

Switch to new primitive package

ttchajed committed 2 months ago
Verified
b7f79c0c7191a73a5175e94fdcd93af0bcd69105

Bump dependencies

ttchajed committed 2 months ago
Verified
3a000bbd6b3540780b1f5a7476b163816fb92c99

Fix goose install in CI

ttchajed committed 2 months ago
Verified
531204b0653b80fee2983cc1b33ee65451175333

Run CI on go stable

ttchajed committed 2 months ago
Verified
88d2c3c9362f9d0b06d357cfb8601b5ee0b60437

Update goose path

ttchajed committed 2 months ago
Unverified
33d6ac93c6db9e35c73db3244cb5c8ce6317a498

run go fmt to make CI happy

zzeldovich committed 4 months ago

README

The README file for this repository.

GoTxn: a verified, concurrent, crash-safe transaction system

CI

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, and the proof can be found alongside the Perennial framework.

The biggest use of GoTxn is GoNFS, 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 at OSDI 2021