Commit Graph

335 Commits

Author SHA1 Message Date
chrislusf
3a024d62df skip directory listing when paginating files. 2015-04-14 10:09:46 -07:00
chrislusf
98aa9cc068 Adding filer option disableDirListing 2015-04-13 23:38:49 -07:00
chrislusf
71e9b302d4 Fix empty public url 2015-04-08 11:08:08 -07:00
chrislusf
3ece066700 change count to uint64 to fix #109
fix https://github.com/chrislusf/weed-fs/issues/109
2015-04-06 14:17:36 -07:00
chrislusf
c37a20178e Adjust logging level. 2015-03-29 14:22:54 -07:00
chrislusf
1b6ab2f6af Add boltdb for volume needle map
boltdb is fairly slow to write, about 6 minutes for recreating index
for 1553934 files. Boltdb loads 1,553,934 x 16 = 24,862,944bytes from
disk, and generate the boltdb as large as 134,217,728 bytes in 6
minutes.

To compare, for leveldb, it recreates index in leveldb as large as
27,188,148 bytes in 8 seconds.
For in memory version, it loads the index in

To test the memory consumption, the leveldb or boltdb index are
created. And the server is restarted. Using the benchmark tool to read
lots of files. There are 7 volumes in benchmark collection, each with
about 1553K files.
For leveldb, the memory starts at 142,884KB, and stays at 179,340KB.
For boltdb, the memory starts at 73,756KB, and stays at 144,564KB.
For in-memory, the memory starts at 368,152KB, and stays at 448,032KB.
2015-03-29 11:04:32 -07:00
chrislusf
020ba6c9a8 add leveldb support for needle map
This supposedly should reduce memory consumption. However, for tests
with millions of, this shows consuming more memories. Need to see
whether this will work out. If not, later boltdb will be tested.
2015-03-27 16:34:58 -07:00
chrislusf
43689146cc fix compilation error 2015-03-24 11:09:29 -07:00
chrislusf
f56339f38d [ui] add ui to status page 2015-03-24 10:52:14 -07:00
chrislusf
b113760cf4 [ui] format peers 2015-03-24 00:09:20 -07:00
chrislusf
78bc7b393f tweaking ui 2015-03-22 12:50:04 -07:00
chrislusf
b75ca9890d Add Initial Seaweed File System UI 2015-03-19 10:39:22 -07:00
chrislusf
62f5e35cbe fix public handler setup 2015-03-13 07:59:29 -07:00
chrislusf
85efc37320 marking weedfs.conf as deprecating.
The conf settings currently is duplicating with command line options.
2015-03-11 10:01:08 -07:00
chrislusf
b07d81fb08 follow golint suggestions 2015-03-10 00:20:34 -07:00
chrislusf
f511b507a5 Add read only public port on volume server
Add read only public port on volume server
2015-03-09 01:10:04 -07:00
chrislusf
853701cb6b Avoid wrong way to delete on replication failure
Avoid wrong way to delete on replication failure. This deletion has bug
to write. The better fix is not to use the deletion on failure at all.
2015-03-09 01:10:04 -07:00
chrislusf
9d8a6d2562 adjust log printing 2015-03-09 01:10:04 -07:00
chrislusf
b2f636ab8c set default volume admin port 2015-02-25 23:59:44 -08:00
Chris Lu
a506e7953f Separate read and write volume handlers. 2015-02-25 23:59:07 -08:00
chrislusf
226df38c95 Redirect to publicUrl
Redirect to publicUrl
2015-02-12 21:12:53 -08:00
chrislusf
e282a9b06a Fix compilation error 2015-02-12 19:51:48 -08:00
chrislusf
3b1b955fc5 ensure non empty volume publicUrl 2015-02-12 17:51:13 -08:00
chrislusf
e0d8259d98 Randomize http redirect.
Randomize http redirect.
Also remove unnecessary empty string checking.
2015-02-12 14:34:05 -08:00
yourchanges
7e0c080581 Move the redirect url perfer to volume server's PublicUrl 2015-02-12 18:46:56 +08:00
yourchanges
2e0d0046c4 Move the redirect url to volume server's PublicUrl (reverted from commit 2df72001b2) 2015-02-12 18:35:29 +08:00
yourchanges
2df72001b2 Move the redirect url to volume server's PublicUrl 2015-02-12 18:15:36 +08:00
chrislusf
eff83a87d1 Add publicUrl for master server 2015-02-11 21:04:43 -08:00
Chris Lu
f7998f8652 merge conflicts 2015-02-07 15:35:28 -08:00
chrislusf
714ccb6e2b Fix compilation error due to upstream API change.
Fix compilation error due to upstream API change.
2015-02-05 23:11:27 -08:00
chrislusf
09f98630c0 Avoid checking folder if not using filer. fix #80
Fix https://github.com/chrislusf/weed-fs/issues/80
2015-02-05 10:12:35 -08:00
yanyiwu
7bfa93a283 use sync.RWMutex when masterNode changes 2015-02-04 18:05:18 +08:00
chrislusf
1791de4ae4 Avoid creating filer folder if not starting it. 2015-02-02 16:26:12 -08:00
chrislusf
e381356af9 change CLI option from publicIp to publicUrl
Now the publicUrl is free style text.
2015-02-02 15:51:25 -08:00
chrislusf
cc724305b6 Using Url instead of PublicUrl for volume server
Originally there are only url(ip + port), and publicUrl. Because ip was
used to listen for http service, it has less flexibility and volume
server has to be accessed via publicUrl.

Recently we added ip.bind, for binding http service.

With this change, url can be used to connect to volume servers. And
publicUrl becomes a free style piece of url information, it does not
even need to be unique.
2015-02-02 10:16:50 -08:00
chrislusf
0e23ee4dce Update volume server's master node when masters change. 2015-01-31 12:47:04 -08:00
Chris Lu
7b4a53b2c1 Add optional admin port to volume server, to seperate admin operations from normal file operations. 2015-01-18 17:03:38 -08:00
Chris Lu
41bd5179f3 Resolve Conflicts 2015-01-14 09:56:13 -08:00
Chris Lu
af416189f1 Cleanup error printing. 2015-01-13 17:04:41 -08:00
Lei Xue
029e3a3822 fix some typos 2015-01-13 18:46:56 +08:00
Chris Lu
5afdc469a3 Separate into admin and public mux for volume servers. 2015-01-13 00:45:26 -08:00
Chris Lu
09bc196958 Refactoring volume server options. 2015-01-13 00:36:44 -08:00
Chris Lu
ef191f2901 Refactoring volume server options. 2015-01-13 00:27:51 -08:00
Chris Lu
8f72a1965f Fix go vet warnings. 2015-01-12 21:20:11 -08:00
yanyiwu
543f5af5af add w.Write for FilerServer HTTP response 2015-01-09 19:24:49 +08:00
yanyiwu
fe91fd00ad fix bug: 'http: multiple response.WriteHeader calls' 2015-01-08 19:04:10 +08:00
Brian McQueen
e7741db9a2 fixed description error in redis.database 2015-01-08 00:44:41 -08:00
Brian McQueen
cec2b3724c add server options to set redis and cassandra in the filer and corrected filer option description text 2015-01-08 00:41:27 -08:00
Chris Lu
5b5d6341e5 Set http status after modifying response headers. 2015-01-08 00:19:32 -08:00
yanyiwu
7d810a15c0 fix bug about : writed needle into localfile twice when replicating, because of the ip is not equal : ":8080" != "127.0.0.1:8080" 2015-01-07 16:47:57 +08:00
Chris Lu
e4531fc1e6 Add Redis support for Distributed Filer store. 2015-01-06 20:15:13 -08:00
Chris Lu
d77f3120c3 Adjust function name. 2015-01-06 19:34:11 -08:00
Chris Lu
c25c9aff41 Merge branch 'master' of github.com:chrislusf/weed-fs 2015-01-06 19:26:58 -08:00
Chris Lu
cceb5768c7 Adjust function name. 2015-01-06 19:26:48 -08:00
yanyiwu
0b192917f8 fix bug about the collection in volume is wrong when curl -F "file=@/tmp/test.jpg" "localhost:9333/submit?collection=picture" 2015-01-06 19:31:26 +08:00
Chris Lu
49784d7f28 Add support for distributed filer metadata store. 2015-01-05 23:03:27 -08:00
Chris Lu
165734ce11 Refactoring for supporing cassandra as filer meta data store 2015-01-05 14:58:30 -08:00
Chris Lu
a3e4145e8a refactoring for later security changes 2015-01-05 14:20:04 -08:00
yanyiwu
5b7628cf08 use github.com/golang/protobuf/proto instead of code.google.com/p/goprotobuf/proto 2014-12-26 16:59:53 +08:00
Brian McQueen
d56c748fa8 switch it back to chris's repo 2014-12-14 00:35:26 -08:00
Brian McQueen
57ec736941 make it turn on the filer when filer.redirectOnRead is set 2014-12-14 00:33:16 -08:00
Brian McQueen
c0dfdf4392 switch to my forked repo 2014-12-14 00:20:21 -08:00
Brian McQueen
a3583e4e7c Merge branch 'master' of https://github.com/chrislusf/weed-fs 2014-12-14 00:13:51 -08:00
chrislusf
e431d4121e Add optional http redirect for filer GET requests. 2014-12-08 20:34:27 -08:00
chrislusf
ba972694c7 Add filer option to redirect instead of proxying to volume server on file GET requests. 2014-12-08 20:27:26 -08:00
chrislusf
7a6394378c Remove a volume server concurrent connection limit. 2014-12-04 21:22:09 -08:00
chrislusf
89fd1e4b6e Add more thread safe counters. Tighten thread synchronization. 2014-12-04 18:30:44 -08:00
Chris Lu
6c5a3d3dbf Increase performance by reusing []byte, reducing GC. 2014-11-30 21:55:53 -08:00
Chris Lu
ca67ed69a1 Change name to Seaweed. 2014-11-28 17:02:10 -08:00
Chris Lu
8af4753002 Write request id to first 8 bytes of a file, instead of whole file, for
better write performance.
2014-11-28 16:34:03 -08:00
Chris Lu
7ce628bf09 Clean raft configurations if "peers" option is set. 2014-10-27 01:09:45 -07:00
Chris Lu
179d36ba0e formatting code by: goimports -w=true . 2014-10-26 11:34:55 -07:00
Chris Lu
a5d6e70299 fix commenting error. 2014-10-26 11:25:02 -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
Chris Lu
b5aa2ef605 Add master bind ip address option. 2014-10-21 01:28:17 -07:00
Chris Lu
670b240a26 Fix help text error. 2014-10-21 01:27:40 -07:00
bmcquee
bd664def45 Revert "fix func name HasWriableVolume"
This reverts commit bff7b71389.
2014-10-19 23:08:01 -07:00
bmcquee
02ae8b98a5 Revert "change wriable to writeable"
This reverts commit 626b896448.
2014-10-19 23:07:58 -07:00
bmcquee
626b896448 change wriable to writeable 2014-10-19 23:01:15 -07:00
bmcquee
7ca10d8dcf add another logging line verbosity 2 2014-10-19 20:03:00 -07:00
bmcquee
bff7b71389 fix func name HasWriableVolume 2014-10-19 08:51:07 -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
a2f8d985fb Fix typo. 2014-09-20 23:34:13 -07:00
Chris Lu
ba179b1542 Add "-ip.bind" option when starting volume servers.
Also some Weed->Seaweed changes.
2014-09-20 23:30:35 -07:00
Chris Lu
794b755f1d rename to Seaweed File System 2014-09-20 21:18:26 -07: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
57a4549d86 wrap etag value with double quotes 2014-08-26 10:15:12 -07:00
Chris Lu
ce4acecaa8 Fix filer proxing http status code
Double quote etag value.
2014-08-25 12:02:04 -07:00
Chris Lu
4c58cef24a a bit refactoring to prepare for volume format change and backward
compatibility.
2014-08-25 11:37:00 -07:00
Chris Lu
df78466a12 remove uploading stated from volume server. 2014-08-05 18:14:12 -07:00
Chris Lu
530927db64 Add Etag support 2014-07-22 00:24:50 -07:00
Chris Lu
5d88cec2df 1. pass through http response headers
2. set http status 201 for creating files
2014-07-21 14:25:51 -07:00
Chris Lu
a3fb644d86 fix wrong error printing that caused panic 2014-07-21 13:42:15 -07:00
Chris Lu
a0b2582a75 comments change 2014-07-20 23:17:29 -07:00
Chris Lu
77fd5ecd98 Add /admin/mv to move a file or a folder 2014-07-20 23:12:49 -07:00
Chris Lu
38231b6891 return image size when client image processing 2014-07-05 00:43:41 -07:00
Chris Lu
cb28c26398 Setting application/json for json result.
Setting application/javascript for jsonp result.
2014-06-13 18:16:03 -07:00
Chris Lu
d7f6af09e6 Better guessing mime type with octstream 2014-06-08 21:02:20 -07:00