Commit Graph

277 Commits (f7444ff3002548e73e239744c9bbae2bb513401a)

Author SHA1 Message Date
Jonathan Boulle f7444ff300 store: convert Watch to interface 2014-09-09 11:17:53 -07:00
Blake Mizerany f4613dd466 store: remove Root 2014-09-03 09:20:18 -07:00
Blake Mizerany f8be54b416 ...deadlocked... 2014-09-03 09:20:17 -07:00
Yicheng Qin cc1df691cc store: fix the bug caused by random iteration order over map 2014-09-03 09:20:08 -07:00
Blake Mizerany a2b9f9310c remove pkg/strings 2014-09-03 09:20:06 -07:00
Blake Mizerany e9a45ae35d remove goraft 2014-09-03 09:20:05 -07:00
Xiang Li 3fba10c8e6 etcd: add version handlers 2014-09-03 09:19:58 -07:00
Xiang Li 8ea840c19a store: fix index data race 2014-09-03 09:19:53 -07:00
Xiang Li b951aaf925 store: check remove func before call it 2014-09-03 09:19:50 -07:00
Yicheng Qin 02ced2c2d7 v1: deprecate v1 support
Etcd moves to 0.5 without the support of v1.
2014-09-03 09:19:49 -07:00
Xiang Li 973bde9a07 feat(get): get from quorum 2014-06-22 21:33:38 -07:00
Xiang Li 516ebdb49e fix(store): synchronize access to CurrentIndex 2014-05-20 13:53:47 -07:00
Yicheng Qin fa54866e99 Revert "Merge pull request #631 from metaflow/fix-delete-key-as-directory"
This reverts commit b87972713e, reversing
changes made to bd8d45ce28.
2014-04-21 17:55:44 -07:00
Mikhail Goncharov 7cebc3999a api(delete) now you get an error trying to delete files a directory (http.StatusForbidden) 2014-04-21 19:50:57 +07:00
Sam Ghods 3ae0a1e1a6 fix(store.go) include node.dir = true when updating a directory's ttl, fixes coreos/etcd#736 2014-04-17 15:15:41 -07:00
Xiang Li 2dc182189a Merge pull request #710 from xiangli-cmu/fix_race
Fix race
2014-04-14 15:53:04 -04:00
Yicheng Qin c8de5eee85 fix(server/key): unable to update unexpired ttl 2014-04-14 11:03:46 -07:00
Xiang Li a9dff278b5 fix(store.go) send event to watcher after we finish modifying it 2014-04-10 23:27:50 -04:00
Tomás Senart b6053d6a86 Making code formatting consistent.
$ gofmt -s -w  && goimports -w
2014-03-27 14:19:08 +01:00
Ben Johnson 62b89a128a Merge branch 'master' of https://github.com/coreos/etcd into proxy
Conflicts:
	config/config.go
	server/peer_server.go
	server/transporter.go
	tests/server_utils.go
2014-03-24 15:30:14 -07:00
Ben Johnson 174b9ff343 bump(github.com/goraft/raft): 6bf34b9
Move from coreos/raft to goraft/raft and update to latest.
2014-03-24 15:09:47 -07:00
Mikhail Goncharov 074c78d725 fix(store): corrected CAS and CAD fail cause in response
specifically when both prevIndex and prevValue are provided
2014-03-08 14:50:34 +07:00
Brandon Philips 8485987b74 Merge pull request #524 from yifan-gu/remove_omitempty_on_value
remove omitempty on value
2014-02-18 07:08:00 -08:00
evan-gu 9cfd8c5f0b fix(store): make NodeExtern.Value a *string
Before this change if the value of a Node was "" it would get dropped from the json
encoding and the Node.Value field would be missing. Fix this problem by making
NodeExtern.Value a *string so that an empty string will be encoded but a nil value
will drop the field.
2014-02-18 00:50:44 -05:00
Cenk Alti 8bed1e1f15 fix(store/watch): fix the slow consumer bug 2014-02-14 16:52:40 -08:00
Cenk Alti e73e61f238 test(store/watch): add test case for slow event consumers 2014-02-14 16:12:53 -08:00
Brandon Philips 68383b1293 fix(server/v1): don't fail put on new v1 key
We weren't checking for PrevNode being nil in the v1 code path. Do this
and add a test.

Fixes #557
2014-02-10 18:59:56 -08:00
Brian Waldon 60a2709213 chore(gofmt): gofmt compare_and_delete_command.go 2014-02-08 07:28:16 -08:00
Brandon Philips 2a2714a4bf Merge pull request #514 from cenkalti/prevNode
feat(prevNode): add "prevNode" to "Set" response
2014-02-07 12:04:18 -08:00
Xiang Li c844fccf2a fix(watcher_hub) isHidden checks the length of the watchPath before getting subString of keyPath 2014-02-06 11:09:47 -05:00
Xiang Li 1b5f9eb013 test (isHidden) add unit test for isHidden function 2014-02-05 23:32:12 -05:00
Xiang Li 5851cb5b8d chrod(watcher_hub) add comment to isHidden function 2014-02-05 23:31:38 -05:00
Xiang Li ba98de6ef0 fix(watch hidden key) Fix hidden keys preventing deeper recursive watches from receiving events
If a watcher has given the correct hidden directory, we should allow it to watch the non-hidden events under that hidden directory. This pull request achieves this by checking if the path after the watching prefix has a "/_" which indicates a hidden key.
2014-02-05 22:34:41 -05:00
evan-gu 8d2a8e1c7a fix some typos in comments in store.go 2014-02-04 14:17:44 -05:00
Brandon Philips d7d20d1c3d bump(github.com/stretchr/testify): 9cc77fa25329013ce07362c7742952ff887361f2 2014-02-02 16:57:36 -08:00
Brandon Philips 13b6c1e684 chore(*): make everything use goven
for i in github.com/BurntSushi/toml github.com/coreos/go-etcd/etcd github.com/coreos/go-log/log github.com/gorilla/context github.com/rcrowley/go-metrics bitbucket.org/kardianos/osext github.com/coreos/go-systemd/journal github.com/coreos/raft code.google.com/p/goprotobuf/proto ; do goven  -copy -rewrite $i; done
2014-02-01 23:44:18 -08:00
Cenk Alti 354a91290e feat(prevNode): add test for prevNode 2014-01-29 17:52:25 -08:00
Cenk Alti 3ec7004421 feat(prevNode): add "prevNode" to "Set" response 2014-01-29 17:30:33 -08:00
Brandon Philips 1b00c449a5 Revert "Better error message when setting values on directories"
This reverts commit d13dd50d51.
2014-01-23 11:22:11 -08:00
Kelsey Hightower d13dd50d51 Better error message when setting values on directories
Without this commit etcd returns the following error message when
setting values on directories:

    {
      "errorCode":102,
      "message":"Not a file",
      "cause":"/postgres",
      "index":2
    }

While the above error message is accurate it's not very descriptive.
This commit adds a new error code/message which better describes why the
write operation failed. etcd now returns the following:

    {
      "errorCode":109,
      "message":"Cannot set value on directory",
      "cause":"/postgres",
      "index":2
    }
2014-01-22 23:02:33 -08:00
Brandon Philips 19ef1042d6 Merge pull request #497 from philips/store-bench-no-rand
fix(store/store_bench): don't use rand
2014-01-22 13:19:04 -08:00
tobz 641edd4e6e test(store): group together all store tests that deal with hidden keys 2014-01-22 09:29:53 -05:00
tobz 823fdfab12 fix(store): make isHidden see if any portion of the path is hidden, not just the last element 2014-01-22 09:29:33 -05:00
tobz 0cacb6cba4 test(store): exercise watchers receiving notifications of non-hidden keys within hidden directories 2014-01-22 09:20:57 -05:00
tobz 7a948746a8 fix(store): move logic to handle whether or not to notify (re: hidden keys) entirely into watcher hub 2014-01-22 09:02:42 -05:00
tobz 139f59f7d1 fix(store): properly hide hidden keys from watchers, not just gets 2014-01-21 20:26:56 -05:00
Brandon Philips 80c22a4fb2 fix(store/store_bench): don't use rand
rand just introduces more noise to the results, don't use it.
2014-01-21 17:01:26 -08:00
Xiang Li 3a75d0a465 Merge pull request #493 from xiangli-cmu/bench_watcher
test(store_bench_test.go) add watch bench
2014-01-21 07:35:18 -08:00
Xiang Li 17c8f6d2e8 test(store_bench_test.go) add watch bench 2014-01-21 06:51:40 -05:00
Xiang Li d122ed3bcd Merge pull request #492 from rwindelz/fix-ttl
fix(store): TTL should range 1..n rather than 1..n+1
2014-01-20 09:28:38 -08:00