The Prometheus monitoring system and time series database.
Find a file
Fabian Reinartz c36d574290 Replace single head lock with granular locks
This adds various new locks to replace the single big lock on
the head. All parts now must be COW as they may be held by clients
after initial retrieval.
Series by ID and hashes are now held in a stripe lock to reduce
contention and total holding time during GC. This should reduce
starvation of readers.
2017-09-05 14:41:39 +02:00
chunks Refactor compactor 2017-08-09 11:10:29 +02:00
cmd/tsdb Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
Documentation/format Persist series without allocating the full set 2017-08-06 12:06:41 +02:00
labels Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
test Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
testdata Add full encode/decode WAL cycle test 2017-02-14 21:55:50 -08:00
tsdbutil Minor comment fixes and additions. 2017-04-28 15:41:42 +02:00
.travis.yml Reduce test timeout on Travis 2017-07-14 08:00:18 +02:00
block.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00
block_test.go Incorporate PR feedback. 2017-05-26 21:26:31 +05:30
chunks.go Refactor WAL into Head and misc improvements 2017-09-01 11:50:58 +02:00
chunks_test.go Expose Intervals type for use by TombstoneReader. 2017-08-25 16:06:36 +05:30
compact.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
compact_test.go Refactor and add tests for compactor 2017-09-01 11:50:58 +02:00
db.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
db_test.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
db_unix.go Add liecence file and headers 2017-04-10 20:59:45 +02:00
db_windows.go Add liecence file and headers 2017-04-10 20:59:45 +02:00
encoding_helpers.go Incorporate PR feedback. 2017-05-26 21:26:31 +05:30
head.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
head_test.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
index.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00
index_test.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
LICENSE Add license file 2017-04-10 21:02:42 +02:00
postings.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
postings_test.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00
querier.go Remove multiple heads 2017-09-01 11:50:58 +02:00
querier_test.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
README.md Add README 2017-04-10 13:29:46 +02:00
tombstones.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00
tombstones_test.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00
wal.go Replace single head lock with granular locks 2017-09-05 14:41:39 +02:00
wal_test.go Change series ID from uint32 to uint64 2017-09-04 16:08:38 +02:00

TSDB

This repository contains the new Prometheus storage layer that will be used in its 2.0 release.

A writeup of its design can be found here.