Harshavardhana
9eb56f0676
xl/healFile: Handle errors and continue ( #1425 )
...
Fixes #1354
2016-04-29 17:52:49 -07:00
Harshavardhana
10a010c1ad
xl/fs: Object layer - keep common functions into single place. ( #1423 )
2016-04-29 17:52:17 -07:00
Harshavardhana
a9935f886c
vendor: update reedsolomon package with new perm improvements. ( #1422 )
2016-04-29 14:59:03 -07:00
Harshavardhana
4e34e03dd4
xl/fs: Split object layer into interface. ( #1415 )
2016-04-29 14:24:10 -07:00
nomadlogic
4d1b3d5e9a
docs: FreeBSD minio source intructions ( #1421 )
...
* Modifications of documentation for using and building minio server on FreeBSD.
- update example of enabling compression to use lz4 vs gzip and provide
explanation of benefits of lz4
- provide walkthrough of building minio server on FreeBSD with binary
golang and gmake
* Fixing markdown syntax for code blocks so we render correctly.
* typo fix
* reword compression enablement docs for easier reading
2016-04-29 13:35:20 -07:00
Krishna Srinivas
7066ce5160
XL/Multipart: rename the parts instead of concatenating. ( #1416 )
2016-04-29 12:17:48 -07:00
Krishna Srinivas
39df425b2a
lock: bug fixes. ( #1420 )
...
* release Lock on map before trying to Lock NS
* delete NS lock from map if no more refs.
* refactor to avoid repetition of code.
2016-04-29 11:39:20 -07:00
Harshavardhana
984903cce1
server: Add global namespace lock. ( #1398 )
...
Fixes #1393
2016-04-29 01:29:09 -07:00
karthic rao
8deddb82f4
Cleanup: Moving IsValidLocationContraint to handler utils
2016-04-28 20:01:11 -07:00
Harshavardhana
a1a667ae5d
xl: Change fileMetadata to xlMetadata. ( #1404 )
...
Finalized backend format
```
{
"version": "1.0.0",
"stat": {
"size": 24256,
"modTime": "2016-04-28T00:11:37.843Z"
},
"erasure": {
"data": 5,
"parity": 5,
"blockSize": 4194304
],
"minio": {
"release": "RELEASE.2016-04-28T00-09-47Z"
}
}
```
2016-04-28 19:27:02 -07:00
Harshavardhana
41b35cff7b
xl: Fixes a bug in read quorum ListFiles() ( #1412 )
...
Fixes a bug in #1406
2016-04-28 17:32:46 -07:00
Harshavardhana
eed756777b
object: Allow '[' and ']' as part of object names.
2016-04-28 13:29:32 -07:00
Harshavardhana
2ac10209cc
xl: ListFiles - return sorted files. ( #1408 )
...
Fixes #1407
2016-04-28 01:48:57 -07:00
Bala FA
5bd6b0b510
xl: check read quorum for ListFiles() ( #1406 )
...
Fixes #1364
2016-04-27 21:09:26 -07:00
karthic rao
1813e9c070
Cleanup - Comments and readability fixes ( #1386 )
2016-04-27 19:28:13 -07:00
Scott McClellan
f87a19a15c
Minor changes to CONTIRBUTING.md instructions ( #1403 )
2016-04-27 16:57:16 -07:00
Harshavardhana
5fffd558d0
xl/heal: Make healFile non-blocking for StatFile and ReadFile. ( #1399 )
...
Fixes #1355
2016-04-27 15:10:19 -07:00
Harshavardhana
b51bef85e6
objectapi: ListMultipart now lists more than 1000 entries in non-recursive. ( #1397 )
...
Having keyMarker with "/" is a valid marker.
Fixes #1394
2016-04-27 13:19:48 -07:00
Krishna Srinivas
d0e5470050
ListMultipart fixes ( #1392 )
...
* ListMultipart: listLeafEntries() - return earlier if a directory is found.
* ListMultipart: do listLeafEntries() only for directories.
2016-04-27 00:15:40 -07:00
Harshavardhana
90987df9b4
objectapi: Simplify ListMultipart combine recursive and non-recursive. ( #1390 )
...
Fixes #1365
2016-04-26 17:57:16 -07:00
Harshavardhana
ad1abc4486
xl-v1/Cleanup: use listOnlineDisks instead of getReadableDisks. ( #1389 )
...
Remove usage of getFileVersionQuorumMap, instead use listFileVersions
to get the version list and extract higherVersion.
Fixes #1379
Fixes #1378
Fixes #1377
2016-04-26 13:03:37 -07:00
Krishna Srinivas
4333e529e6
xl/ListFiles: return as many objects as requested. ( #1383 )
...
* xl/ListFiles: return as many objects as requested and take care of eof (#1361 )
* xl/ListFiles: fix review comments.
* xl/ListFiles: Add windows filepath translation.
* xl/ListFiles: Use slashSeparator instead of "/". Remove filepath.FromSlash() as golang-windows takes care of it automatically.
2016-04-26 10:35:39 -07:00
koolhead17
9685f88b84
Added FreeBSD installation steps with ZFS. ( #1388 )
2016-04-26 10:17:02 -07:00
Harshavardhana
5f80edf232
routers: Fix a crash while initializing network fs. ( #1382 )
...
Crash happens when 'minio server filename' a file name is
provided instead of a directory on command line argument.
```
panic: runtime error: slice bounds out of range
goroutine 1 [running]:
panic(0x5eb460, 0xc82000e0b0)
/usr/local/opt/go/libexec/src/runtime/panic.go:464 +0x3e6
main.splitNetPath(0x7fff5fbff9bd, 0x7, 0x0, 0x0, 0x0, 0x0)
/Users/harsha/mygo/src/github.com/minio/minio/network-fs.go:49 +0xb7
main.newNetworkFS(0x7fff5fbff9bd, 0x7, 0x0, 0x0, 0x0, 0x0)
/Users/harsha/mygo/src/github.com/minio/minio/network-fs.go:90 +0x20a
main.configureServerHandler(0xc82024e1c8, 0x5, 0xc8200640e0, 0x1, 0x1, 0x0, 0x0)
/Users/harsha/mygo/src/github.com/minio/minio/routers.go:43 +0x6ce
main.configureServer(0xc82024e1c8, 0x5, 0xc8200640e0, 0x1, 0x1, 0x5)
/Users/harsha/mygo/src/github.com/minio/minio/server-main.go:86 +0x67
```
2016-04-25 18:10:40 -07:00
Harshavardhana
42254b5c4d
xl: Rename blockingWriteCloser to waitCloser. ( #1376 )
2016-04-25 16:00:58 -07:00
Harshavardhana
00c697393a
Merge pull request #1381 from minio/xl-layer
...
Implement XL layer
2016-04-25 15:59:30 -07:00
Harshavardhana
55032ffdf9
xl: Simplify blockingWriter and its usage. ( #1373 )
...
This removes odd races since we don't need to
track errors and avoids locking. All we need
is a Wait() and Done() waitgroup.
2016-04-25 12:47:31 -07:00
Harshavardhana
8bce699dae
xl: Add logging. ( #1372 )
2016-04-25 12:47:31 -07:00
Harshavardhana
57f35c2bcc
xl: Introduce new blocking writer to make CreateFile atomic. ( #1362 )
...
Creates a new write closer that must be released
by the read consumer. This is necessary so that
while commiting the underlying writers in erasure
coding we need to make sure we reply success only if
we have committed to disk.
This in turn also fixes plethora of bugs related to
subsequent PutObject() races with namespace locking.
This patch also enables most of the tests, other than
ListObjects paging which has some issues still.
Fixes #1358 , #1360
2016-04-25 12:47:31 -07:00
Harshavardhana
cab6805f09
xl: Enable a subset of tests for XL branch. ( #1359 )
2016-04-25 12:47:31 -07:00
Krishna Srinivas
8c85815106
xl: refactor functions to xl-v1-common.go xl-v1-utils.go. ( #1357 )
2016-04-25 12:47:31 -07:00
Krishna Srinivas
becc814531
Xl layer selfheal quorum2
...
* xl/selfheal: selfheal based on read quorum on GET
* xl: getReadableDisks() also returns whether self-heal is needed so that this info can be used by ReadFile/SelfHeal/StatFile.
* xl: trigger selfheal from StatFile.
2016-04-25 12:47:31 -07:00
Harshavardhana
9bd9441107
xl: Simplify reading metadata and add a new fileMetadata type. ( #1346 )
2016-04-25 12:47:31 -07:00
Harshavardhana
f3784d1087
xl: Handle read quorum for StatVol, ListVols
2016-04-25 12:47:31 -07:00
Harshavardhana
91588209fa
obj: Object api handle all errors in common location. ( #1343 )
2016-04-25 12:47:31 -07:00
Krishna Srinivas
5c33b68318
xl: code refactor, cleanup ReadFile and CreateFile.
2016-04-25 12:47:31 -07:00
Bala FA
45b3d3e21f
xl: add quorum support for create file
2016-04-25 12:47:31 -07:00
Harshavardhana
141a44bfbf
xl: Fix ReadFile to keep the order always for reading the data back. ( #1339 )
...
Also fixes a stackoverflow bug in namespace locking.
2016-04-25 12:47:31 -07:00
Harshavardhana
c7bf471c9e
list/xl: Fix the way marker is handled in leafDirectory verification.
2016-04-25 12:47:31 -07:00
Krishna Srinivas
c302875774
selfheal: implement self-heal. Heals the missing parts. ( #1335 )
2016-04-25 12:47:31 -07:00
Harshavardhana
b76f3f1d62
xl: Add more fixes and cleanup.
...
Simplify cleanup of temporary files during createFile operations.
2016-04-25 12:47:31 -07:00
Bala FA
ada0f82b9a
xl: add quorum support for read file and name space locking. ( #1333 )
2016-04-25 12:47:31 -07:00
Harshavardhana
a98a7fb1ad
Implement XL layer - preliminary work.
2016-04-25 12:47:31 -07:00
Harshavardhana
bf8a9702a4
tests: Fix a bug in TestObjectAPIIsUploadIDExists. ( #1375 )
...
The following code crashes when upload ID does not
exist, since we are setting err == nil when we find
err == errFileNotFound.
```
if e == nil {
t.Fatal(e.Error())
```
Fix it.
2016-04-25 12:47:08 -07:00
karthic rao
6e372f83b4
Tests: object api multipart tests and bug fixes.
2016-04-25 10:39:28 -07:00
Harshavardhana
e9fba04b36
logging: Enable logging across storage fs layer. ( #1367 )
...
Adds log.Debugf at all the layer - fixes #1074
2016-04-24 00:36:00 -07:00
Harshavardhana
d63d17012d
tests: Add API suite tests back for object api. ( #1352 )
2016-04-21 23:40:01 -07:00
Harshavardhana
444d1f8a65
miniobrowser: Vendorize to new changes in miniobrowser.
2016-04-21 20:35:48 -07:00
karthic rao
560c3bd153
Adding return statement after error response in the lastest commit to verify location constraint ( #1348 )
2016-04-21 20:08:08 -07:00
Harshavardhana
4cf73caf02
api: Add diskInfo as part of StatVol and ListVols. ( #1349 )
...
It is the bucket and volumes which needs to have this
value rather than the DiskInfo API itself. Eventually
this can be extended to show disk usage per
Buckets/Volumes whenever we have that functionality.
For now since buckets/volumes are thinly provisioned
this is the right approach.
2016-04-21 20:07:47 -07:00