293 Commits

Author SHA1 Message Date
Yicheng Qin
997e7d3bf4 Merge pull request #771 from unihorn/80
refactor(peer_server): remove standby mode in peer server
2014-05-07 09:57:02 -07:00
Yicheng Qin
17e299995c refactor(peer_server): remove standby mode in peer server 2014-05-07 09:10:09 -07:00
Yicheng Qin
d78116c35b Merge pull request #675 from unihorn/56
fix(peer_server): exit all server goroutines in Stop()
2014-05-07 08:09:14 -07:00
Yicheng Qin
6516cf854c chore(server): rename daemon to startRoutine
For better understanding.
2014-05-07 07:51:44 -07:00
Yicheng Qin
e55512f60b fix(peer_server): graceful stop for peer server run
Peer server will be started and stopped repeatedly in the design.
This step ensures its stop doesn't affect the next start.
The patch includes goroutine stop and timer trigger remove.
2014-05-07 07:43:27 -07:00
Yicheng Qin
c7116a37c0 fix(server): dispatch SetClusterConfigCommand correctly 2014-04-22 14:02:54 -07:00
Yicheng Qin
fa54866e99 Revert "Merge pull request #631 from metaflow/fix-delete-key-as-directory"
This reverts commit b87972713e17fb815bfe42f25a63f94f232007e2, reversing
changes made to bd8d45ce28d6f9ddb9c5164f58aca8f9a6359f7b.
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
Yicheng Qin
ece25833aa Merge pull request #738 from unihorn/68
feat(peer_server): forbid rejoining with different name
2014-04-18 11:49:36 -07:00
Yicheng Qin
9f228550a2 Merge pull request #730 from unihorn/65
chore(server): deprecate mod temporarily
2014-04-18 10:46:09 -07:00
Yicheng Qin
e0fbe27c99 fix(join_command): use RaftURL as peer address 2014-04-18 10:28:24 -07:00
Yicheng Qin
0c95e1eabb feat(peer_server): forbid rejoining with different name
Or it will confuse the cluster, especially the heartbeat between nodes.
2014-04-17 15:46:33 -07:00
Yicheng Qin
b0ac8a4b4b Merge pull request #624 from unihorn/36
chore(server/transporter): set RequestTimout reasonable
2014-04-17 15:19:10 -07:00
Yicheng Qin
273c293645 fix(server): rejoin cluster with different ip 2014-04-17 10:16:30 -07:00
Yicheng Qin
82dee82bfd chore: gofmt go files 2014-04-17 08:47:48 -07:00
Yicheng Qin
67600603c5 chore: rename proxy mode to standby mode
It makes the name more reasonable.
2014-04-17 08:04:42 -07:00
Yicheng Qin
a1a91ab75a chore(server): deprecate mod temporarily 2014-04-15 12:50:36 -07:00
Yicheng Qin
9caa801469 chore(server/transporter): remove unnecessary timeout 2014-04-15 12:08:58 -07:00
Yicheng Qin
65b872c8b5 Merge pull request #725 from dougm/server-lifecycle-fixes
fix(server): avoid race conditions in Run/Stop
2014-04-15 11:54:35 -07:00
Yicheng Qin
68afedbd16 chore(server/transporter): set RequestTimout reasonable 2014-04-15 11:13:43 -07:00
Yicheng Qin
adf4acf947 chore: gofmt go files 2014-04-15 09:42:25 -07:00
Doug MacEachern
d73390a674 fix(server): avoid race conditions in Run/Stop
- don't close ready channel until PeerServer is listening.
  avoids possible panic in Stop() if PeerServer is nil.

- avoid data race in Run() (err variable was shared between 2 goroutines)

- avoid data race in PeerServer Start/Stop (PeerServer.closeChan)
2014-04-15 09:24:54 -07:00
Yicheng Qin
8bcfb2ecaf Merge pull request #707 from unihorn/62
fix(peer_server): recover from outage with discovery
2014-04-14 13:58:43 -07:00
Yicheng Qin
03839ca806 fix(peer_server): recover from outage with discovery
This patch also contains the refactor of find cluster process.
It is changed based on @xiangli-cmu 's commits in 627 issue.
2014-04-14 13:56:47 -07:00
Xiang Li
0b790abd46 Merge pull request #705 from unihorn/61
feat: set NOCOW for log directory when in btrfs
2014-04-14 16:40:38 -04: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
d266f9dec7 Merge pull request #713 from unihorn/63
fix(server/key): unable to update unexpired ttl
2014-04-14 11:06:31 -07:00
Yicheng Qin
c8de5eee85 fix(server/key): unable to update unexpired ttl 2014-04-14 11:03:46 -07:00
Xiang Li
4fd9e627c0 fix(peer join) fix wrong join command redirection
1. We use PUT request to do a V2 join. So we should redirect a PUT request rather than a POST.
2. /admin only accept V2Join request. Send out V2Join instead of V1Join.
2014-04-13 21:33:02 -04:00
Yicheng Qin
56ef6fbcae make necessary changes 2014-04-11 17:00:14 -07:00
Yicheng Qin
79a89dcb82 Revert "Revert "fix(server): only set NOCOW for log file""
This reverts commit 9540575690db92a362f66d9aa4f2671265b87eb1.

Conflicts:
	etcd/etcd.go
2014-04-11 16:33:50 -07:00
Xiang Li
af87fa40c2 fix(registry.go) protect the peer and proxy map in the registry by lock 2014-04-10 23:24:09 -04:00
Xiang Li
6d08976cbe fix(raft_server_stats.go) protect raft stats by a lock 2014-04-10 22:50:44 -04:00
Yicheng Qin
9540575690 Revert "fix(server): only set NOCOW for log file"
This reverts commit 1eff547af61c2453b106f65691f928ddf8088a6b.
2014-04-09 14:39:16 -07:00
Yicheng Qin
1eff547af6 fix(server): only set NOCOW for log file 2014-04-09 12:35:32 -07:00
Yicheng Qin
76ac1da7ea feat(server): add HEAD for v1/watch 2014-04-08 17:37:05 -07:00
Yicheng Qin
89d3df242c chore(server): handle HEAD for key space efficiently
Implement HEAD in server/v1 and server/v2 functions to avoid
time wasting on JSON marhsal.
2014-04-07 18:55:07 -07:00
Yicheng Qin
28f19dec60 feat(server): make header-only requests work 2014-04-07 13:51:33 -07:00
Brandon Philips
eeca12a4c0 Merge pull request #663 from tsenart/master
Making code formatting consistent.
2014-03-27 17:08:12 -07:00
Tomás Senart
b6053d6a86 Making code formatting consistent.
$ gofmt -s -w  && goimports -w
2014-03-27 14:19:08 +01:00
Yicheng Qin
8afa93ed59 chore(server/listener): improve comment 2014-03-25 22:51:52 -07:00
Yicheng Qin
a3cbf02597 fix(tests): pass all tests using latest raft 2014-03-24 17:35:45 -07: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
Ben Johnson
7d4fda550d Machine join/remove v2 API. 2014-03-18 16:25:21 -06:00
Yicheng Qin
df2b565397 fix(test/server): avoid watch test timeout by moving json decode
These tests were timing out because the combination of the GET and JSON
decode was taking longer than the timeout. Pull the JSON decode out of
the go routine that is being timed.
2014-03-18 08:49:14 -07:00
Xiang Li
3ae792b159 refactor(listener) refactor listener related code
Remove duplicate code around creating http listener.
Start to listen incoming http requests just before serving them.
2014-03-13 15:47:27 -07:00
Xiang Li
c8e65c1315 Merge pull request #616 from xiangli-cmu/add_snapshot_post
fix(server/transporter.go) fix the short timeout problem of sending snapshot
2014-03-11 18:51:47 -07:00
Ben Johnson
e9a1ac15d9 Allow partial cluster config updates. 2014-03-10 16:05:03 -07:00
Ben Johnson
c0a59b3a27 Add minimum active size and promote delay. 2014-03-10 14:44:04 -06:00