Commit graph

49 commits

Author SHA1 Message Date
yanyiwu cacfc85869 add some String() to make codes easier to read and debug 2015-01-08 15:54:50 +08:00
chrislusf 52180f386b Add read-write lock to guard topology changes on new collections and ttls. 2014-12-08 20:29:25 -08:00
Chris Lu 179d36ba0e formatting code by: goimports -w=true . 2014-10-26 11:34:55 -07:00
Chris Lu f527fc1d5e adjust visibility 2014-10-25 23:45:31 -07:00
Chris Lu 30bcda7136 fix typo 2014-10-25 18:10:32 -07:00
wyy 4126280d55 use github.com/chrislusf instead of github.com/aszxqw 2014-09-25 16:57:22 +08:00
wyy 1cd19447e3 use github.com/aszxqw instead of code.google.com/p 2014-09-25 00:47:09 +08:00
Chris Lu b9aee2defb add TTL support
The volume TTL and file TTL are not necessarily the same. as long as
file TTL is smaller than volume TTL, it'll be fine.

volume TTL is used when assigning file id, e.g.
http://.../dir/assign?ttl=3h

file TTL is used when uploading
2014-09-20 12:38:59 -07:00
Chris Lu df2d3ea7c0 fix old tests that's found not working during travis integration. 2014-07-20 23:41:25 -07:00
Chris Lu 38260fcfb1 rename to _vacuum.go 2014-05-19 21:17:04 -07:00
Chris Lu 1818a2a2da Change to protocol buffer for volume-join-masster message
Reduced size to about 1/5 of the previous json format message
2014-04-21 02:11:10 -07:00
Chris Lu 3b5035c468 1. v0.54
2. go vet found many printing format errors
2014-04-17 00:16:44 -07:00
Chris Lu 51939efeac 1. volume server now sends master server its max file key, so that
master server does not need to store the sequence on disk any more
2. fix raft server's failure to init cluster during bootstrapping
2014-04-16 23:43:27 -07:00
Chris Lu 0abd809663 Correct logic to allocate volume slots 2014-04-13 03:06:58 -07:00
Chris Lu 47620bb27a correct assign logic for rack level. Still need to fix data center
level.
2014-04-13 02:26:22 -07:00
Chris Lu ae2ef6e41d mostly working correctly, but may have failed volume growing attempts
when slots are tight.
2014-04-13 02:16:45 -07:00
Chris Lu f7f582ec86 1. refactoring, merge "replication" logic into "topology" package
2. when growing volumes, additional preferred "rack" and "dataNode"
paraemters are also provided. Previously only "dataCenter" paraemter is
provided.
2014-04-13 01:29:52 -07:00
Chris Lu 008aee0dc1 Add retrying logic to wait for other peers during cluster bootstrapping. 2014-04-11 16:23:58 -07:00
Chris Lu 2861275fb6 working filer server! 2014-03-30 11:28:04 -07:00
Chris Lu 0563773944 switch to ReadAt() for thread-safe read
fix bugs during volume compaction
2014-03-19 04:48:13 -07:00
Chris Lu b2e8bfb54e adjusting logs 2014-03-19 04:43:21 -07:00
Chris Lu 76bf72e8ef adjust log level 2014-03-19 04:42:57 -07:00
Chris Lu 41143b3b78 toughen weedfs clustering, adding synchronizing max volume id among
peers in order to avoid the same volume id being assigned twice
1. moving raft.Server to topology
2. adding max volume id command for raft
2014-03-15 23:03:49 -07:00
Chris Lu eec67d6008 fix bug on volume growing failure where free space equals what's
required.
more meaningful volume allocation errors
2014-03-13 12:13:39 -07:00
Chris Lu cd10c277b2 can now delete a collection! Is this a dangerous feature? Only enabling
deleting "benchmark" collections for now.
2014-03-10 11:43:54 -07:00
Chris Lu 27c74a7e66 Major:
change replication_type to ReplicaPlacement, hopefully cleaner code
works for 9 possible ReplicaPlacement
xyz
x : number of copies on other data centers
y : number of copies on other racks
z : number of copies on current rack
x y z each can be 0,1,2

Minor:
weed server "-mdir" default to "-dir" if empty
2014-03-02 22:16:54 -08:00
Chris Lu ef4c2c0d1e cleaner cluster messages 2014-02-09 23:37:29 -08:00
Chris Lu 3b68711139 support for collections! 2013-11-12 02:21:22 -08:00
Chris Lu 8f0e2f31af remove unused parameter pulse 2013-11-12 02:19:06 -08:00
Chris Lu 1888d01fa0 adding etcd storage support for cluster meta data. Currently just
sequence. More to come...
2013-11-10 01:31:50 -08:00
Chris Lu 030905714b issue 49: unwritable volume become writable after compacting 2013-10-16 08:30:29 -07:00
Chris Lu 82b74c7940 issue 43 "go fmt" chagnes from "Ryan S. Brown" <sb@ryansb.com>
some basic changes to parse upload url
2013-09-01 23:58:21 -07:00
Chris Lu a74978baeb ensure unwritable volumes are not in writables list 2013-08-12 16:39:49 -07:00
Chris Lu ed154053c8 switching to temporarily use glog library 2013-08-08 23:57:22 -07:00
Chris Lu c2a6012ba5 avoid verbose log message when some volumes are full 2013-08-08 15:04:00 -07:00
Chris Lu dd2245956f better locking to prevent any possible memory access error 2013-07-15 21:34:43 -07:00
Chris Lu ac15868694 clean up log fmt usage. Move to log for important data changes,
warnings.
2013-07-13 19:44:24 -07:00
Chris Lu 50269b74ce add dataCenter option when assign file keys
add dataCenter option when starting volume servers
some work related to freeze a volume. Not tested yet.
2013-06-19 18:10:38 -07:00
Chris Lu 915b16f97a refactoring, same logic, but the store replication logic is moved to a
stand-alone file, for later easier improvements
2013-04-16 00:10:21 -07:00
Chris Lu e4da140d0a rename volume_location.go to volume_location_list.go 2013-04-15 15:19:14 -07:00
Chris Lu a4369b35a7 merge changes from about dealing with read only volumes.
97482255d5.diff
2013-04-14 19:30:26 -07:00
Chris Lu 9da3ea35ac avoid empty data nodes 2013-03-20 05:12:55 -07:00
Chris Lu 1aea3512a4 return nil instead of memory access error 2013-03-20 01:23:15 -07:00
Chris Lu a1d5a6298c avoid missing configuration file error 2013-03-19 10:36:29 -07:00
Chris Lu 2d4a7ac9f9 avoid error when missing configuration file 2013-03-19 10:35:13 -07:00
Chris Lu 018df9ceb0 avoid file not exist error 2013-03-19 10:33:33 -07:00
Chris Lu db8e27be6e add lots of error checking by GThomas 2013-02-26 22:54:22 -08:00
Chris Lu 79d11ac951 go vet 2013-02-10 09:44:44 -08:00
Chris Lu 5071f528f6 testing compilation with remove package 2013-02-10 03:49:51 -08:00