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
7c82e2316b
starting 0.53 beta
2014-04-10 13:47:39 -07:00
Chris Lu
79142614ea
0.52 version
2014-04-10 13:47:12 -07:00
Chris Lu
5f4dc11409
1. root dir has id of 0
...
2. only delete empty folders
3. correct listing files under a folder
2014-04-09 21:01:48 -07:00
Chris Lu
abde40377c
a correct implementation of filer
2014-04-09 09:44:58 -07:00
Chris Lu
67be8a5af8
adding filer!!!
2014-03-30 20:57:25 -07:00
Chris Lu
d6aa6239de
fix to avoid empty sub directory
2014-03-30 13:32:24 -07:00
Chris Lu
51fafdb525
more robust filer
2014-03-30 13:26:44 -07:00
Chris Lu
2861275fb6
working filer server!
2014-03-30 11:28:04 -07:00
Chris Lu
259c7d66f7
all in progress version will just be beta
2014-03-28 12:19:11 -07:00
Chris Lu
25a3c47def
Issue 65: weed-fs 0.51 does not compile under windows
2014-03-28 12:18:01 -07:00
Chris Lu
59f6a13609
adding lots of different stats
2014-03-26 13:22:27 -07:00
Chris Lu
39b774a131
1. adding statistics reporting
...
2. refactor version to util package
2014-03-25 13:46:59 -07:00
Chris Lu
6e0601a73b
0.51
2014-03-24 10:06:23 -07:00
Chris Lu
a0955aa4dd
refactor functions
2014-03-23 21:57:10 -07:00
Chris Lu
b1f083cb60
fix delayed deletion
2014-03-23 21:56:24 -07:00
Chris Lu
5c6a166761
better delayed deletion
2014-03-20 13:58:56 -07:00
Chris Lu
7251e357e7
enhance deletion operation
2014-03-20 13:30:34 -07:00
Chris Lu
7c5c94785c
switch to idle timeout instead of read timeout
2014-03-20 11:07:15 -07:00
Chris Lu
c22e5c1c51
now the volume compaction bug is fixed.
2014-03-19 04:48:58 -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
463589da01
adjusting logs
2014-03-19 04:46:42 -07:00
Chris Lu
96b67a7c35
adjusting logs
2014-03-19 04:45:25 -07:00
Chris Lu
252e553ef2
add deletion during benchmarking
2014-03-19 04:44:59 -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
37dd41ab91
print out log message
2014-03-19 04:41:41 -07:00
Chris Lu
3dbebfd1e1
Thread-safe fixes:
...
1. avoid sharing []byte
2. switch to use ReadAt()
2014-03-19 04:41:16 -07:00
Chris Lu
e5e6eeda83
found bugs with 0.50, backing off for now
2014-03-19 01:30:53 -07:00
Chris Lu
d8bc540130
Last important fix is version-bump-up-worthy: prevent heartbeat lost
...
when vacuuming
2014-03-18 23:50:03 -07:00
Chris Lu
af32b52727
1. no locks for all read operations! Switching to pread for all reads.
...
2. prevent heartbeat lost when vacuuming, by removing locks on Size()
function
2014-03-18 23:48:01 -07:00
Chris Lu
2841d59fb0
randomize the file size a little bit
2014-03-18 23:45:02 -07:00
Chris Lu
3fec41b911
remove unnecessary code
2014-03-18 22:32:29 -07:00
Chris Lu
92afbb858a
adjusting volumeSizeLimitMB default value and descriptions
2014-03-17 15:10:12 -07:00
Chris Lu
988f9d60d5
so many bug fixes, well worth an version bump
2014-03-16 13:51:32 -07:00
Chris Lu
f8b1d48f82
deal with empty learder() cases
2014-03-16 13:50:46 -07:00
Chris Lu
1040761ab6
avoid herding effect by double checking
2014-03-16 13:50:20 -07:00
Chris Lu
1c044280d6
reusing http connections in raft server
2014-03-16 13:49:49 -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
fb75fe852c
ignore "-peers" option if cluster is already bootstrapped
2014-03-15 00:36:51 -07:00
Chris Lu
6cedaf4356
fix glog format
2014-03-15 00:34:21 -07:00
Chris Lu
0c42c69e94
less greedy concurrency level, reducing open files
2014-03-14 01:53:47 -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
946aa6d1e7
error message change
2014-03-13 12:11:50 -07:00
Chris Lu
7621b9b8a9
help content textual changes
2014-03-13 12:11:26 -07:00
Chris Lu
7a8bc2e19e
avoid sharing same err variable
2014-03-12 15:17:23 -07:00
Chris Lu
097aac2328
adjusting default read time out
2014-03-12 15:05:07 -07:00
Chris Lu
24cc55b444
1. increase default concurrency level
...
2. efficient stats collection and calculation
3. accurate error count
2014-03-12 14:10:28 -07:00
Chris Lu
d30052ce85
adjusting error message
2014-03-12 14:08:57 -07:00
Chris Lu
ff0560ee03
adjust error message
2014-03-12 14:07:30 -07:00
Chris Lu
c3ce024fc1
reusing http connections
2014-03-12 14:07:01 -07:00
Chris Lu
054374c765
in progress, trying to make benchmark working better to reuse http
...
connections.
2014-03-12 10:30:57 -07:00
Chris Lu
466a55b06d
fix error message
2014-03-12 10:25:05 -07:00
Chris Lu
6f2d590617
fix error message
2014-03-12 06:23:07 -07:00
Chris Lu
c169429c33
fix https://code.google.com/p/weed-fs/issues/detail?id=64
2014-03-12 06:19:30 -07:00
Chris Lu
c81f85e16d
add percentage of benchmark progress
...
plan to release v0.48
2014-03-10 13:34:06 -07:00
Chris Lu
45757b8b55
minor output format change
2014-03-10 13:22:08 -07:00
Chris Lu
1f0a564e43
adding progress report during benchmarking
2014-03-10 13:21:21 -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
a121453188
benchmarking writing data to a specific collection
2014-03-09 23:54:07 -07:00
Chris Lu
eac9c4d86b
better benchmarking statistics
2014-03-09 23:12:05 -07:00
Chris Lu
86b17e8972
a kind of working benchmark
2014-03-09 19:42:50 -07:00
Chris Lu
c830b60f36
refactoring
2014-03-09 18:50:45 -07:00
Chris Lu
e6e85a6b2c
truncate file content during creating
2014-03-09 18:50:09 -07:00
Chris Lu
7283d68e32
fixed redirection error
2014-03-03 08:20:46 -08:00
Chris Lu
ab9206c38e
spelling error with parameter name!
2014-03-02 23:32:54 -08: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
edae676913
1. volume server auto detect clustered master nodes
...
2. remove operation package dependency on storage
2014-02-14 17:10:49 -08:00
Chris Lu
ef4c2c0d1e
cleaner cluster messages
2014-02-09 23:37:29 -08:00
Chris Lu
67125688ed
Avoid creating *.dat file when reading and it does not exist
2014-02-06 17:32:06 -08:00
Chris Lu
91829057c5
set to 400 Bad Request when failed to parse file id, recommended by
...
claudiu
2014-02-06 12:03:25 -08:00
Chris Lu
f68e15da89
set to 404 when failed to read file id
2014-02-06 12:00:58 -08:00
Chris Lu
d0147a16a9
avoid index out of range exception
2014-02-06 11:44:54 -08:00
Chris Lu
59b9fd26fc
fix replication type parameter name
2014-02-06 11:44:18 -08:00
Chris Lu
6d7556b31f
help message adjustment
2014-02-05 11:47:26 -08:00
Chris Lu
69a7de1ad8
optimize for submission from clustered master nodes
2014-02-05 10:49:05 -08:00
Chris Lu
0e5c4e432d
report when size is closing to the volume limit
...
fix error
2014-02-05 10:36:37 -08:00
Chris Lu
2a8c60f71b
be lenient when writing, but report right away when volume size limit is
...
exceeded
2014-02-05 10:22:32 -08:00
Chris Lu
2cba123474
bump up to 0.46
2014-02-05 01:55:37 -08:00
Chris Lu
e7585548a4
working auto fail-over master node
2014-02-05 01:54:52 -08:00
Chris Lu
d6fbd741fd
a stable working clustering master node implementation
2014-02-05 00:25:23 -08:00
Chris Lu
1d5c44e2df
adjust description text
2014-02-05 00:13:25 -08:00
Chris Lu
af4b9c3aee
go fmt
2014-02-04 01:11:28 -08:00
Chris Lu
6887e55f6a
minor adjustment for weed master nodes clustering
2014-02-04 01:10:07 -08:00
Chris Lu
260fcd8e1e
reduce the default volume size to 32000MB from 32768MB
...
this avoids problems with busy writing systems from having too many file
id assigned while the volume is close to the overflow limit.
2014-01-29 13:34:46 -08:00
Chris Lu
bf56bce5e9
Issue 62: Latest raft update breaks the build
2014-01-28 11:15:24 -08:00
Chris Lu
cda2a6b510
trivial refactoring
2014-01-21 20:51:46 -08:00
Chris Lu
bd6e1a8a70
Issue 60: weed export -collection doesn't work
2014-01-21 20:51:07 -08:00
Chris Lu
1bf75f7f73
toughen up error handling for invalid fid
2013-12-09 13:53:24 -08:00
Chris Lu
512899e6a6
disable raft logging
2013-12-09 13:34:28 -08:00
Chris Lu
da9abc2a93
a start for distributed master support, not working yet
2013-12-09 13:34:05 -08:00
Chris Lu
11e91bd549
mux router cannot handle "/" correctly. switching it off for volume
...
servers
2013-12-09 13:27:09 -08:00
Chris Lu
2e2f426fe2
clean up etcd backing for sequence persistent storage. It uses some OS
...
specific calls and is not OS-agnostic.
2013-12-03 23:30:55 -08:00
Chris Lu
5fdb1d89ce
adding "server" command to start both volume server and an embedded
...
master server
2013-12-03 23:22:26 -08:00
Chris Lu
eeeccf2f78
ssue 59: Multi Ip Enviromment support + publicUrl is disregarded by
...
master
2013-12-02 22:58:27 -08:00
Chris Lu
e449a4a517
use glog
2013-12-02 01:59:04 -08:00
Chris Lu
a234789c59
switch to glog debugging
2013-12-02 01:54:05 -08:00
Chris Lu
c38eee73ca
refactoring to separate master and volume server, so that these servers
...
can be embedded into other applications
2013-12-02 01:37:36 -08:00
Chris Lu
bc2f3b26e7
refactoring, start to use gorilla/mux
2013-12-01 14:41:47 -08:00
Chris Lu
1645d3c185
avoid nil cases when error
2013-11-19 02:12:56 -08:00
Chris Lu
bd0c7a3d28
comment out etcd support due to its os specific system calls
2013-11-19 01:43:16 -08:00
Chris Lu
fa1bb3cee3
version 0.45!
2013-11-18 23:54:01 -08:00
Chris Lu
ac66eee045
added download command to download file by fileid
2013-11-18 23:41:00 -08:00
Chris Lu
47aea42d66
fix filename not set error
2013-11-18 23:16:21 -08:00
Chris Lu
8111f7663d
formatting
2013-11-18 23:04:33 -08:00
Chris Lu
d0473e27d9
refactor api: lookup file id
2013-11-18 23:03:59 -08:00
Chris Lu
c4a4d3609b
fix duplicated file id list entries when uploading large file
2013-11-18 23:03:06 -08:00
Chris Lu
0e5e0a3754
add option to split large files into parts and then upload
2013-11-18 21:47:31 -08:00
Chris Lu
aed74b5568
adjust function name
2013-11-18 15:05:11 -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
5eac4f043a
remove a comment
2013-11-12 02:16:07 -08:00
Chris Lu
0702eee3b1
adjust logging
2013-11-10 01:47:27 -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
5cb6590eae
add metastore, switching sequence to use it
...
metastore is for storing metadata. This will be used later when moving
to distributed master mode.
2013-11-05 01:59:00 -08:00
Chris Lu
b579451db9
this is a fix important enough for a version bump
2013-10-31 12:57:32 -07:00
Chris Lu
53eacb4341
fix issue 52
...
keep compact section sorted when input data are not ordered
2013-10-31 12:57:06 -07:00
Chris Lu
cca1df83da
debug message
2013-10-31 12:56:05 -07:00
Chris Lu
3185eebf2e
add test case for issue 52
2013-10-31 12:55:51 -07:00
Chris Lu
3422272a50
fix test
2013-10-31 12:55:34 -07:00
Chris Lu
9e9b2c0703
log changes
2013-10-31 12:55:19 -07:00
Chris Lu
54723c3713
Issue 51: Assign on empty cluster sometime fails under high concurrency
...
load
Contributed by philoops
2013-10-29 12:48:31 -07:00
Chris Lu
c43dcfa3e2
prepare for v0.43 release
2013-10-16 08:39:36 -07:00
Chris Lu
59ded34b83
issue 48 weed upload does not set the modified date
2013-10-16 08:39:09 -07:00
Chris Lu
030905714b
issue 49: unwritable volume become writable after compacting
2013-10-16 08:30:29 -07:00
Chris Lu
3f5f8657d2
add a command to force compaction of a volume, removing deleted files
2013-09-28 22:18:52 -07:00
Chris Lu
738e528329
v0.42
...
Changes:
* fixed issue 45
2013-09-19 11:38:52 -07:00
Chris Lu
69ac6b6bf6
Issue 45 in weed-fs: [Compact issue] Offset overflow
...
New issue 45 by hieu.hcmus@gmail.com: [Compact issue] Offset overflow
http://code.google.com/p/weed-fs/issues/detail?id=45
You are using uint32(Maximum 4Gb) to store needle offset(Maximum 32Gb)
when compacting.
Currently It is ok if the volume size is < 4gb
Change variable "offset" in ScanVolumeFile function to uint64 to fix the
issue.
2013-09-19 11:06:14 -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
2e70cc8be7
default to use os.TempDir() instead of hard coded "/tmp"
2013-08-28 10:39:15 -07:00
Chris Lu
37b231b5dc
Only limit input parameter to io.Reader
2013-08-14 11:31:39 -07:00
Chris Lu
8e1ac16d16
refactoring submit operation
2013-08-14 10:07:42 -07:00
Chris Lu
48e4ced29d
easier for client to delete file
2013-08-14 00:31:02 -07:00
Chris Lu
d5e7c1de0a
refactoring code
...
reusable code by go clients
2013-08-13 23:26:51 -07:00
Chris Lu
f7c1a15ad1
correctly print strings in error
2013-08-13 18:21:54 -07:00
Chris Lu
e45c6b5e21
add white list to both master and volume servers
...
prepare for v0.41
2013-08-13 09:31:19 -07:00
Chris Lu
3572e1140e
adjusting parameter names
2013-08-13 09:22:06 -07:00
Chris Lu
078118ecba
v0.40
2013-08-12 23:48:10 -07:00
Chris Lu
11b4e0c77d
fix syntax error
2013-08-12 21:43:13 -07:00
Chris Lu
e0951dd44f
added write whiteList, to make it a bit easier to secure volume servers
...
on hosting environments.
2013-08-12 21:27:47 -07:00
Chris Lu
44c4e74655
correct and more cleaner logic to fall back to read only mode
...
checking file permissions directly since the try and catch exception
approach does not work consistently as seen in bug #41
2013-08-12 16:53:32 -07:00
Chris Lu
a74978baeb
ensure unwritable volumes are not in writables list
2013-08-12 16:39:49 -07:00
Chris Lu
82f6a6838f
wording change
2013-08-11 13:15:11 -07:00
Chris Lu
0deda9b638
prepare to release 0.38
2013-08-11 11:50:18 -07:00
Chris Lu
7cef280bdc
handle cases when .idx files are also readonly
...
adjusting log level
2013-08-11 11:38:55 -07:00
Chris Lu
27f04a382a
avoid changing max size
2013-08-09 00:17:07 -07:00
Chris Lu
ed154053c8
switching to temporarily use glog library
2013-08-08 23:57:22 -07:00