Krishnan Parthasarathi
bda6bcd5be
Layered rpc-client implementation ( #2512 )
8 years ago
Krishnan Parthasarathi
c33d1b8ee6
Vendorize minio/dsync for server-side read lock ( #2484 )
...
- Prevention of stale lock accumulation.
- Removal of dead code.
8 years ago
Harshavardhana
83074ed57e
Add missing rpc-client.go - missing in previous commit.
8 years ago
Krishnan Parthasarathi
64a7e6992e
Vendorize rpc reconnect changes from minio/dsync ( #2405 )
8 years ago
Krishnan Parthasarathi
b0f3f94163
unify single-node and distributed namespace locking ( #2401 )
8 years ago
Krishnan Parthasarathi
b7c169d71d
object layer initialization using distributed locking ( #2397 )
...
* vendorized latest minio/dsync
* wip - object layer initialization using distributed locking
8 years ago
Krishnan Parthasarathi
e55926e8cf
distribute: Make server work with multiple remote disks
...
This change initializes rpc servers associated with disks that are
local. It makes object layer initialization on demand, namely on the
first request to the object layer.
Also adds lock RPC service vendorized minio/dsync
8 years ago
Bala FA
7431acb2c4
web: add handlers for set/get bucket policy. ( #2486 )
...
Refer #1858
8 years ago
Harshavardhana
975eb31973
api/bucketPolicy: Use minio-go/pkg/set and fix bucket policy regression. ( #2506 )
...
Current master has a regression 'mc policy <policy-type> alias/bucket/prefix'
does not work anymore, due to the way new minio-go changes do json marshalling.
This led to a regression on server side when a ``prefix`` is provided
policy is rejected as malformed from th server which is not the case with
AWS S3.
This patch uses the new ``minio-go/pkg/set`` package to address the
unmarshalling problems.
Fixes #2503
8 years ago
Harshavardhana
0a3d43273f
vendor: sha256 32bit updated. ( #2459 )
8 years ago
Frank
f239fcac67
Switched to faster minio/sha256-simd implementation ( #2320 )
8 years ago
Harshavardhana
f248089523
api: Implement bucket notification. ( #2271 )
...
* Implement basic S3 notifications through queues
Supports multiple queues and three basic queue types:
1. NilQueue -- messages don't get sent anywhere
2. LogQueue -- messages get logged
3. AmqpQueue -- messages are sent to an AMQP queue
* api: Implement bucket notification.
Supports two different queue types
- AMQP
- ElasticSearch.
* Add support for redis
8 years ago
Harshavardhana
35d438e0ff
vendorize: update all vendorized packages. ( #2206 )
...
Bring in new changes from upstream for all the packages.
Important ones include
- gorilla/mux
- logrus
- jwt
8 years ago
Harshavardhana
169c72cdab
vendor: Bring new updates from blake2b-simd repo. ( #2094 )
...
This vendorization is needed to bring in new improvements
and support for AVX2 and SSE.
Fixes #2081
9 years ago
Harshavardhana
48ac34919f
browser: Add new release for ui-assets.go ( #2070 )
...
update `ui-assets.go` using `x-amz-date` for JSON rpc.
9 years ago
Harshavardhana
d484157d67
XL/bitrot: Migrate to new blake2b-simd SIMD optimized implementation. ( #2031 )
...
Thanks for Frank Wessels <fwessels@xs4all.nl> for all the heavy lifting work.
Comparative benchmarks are as below.
```
benchmark old ns/op new ns/op delta
BenchmarkHash64-4 742 411 -44.61%
BenchmarkHash128-4 681 346 -49.19%
BenchmarkWrite1K-4 4239 1497 -64.69%
BenchmarkWrite8K-4 33633 11514 -65.77%
BenchmarkWrite32K-4 134091 45947 -65.73%
BenchmarkWrite128K-4 537976 183643 -65.86%
benchmark old MB/s new MB/s speedup
BenchmarkHash64-4 86.18 155.51 1.80x
BenchmarkHash128-4 187.96 369.10 1.96x
BenchmarkWrite1K-4 241.55 683.87 2.83x
BenchmarkWrite8K-4 3897.06 11383.41 2.92x
BenchmarkWrite32K-4 977.48 2852.63 2.92x
BenchmarkWrite128K-4 243.64 713.73 2.93x
```
Fixes #2030
9 years ago
Harshavardhana
e10934a88e
bitrot: Start using blake2b algorithm and remove sha512 usage. ( #1957 )
...
Fixes #1952
9 years ago
Harshavardhana
7f38f46e20
vendor: update klauspost/reedsomon package with upstream changes. ( #1912 )
9 years ago
Harshavardhana
4ab57f7d60
server: terminal width should fallback to 80x25. ( #1895 )
...
Some environments might disable access to `/dev/tty`, fall
back to '80' in such scenarios.
Move to 'cheggaaa/pb' package for better cross platform
support on fetching terminal width.
Fixes #1891
9 years ago
Harshavardhana
2e4ab71303
Web: Update with ui changes. ( #1808 )
9 years ago
karthic rao
2da34e4668
vendor changes to pkg/profile ( #1671 )
9 years ago
Harshavardhana
b66c3bf35e
server: Enable server profiling as needed. ( #1565 )
9 years ago
Harshavardhana
ba7a55c321
xl: ReedSolomon code fix small file erasure bug. ( #1431 )
...
For files less than 'dataBlocks', erasure encoding would fail
with short data due to a bug in the implementation itself.
Relax the error return, even a single byte can be properly
erasure coded without issues.
Fixes #1413
9 years ago
Harshavardhana
a9935f886c
vendor: update reedsolomon package with new perm improvements. ( #1422 )
9 years ago
Harshavardhana
a98a7fb1ad
Implement XL layer - preliminary work.
9 years ago
Harshavardhana
444d1f8a65
miniobrowser: Vendorize to new changes in miniobrowser.
9 years ago
Harshavardhana
fbd02d530d
web: Change /rpc to /webrpc
9 years ago
Bala.FA
083e4e9479
backend/fs: Refactor multipart upload
...
This patch modifies multipart upload related functions as below
* New multipart upload call creates file
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.uploadid
* Put object part call creates file
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.PART_NUMBER.MD5SUM_STRING
* Abort multipart call removes all files matching
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.*
* Complete multipart call does
1. creates a staging file
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.complete.TEMP_NAME
then renames to
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.complete
2. rename staging file
EXPORT_DIR/.minio/BUCKET/PATH/TO/OBJECT/UPLOAD_ID.complete
to EXPORT_DIR/BUCKET/PATH/TO/OBJECT
9 years ago
Harshavardhana
ba3a5805c1
vendorize: Add updated ui-assets.go.
9 years ago
Krishna Srinivas
331890c4c8
UI-handler: remove minio-go dependancy.
9 years ago
Harshavardhana
aaf97ea02c
config/main: Re-write config files - add to new config v3
...
- New config format.
```
{
"version": "3",
"address": ":9000",
"backend": {
"type": "fs",
"disk": "/path"
},
"credential": {
"accessKey": "WLGDGYAQYIGI833EV05A",
"secretKey": "BYvgJM101sHngl2uzjXS/OBF/aMxAN06JrJ3qJlF"
},
"region": "us-east-1",
"logger": {
"file": {
"enable": false,
"fileName": "",
"level": "error"
},
"syslog": {
"enable": false,
"address": "",
"level": "debug"
},
"console": {
"enable": true,
"level": "fatal"
}
}
}
```
New command lines in lieu of supporting XL.
Minio initialize filesystem backend.
~~~
$ minio init fs <path>
~~~
Minio initialize XL backend.
~~~
$ minio init xl <url1>...<url16>
~~~
For 'fs' backend it starts the server.
~~~
$ minio server
~~~
For 'xl' backend it waits for servers to join.
~~~
$ minio server
... [PROGRESS BAR] of servers connecting
~~~
Now on other servers execute 'join' and they connect.
~~~
....
minio join <url1> -- from <url2> && minio server
minio join <url1> -- from <url3> && minio server
...
...
minio join <url1> -- from <url16> && minio server
~~~
9 years ago
Harshavardhana
5606232567
vendor: Update ui-assets with new changes and release.
9 years ago
Harshavardhana
e781959d5b
vendor: Add minio-go vendor updates.
9 years ago
Harshavardhana
164dfe2ec9
console: Fix console color printing on windows.
...
Print colored accessKeyID and secretAccessKey are unreadable on windows
on command prompts and powershell.
Use the console package from minio client.
9 years ago
Krishna Srinivas
44b2037667
browser-assets: serve asset files with compression.
9 years ago
Harshavardhana
95d3ecb9ce
browser: vendorize to new browser update
9 years ago
Harshavardhana
781540081d
vendor: Update to new upstream changes from fatih/color
...
Brings in changes like support for Solaris/FreeBSD.
9 years ago
Harshavardhana
2181003609
web: Removing dependency for gpg and downloading assets.
...
Assets are vendorized from now on and updated for each release.
9 years ago
Anand Babu (AB) Periasamy
f53e9dd1b8
vendor update for go-homedir
9 years ago
Harshavardhana
9e10ee7e47
cpu: Remove pkg/cpu in favor of better klauspost/cpuid.
...
Fixes #1128
9 years ago
Anand Babu (AB) Periasamy
bbca70e13b
rewrite minio runtime checks
9 years ago
Harshavardhana
e59ceba51b
rpc: Fix json rpc to handle array and object request params.
...
rpc/v2/json2 code has a bug where it treats all jsonrpc 2.0
request params like an 'object'. In accordance with the spec
it could be both 'object' or an 'array'.
Handle both cases.
9 years ago
Krishna Srinivas
6ad39cb386
WebUI: move from rpc/v2/json to rpc/v2/json2 which has better error response structure.
9 years ago
Harshavardhana
62f6ffb6db
xl: Moved to minio/minio - fixes #1112
9 years ago
Harshavardhana
99fbc0fcb3
getObject: Add support for special response headers.
...
Supports now response-content-type, response-content-disposition,
response-cache-control, response-expires.
9 years ago
Harshavardhana
a066184bed
ui-assets: Integrate UI assets.
9 years ago
Krishna Srinivas
d038393156
UI: vendorize github.com/elazarl/go-bindata-assetfs which is needed by ui-assets.go
9 years ago
Harshavardhana
de9682a4e7
vendor: Update minio-go library with fixes for objectlisting.
9 years ago
Harshavardhana
3f1c4bb4b0
Bring in the list APIs implemented by Bala <bala@minio.io>
9 years ago
Harshavardhana
0a9496462a
jwt: Add JWT support for minio server.
...
Please read JWT.md before using this feature.
9 years ago