Commit Graph

245 Commits (bc9e433ca26be0314a37c8c6ead66429a584bbc9)

Author SHA1 Message Date
Yicheng Qin 270e67db84 wal: not export unnecessary public functions 2015-01-09 14:55:10 -08:00
Yicheng Qin 50c179ec1c wal: add DetectVersion test 2015-01-09 14:55:05 -08:00
Yicheng Qin f08d1090d0 wal: refine parseWalName function
According to http://godoc.org/fmt#Scan, if scan number is less than the
number of arguments, err will report why. So we don't need to handle
this error case.
2015-01-08 14:56:21 -08:00
Yicheng Qin 9532810f76 wal: remove unused max function 2015-01-08 14:49:14 -08:00
Yicheng Qin 6460e49a33 wal: save empty snapshot when create
So caller can open at empty snapshot to read all entries.
2015-01-06 19:48:21 -08:00
Yicheng Qin 78bb207bac wal: update doc about snapshot 2015-01-06 19:33:57 -08:00
Yicheng Qin 84f62f21ee wal: record and check snapshot 2015-01-06 16:27:40 -08:00
Jonathan Boulle 1ec98cb795 pkg/fileutil: sort filenames during ReadDir 2014-12-18 16:36:11 -08:00
Xiang Li 502396edd5 wal: fix wal doc 2014-12-14 19:36:37 -08:00
Xiang Li 53bf7e4b5e wal: rename openAtIndex -> open; OpenAtIndexUntilUsing -> openNotInUse 2014-12-14 19:33:06 -08:00
Xiang Li f538cba272 *: do not backup files still in use 2014-12-14 19:27:22 -08:00
Xiang Li ea94d19147 *: lock the in using files; do not purge locked the wal files 2014-12-14 19:27:22 -08:00
Barak Michener cf7690cb51 detect more cases of empty directories and actual errors 2014-12-11 13:37:32 -05:00
Barak Michener 421fe128c3 Return Unknown instead of NotExist
Unless the data dir truly does not exist.
2014-12-11 13:09:50 -05:00
Yicheng Qin b9bf957c6d wal: sync after writing data to disk in Cut function 2014-12-04 22:56:34 -08:00
Yicheng Qin af0f34c595 wal: save latest state into new WAL
So we could always read out state when open at valid index.
2014-12-04 12:19:21 -08:00
Yicheng Qin aa61009560 wal: not return ErrIndexNotFound in ReadAll
This IndexNotFound case is reasonable now because we don't write dummy
entries into wals any more.
2014-12-02 00:28:54 -08:00
Xiang Li d3db010190 *: support purging old wal/snap files 2014-12-01 11:50:17 -08:00
Barak Michener 5139257b8d Merge pull request #1743 from barakmich/auto_upgrade
etcdserver: autodetect v0.4 WALs and upgrade them to v0.5 automatically
2014-11-20 17:20:34 -05:00
Barak Michener 59a0c64e9f fix import loop, add set to types, and fix comments 2014-11-20 15:38:08 -05:00
Barak Michener 78ea3335bf etcdserver: autodetect v0.4 WALs and upgrade them to v0.5 automatically 2014-11-20 15:38:08 -05:00
Xiang Li d0dd205b0e wal: add a bench for write entry 2014-11-20 12:07:17 -08:00
Jonathan Boulle 5a964f49a5 wal: propagate errors 2014-11-08 17:16:23 -08:00
Yicheng Qin 791b2fd503 *: handle panic and fatal more consistently
1. etcd fatals if there is critical error in the system and operator should
do something for it
2. etcd panics if there happens something unexpected, and it should be
reported to us to debug.
2014-11-05 13:53:24 -08:00
Xiang Li 075ab6415f Merge pull request #1587 from xiangli-cmu/fix_wal
wal: sync before returning from create
2014-11-03 15:58:47 -08:00
Xiang Li ff1f5a9d57 wal: sync before returning from create 2014-11-03 14:28:59 -08:00
Yicheng Qin 5da481213e Merge pull request #1478 from unihorn/190
etcdserver: panic on storage error
2014-11-03 11:07:55 -08:00
Yicheng Qin 433b4138c5 etcdserver: panic on storage error
It is a critical error to etcd, and etcd is not able to recover it now.
2014-11-03 10:46:04 -08:00
Brandon Philips 513c72ec8b wal: update the docs to show the optional metadata field 2014-10-31 11:32:17 -07:00
Yicheng Qin aa50af1c69 *: clean log.Print
1. only log things by default that the operator of etcd may need to react to
2. put package name at the head of log lines
2014-10-30 18:15:53 -07:00
Jonathan Boulle 7a4d42166b *: add license header to all source files 2014-10-17 15:41:22 -07:00
Xiang Li f98fbbfc14 *: proto refactoring 2014-10-14 21:07:23 +08:00
Jonathan Boulle 4183b69e12 *: move from third_party to Godep 2014-10-14 00:37:52 -07:00
Yicheng Qin 447caf1afc etcdserver/wal: record info at the head of WAL file 2014-10-10 11:57:09 -07:00
Xiang Li 8bbbaa88b2 *: raft related int64 -> uint64 2014-10-09 14:29:21 +08:00
Yicheng Qin 1d5d2e3726 *: Id -> ID for protobuf types
We use ID instead of Id in this project based on golang conventions.
2014-09-26 11:49:30 -07:00
Xiang Li 2f6086de22 pkg: move /crc to /pkg/crc 2014-09-25 10:50:33 -07:00
Jonathan Boulle c8c55aa378 scripts: consolidate and standardize protobuf generation 2014-09-24 13:45:00 -07:00
Jonathan Boulle cf4af47f7e wal: remove logging messages
These are noisy and unhelpful by default. We can re-add if at some point
we reintroduce debugging/multiple log levels.
2014-09-22 19:08:47 -07:00
Yicheng Qin df70f653a4 Merge pull request #1099 from unihorn/128
wal: OpenFromIndex fails if it cannot find previous index
2014-09-17 16:00:51 -07:00
Yicheng Qin 29f6d8a9e6 wal: add ErrFileNotFound and ErrIndexNotFound 2014-09-17 15:58:06 -07:00
Yicheng Qin 7160b5ae26 wal: OpenFromIndex fails if it cannot find previous index
Example:
We save entry 1, 2, 3 to WAL.
If we try to open 100, it should fail.
2014-09-17 15:07:07 -07:00
Xiang Li ab61a8aa9a *: init for on disk snap support 2014-09-17 13:56:12 -07:00
Yicheng Qin de21c39ca5 raft: isStateEqual -> isHardStateEqual, IsEmptyState -> IsEmptyHardState 2014-09-16 13:55:00 -07:00
Yicheng Qin 023dc7cba2 etcdserver: add SYNC request 2014-09-16 13:42:03 -07:00
Xiang Li 69f2d5c590 wal: refactor 2014-09-15 10:35:36 -07:00
Xiang Li 77fbd2610c wal: add comment 2014-09-15 10:17:21 -07:00
Xiang Li 1d09c25f5f wal: add walName function; cleanup test 2014-09-15 10:17:21 -07:00
Xiang Li cec1956b8f wal: better comment 2014-09-15 10:14:18 -07:00
Xiang Li 8e0ee1cc5e wal: remove wrong comment for cut 2014-09-15 10:14:18 -07:00
Xiang Li 1164c4b83d wal: recover writting seq 2014-09-15 10:14:18 -07:00
Xiang Li 21860bc017 wal: cut(i uint64) -> cut 2014-09-15 10:14:18 -07:00
Yicheng Qin 140fd6d6c4 raft: restart using last written entry also 2014-09-15 09:56:33 -07:00
Yicheng Qin a9af70c52b raft: write entry 0 into log 2014-09-15 09:55:52 -07:00
Yicheng Qin 2030ca202f wal: change wal filename format
Make raftIndex section to be expected raftIndex of next entry.

It makes filename more intuitive and straight-forward.

The commit also adds comments for filename format.
2014-09-12 11:24:28 -07:00
Brandon Philips 884c702512 wal: wal.OpenFromIndex -> wal.OpenAtIndex
The first entry read from the wal should be the index provided. This
name makes that more clear.
2014-09-11 12:52:06 -07:00
Brandon Philips 413b6a59ff wal: add more explanation to wal filename format 2014-09-11 12:51:50 -07:00
Brandon Philips 04abd5603f wal: add a doc file 2014-09-10 20:40:20 -07:00
Brian Waldon c251304068 *: s/Id/ID/
golang convention dictates that the individual characters in an
abbreviation should all have the same case. Use ID instead of Id.

The protobuf generator still generates code that does not meet
this convention, but that's a fight for another day.
2014-09-10 16:09:08 -07:00
Brandon Philips 24fd126822 *: stop using 0xBEEF
Using 0xBEEF is annoying in examples because it makes it makes it look
like the user can use ascii or something. In the Procfile use
0x0,0x1,0x2,etc and use 0xBAD0 in test.
2014-09-09 16:40:51 -07:00
Xiang Li 6f06923e96 wal: test save empty state 2014-09-09 10:41:15 -07:00
Xiang Li 90c0db3d42 wal: do not save empty state 2014-09-09 10:15:29 -07:00
Jonathan Boulle 9997c9488a *: fix a few small issues identified by go vet 2014-09-08 23:52:36 -07:00
Xiang Li 54734b0903 main/wal: add a const for 0700 magic number 2014-09-08 15:45:58 -07:00
Xiang Li b094410066 wal: change entries->ents for consistency 2014-09-08 15:40:12 -07:00
Xiang Li adff0f3813 wal: named return values for ReadAll. 2014-09-08 15:36:25 -07:00
Xiang Li 0461c517e4 wal: clarify TODO 2014-09-08 13:57:35 -07:00
Xiang Li 1a6e908971 *: add wal 2014-09-05 09:52:40 -07:00
Xiang Li b98cf17209 wal: move pb files to walpb 2014-09-03 16:46:42 -07:00
Xiang Li 3ee83bc194 Merge pull request #82 from etcd-team/b-fiximports
coerce gogoproto files to import from third_party
2014-09-03 16:20:58 -07:00
Blake Mizerany 10b73418cf wal: coerce import gogoproto from third_party 2014-09-03 16:00:42 -07:00
Blake Mizerany 46a7a61b7d wal: fix broken tests 2014-09-03 15:56:28 -07:00
Xiang Li bdb954b2f5 wal: fix wal 2014-09-03 15:10:15 -07:00
Xiang Li 85103adfe0 wal: move record method to record.go 2014-09-03 09:20:11 -07:00
Yicheng Qin 442cae6844 wal: support multiple files 2014-09-03 09:20:10 -07:00
Yicheng Qin b5b2031d5b wal: prune repeative logging 2014-09-03 09:20:04 -07:00
Xiang Li 659eb5fd2a wal: make record a protobuf type 2014-09-03 09:20:03 -07:00
Xiang Li 8e06333d45 raft: make State a protobuf type 2014-09-03 09:20:03 -07:00
Xiang Li d6c3ebb1a0 raft: make Info a protobuf type 2014-09-03 09:20:03 -07:00
Yicheng Qin 2d870fa65b wal: add first level logging 2014-09-03 09:20:01 -07:00
Yicheng Qin 969b529b08 wal: fix O_RDONLY attr when opening old file 2014-09-03 09:20:01 -07:00
Xiang Li 38ec659cd6 raft: make Entry a protobuf type 2014-09-03 09:20:01 -07:00
Xiang Li 43c9ca895b wal: fix append entry 2014-09-03 09:20:01 -07:00
Yicheng Qin 215820dd40 server: move TestMultiNodeKillOne to etcd/ 2014-09-03 09:20:00 -07:00
Yicheng Qin 28634fce47 wal: Flush -> Sync 2014-09-03 09:20:00 -07:00
Xiang Li d70df4a15d wal: reorgnize wal file 2014-09-03 09:19:59 -07:00
Xiang Li a25cd45876 wal: add CoreOS copyright 2014-09-03 09:19:59 -07:00
Xiang Li 9f5c7b310c wal: add newWal helper func 2014-09-03 09:19:59 -07:00
Xiang Li 9c6f2ed5bb wal: use buffer 2014-09-03 09:19:59 -07:00
Xiang Li 5baefcce26 wal: cleanup 2014-09-03 09:19:59 -07:00
Yicheng Qin 363e952551 wal: add Read 2014-09-03 09:19:59 -07:00
Yicheng Qin 3c7935a21d wal: check written data in tests 2014-09-03 09:19:59 -07:00
Xiang Li d1cdc02afc wal: add tests for write 2014-09-03 09:19:59 -07:00
Xiang Li 7b180d585e wal: make new work 2014-09-03 09:19:58 -07:00
Xiang Li e72e75876c wal: init 2014-09-03 09:19:58 -07:00