Frederick F. Kautz IV
682bf085c4
Metadata and writing the object are now both committed together.
2015-03-15 17:42:33 -07:00
Frederick F. Kautz IV
96d0a089b8
Adding create bucket to encoded
2015-03-15 12:28:24 -07:00
Harshavardhana
3f95c55067
Skip uinimplemented tests and some cleanup
2015-03-15 01:23:57 -07:00
Frederick F. Kautz IV
3e453a394a
Working in memory donut driver
2015-03-15 00:41:06 -07:00
Frederick F. Kautz IV
15d5e74837
More testing
2015-03-14 19:29:54 -07:00
Frederick F. Kautz IV
7e61696901
Inmemory donutbox is now thread safe
2015-03-14 19:21:34 -07:00
Frederick F. Kautz IV
85da9fc627
Adding start of inmem donut
2015-03-14 18:02:27 -07:00
Frederick F. Kautz IV
54472c18fe
Renaming singledisk to encoded
2015-03-14 11:37:43 -07:00
Frederick F. Kautz IV
348c4d9a88
Removing old donut format
2015-03-14 11:36:19 -07:00
Frederick F. Kautz IV
2f4b92eb8d
Minor refactor to prepare for file version of donut
2015-03-14 11:34:45 -07:00
Harshavardhana
f7b62caccc
Update erasure README with supported architecture list
2015-03-12 16:37:08 -07:00
Harshavardhana
f7fd526b28
Cosmetic changes
2015-03-12 02:11:04 -07:00
Harshavardhana
1e4a47ac5f
Merge pull request #290 from harshavardhana/pr_out_add_crc32c_license_headers_golang_and_minio
2015-03-12 02:09:06 -07:00
Harshavardhana
4c86e594d6
Add crc32c license headers Golang and Minio
2015-03-12 02:05:05 -07:00
Harshavardhana
e27ba44d94
Remove minio_calc_chunk_size() C code to write one in Golang
2015-03-12 02:03:04 -07:00
Frederick F. Kautz IV
94fe03cfc1
More refactoring to meet new donut spec
2015-03-12 01:52:14 -07:00
Harshavardhana
67888cbaa9
Restructure and use human readable names
2015-03-12 00:36:33 -07:00
Harshavardhana
e21020b337
Merge pull request #280 from harshavardhana/pr_out_http_range_support_wip
...
Get object range request added
2015-03-12 00:11:38 -07:00
Harshavardhana
a42a48a455
Get object range request added
2015-03-12 00:07:27 -07:00
Frederick F. Kautz IV
24d5018037
Rename StoreBucket to CreateBucket
2015-03-11 20:14:40 -07:00
Frederick F. Kautz IV
8c6aa45458
Adding copyright
2015-03-11 19:59:20 -07:00
Frederick F. Kautz IV
7971b66e60
Adding object donut type
2015-03-11 19:56:18 -07:00
Frederick F. Kautz IV
ec9b20a94f
Adding stubes for new single disk driver
2015-03-11 13:36:21 -07:00
Harshavardhana
a24bfb007d
Rename dateFormat with understandable name `iso8601Format
`
2015-03-10 01:51:34 -07:00
Harshavardhana
b952855779
Add strict checks with vet, golint and gofmt
2015-03-09 16:17:38 -07:00
Harshavardhana
41653774fc
Simplify fs codebase, split them into separate files and more commenting
2015-03-08 18:01:48 -07:00
Harshavardhana
01e98eb326
Make BucketPolicy strictly typed
2015-03-08 15:57:20 -07:00
Harshavardhana
8866b2cc5f
Add delimiter and prefix tests, also add inmemory to support delimiters
2015-03-08 14:51:31 -07:00
Harshavardhana
7a01db8005
Strict checks for delimiter and prefix if absent or present
2015-03-08 13:01:39 -07:00
Harshavardhana
ba85ed7566
Revert "RFC1123 is wrong protocol format for AWS"
...
This reverts commit c7b1f8ded8
.
2015-03-08 03:06:23 -07:00
Harshavardhana
c7b1f8ded8
RFC1123 is wrong protocol format for AWS
2015-03-08 01:55:25 -08:00
Harshavardhana
9e89af0e3c
Remove redundant uint32
2015-03-07 19:15:51 -08:00
Harshavardhana
9553eb6b4a
Merge pull request #269 from harshavardhana/pr_out_get_object_metadata_needs_to_filter_based_of_prefix_when_delimiter_is_specified
2015-03-07 19:14:41 -08:00
Harshavardhana
f8e2b75e23
Get object metadata needs to filter based of Prefix when delimiter is specified
2015-03-07 19:13:15 -08:00
Frederick F. Kautz IV
b39eac36ea
Merge pull request #268 from fkautz/pr_out_fragment_reader_implemented
2015-03-07 18:04:29 -08:00
Frederick F. Kautz IV
679c6ace3a
Fragment reader implemented
2015-03-07 18:04:20 -08:00
Harshavardhana
df69038b04
Merge pull request #267 from harshavardhana/pr_out_add_md5_support_for_fsstorage_also_re_purpose_getobjectmetadata_for_listobjects
2015-03-07 17:16:00 -08:00
Harshavardhana
4751ed0e30
Add MD5 support for fsStorage, also re-purpose GetObjectMetadata for ListObjects
2015-03-07 17:15:00 -08:00
Frederick F. Kautz IV
1ec0cd6683
Merge pull request #266 from fkautz/pr_out_adding_read_header_for_erasure
2015-03-07 15:54:17 -08:00
Frederick F. Kautz IV
ca1a4b616c
Adding read header for erasure
2015-03-07 15:53:41 -08:00
Frederick F. Kautz IV
00381c887a
Adding erasure package to wrap versioned erasure. Ensures we always write latest version.
2015-03-07 13:04:02 -08:00
Harshavardhana
bf5a314144
clang lacks proper gas support, implement stubs for sha256,sha512 for darwin.
...
REF: http://llvm.org/bugs/show_bug.cgi?id=18918
2015-03-07 02:55:48 -08:00
Harshavardhana
1637138f86
If incoming request IP bucketfromHostname needs to be empty string
2015-03-07 02:53:29 -08:00
Harshavardhana
a18bfa2fda
Rename test-data to testdata, go will ignore it automatically
2015-03-07 01:32:35 -08:00
Harshavardhana
d992bccd9a
Move pkg/storage/erasure to pkg/encoding/erasure - and other cleanups
2015-03-07 00:16:48 -08:00
Frederick F. Kautz IV
856e0100c0
Erasure layer now writes using new technique
2015-03-06 16:37:44 -08:00
Harshavardhana
856b7680df
Now able to use crc32c and sha1 on Darwin, with OSX specific code
2015-03-06 02:38:29 -08:00
Harshavardhana
e5af8a3f5d
Further fixes -
...
- All test files have been renamed to their respective <package>_test name,
this is done in accordance with
- https://github.com/golang/go/wiki/CodeReviewComments#import-dot
imports are largely used in testing, but to avoid namespace collision
and circular dependencies
- Never use _* in package names other than "_test" change fragment_v1 to expose
fragment just like 'gopkg.in/check.v1'
2015-03-06 02:04:21 -08:00
Harshavardhana
c00d1461b9
Golint cleanup from top level
2015-03-05 23:37:37 -08:00
Harshavardhana
540723d7ae
Golint cleanup pkg/api
2015-03-05 21:09:19 -08:00
Harshavardhana
76e601b26b
Golint cleanup pkg/storage
2015-03-05 21:09:19 -08:00
Harshavardhana
256faddab5
Golint cleanup utils/crypto/sha*,cpu,md5
2015-03-05 21:09:19 -08:00
Harshavardhana
66e31445ff
Golint cleanup pkg/utils/crypto/keys
2015-03-05 21:09:19 -08:00
Harshavardhana
b33e2d2f9b
Golint cleanup pkg/utils/config
2015-03-05 21:09:19 -08:00
Harshavardhana
861f13d5bd
Golint cleanup pkg/utils/cpu
2015-03-05 21:09:19 -08:00
Harshavardhana
c36450a83a
Golint cleanup pkg/utils/policy
2015-03-05 21:09:19 -08:00
Harshavardhana
3e321b6631
Golint cleanup pkg/utils/split
2015-03-05 21:09:19 -08:00
Frederick F. Kautz IV
1186c47603
Fragment now implements new version
2015-03-05 20:56:02 -08:00
Frederick F. Kautz IV
665af44c70
Renaming donut packages to match layout
2015-03-05 19:44:01 -08:00
Frederick F. Kautz IV
6ec7894312
Removing innerxml
2015-03-04 14:24:56 -08:00
Frederick F. Kautz IV
6f7840677a
Fixing xml tags
2015-03-04 11:02:37 -08:00
Harshavardhana
f2e238199b
Handle individual objects too
2015-03-04 01:54:35 -08:00
Harshavardhana
e400e85639
Add proper path prefix to be delimited
2015-03-04 00:54:39 -08:00
Harshavardhana
df135d7307
Merge pull request #249 from harshavardhana/pr_out_pathprefix_is_filtered_out_properly_and_delimited_as_well
2015-03-03 23:08:30 -08:00
Harshavardhana
cc46475c86
Pathprefix is filtered out properly and delimited as well
2015-03-03 19:45:54 -08:00
Frederick F. Kautz IV
34c1e58332
Renaming Package to goPackage to fix golint error
2015-03-03 12:56:19 -08:00
Harshavardhana
0ebaac3594
Janitor duty v2
2015-03-03 02:43:24 -08:00
Harshavardhana
3a3c8645fc
Update comments across the codebase
2015-03-03 02:39:38 -08:00
Harshavardhana
137584d658
Add comments
2015-03-03 01:25:45 -08:00
Harshavardhana
c3ad0906e0
Add deadcode code which recursivley goes into all directories and verifies dangling variables.
2015-03-02 18:44:20 -08:00
Frederick F. Kautz IV
32f8c17174
Renaming AppendUstr to AppendUniqStr
2015-03-01 17:06:00 -08:00
Anand Babu (AB) Periasamy
81ede6c3fe
Merge pull request #241 from abperiasamy/janitor
...
On janitor duty.
2015-03-01 16:43:04 -08:00
Frederick F. Kautz IV
de6131cc7c
Renaming AppendUInt to AppendUniqInt
2015-03-01 16:39:45 -08:00
Anand Babu (AB) Periasamy
d9c9634138
removed custom Assert
2015-03-01 15:28:42 -08:00
Frederick F. Kautz IV
6f300c9ef0
Adding test at byte level
2015-03-01 15:13:09 -08:00
Anand Babu (AB) Periasamy
177121868b
removed HomeDir
2015-03-01 15:13:08 -08:00
Frederick F. Kautz IV
0b08312ddd
Specifying more exact types for data
2015-03-01 14:43:11 -08:00
Harshavardhana
9f43659135
Add tests, add NewHeader() for populating Header and ValidateHeader()
2015-03-01 13:19:06 -08:00
Anand Babu (AB) Periasamy
6515678e87
Merge pull request #236 from fkautz/pr_out_adding_data_writer
...
Adding data writer
2015-03-01 11:36:35 -08:00
Frederick F. Kautz IV
7414dc9b75
Adding data writer
2015-03-01 11:32:30 -08:00
Harshavardhana
eb9a4a83ac
Move AppendUstr(), AppendUint() into helpers
2015-03-01 11:19:03 -08:00
Frederick F. Kautz IV
be12a6b3d9
Changing K and M in data.go to match new datatype in erasure package
2015-03-01 01:28:33 -08:00
Harshavardhana
33601ff567
Merge pull request #233 from harshavardhana/pr_out_make_k_m_to_be_uint8_and_technique_becomes_its_own_type
2015-03-01 01:26:42 -08:00
Harshavardhana
b77c62e25d
Make K,M to be uint8 and Technique becomes its own type
2015-03-01 01:25:28 -08:00
Frederick F. Kautz IV
bb0441917c
Making changes to data based on discussion
2015-03-01 01:16:22 -08:00
Harshavardhana
2f04a1299e
Avoid allocating 1gig memory, avoid such mistakes
2015-03-01 00:43:12 -08:00
Frederick F. Kautz IV
2916b1278e
Adding data.go, does nothing for now.
2015-03-01 00:27:52 -08:00
Frederick F. Kautz IV
b4ef522a9b
Donut frame is now its own package
2015-03-01 00:02:14 -08:00
Frederick F. Kautz IV
6c2428833a
Renaming Write to WriteFrame
2015-02-28 23:52:56 -08:00
Harshavardhana
6b397844b9
Add donut benchmark for 64MB, 128MB, 256MB, 512MB
...
Current average values
~~~
> minio/pkg/storage/donut/v1 *> go test -bench .
OK: 2 passed
PASS
BenchmarkDonut64M 5 266249634 ns/op 252.05 MB/s
BenchmarkDonut128M 3 436507394 ns/op 307.48 MB/s
BenchmarkDonut256M 2 836116359 ns/op 321.05 MB/s
BenchmarkDonut512M 1 1676738951 ns/op 320.19 MB/s
ok github.com/minio-io/minio/pkg/storage/donut/v1 8.430s
> minio/pkg/storage/donut/v1 *>
~~~
2015-02-28 17:05:46 -08:00
Harshavardhana
65f22083ca
donut_gen works with new Donut Frame
2015-02-28 16:30:18 -08:00
Frederick F. Kautz IV
4d98c355c9
Merge pull request #224 from abperiasamy/units
2015-02-28 16:12:10 -08:00
Frederick F. Kautz IV
ddc7cf835e
Donut now tests amount written should match expected amount to write
2015-02-28 16:09:52 -08:00
Frederick F. Kautz IV
d3d1205eb1
Updating comment describing data type
2015-02-28 15:59:52 -08:00
Frederick F. Kautz IV
58a04ee831
New donut frame implemented
2015-02-28 15:54:13 -08:00
Anand Babu (AB) Periasamy
317a1141c0
removed unitconv
2015-02-28 15:53:44 -08:00
Frederick F. Kautz IV
90cd8b7b47
Adding streaming sha512
2015-02-28 15:51:33 -08:00
Harshavardhana
56bd413a16
Merge pull request #219 from harshavardhana/pr_out_add_1mb_block_benchmarks
2015-02-28 15:25:24 -08:00
Harshavardhana
7feca3f0d1
Add 1MB block benchmarks
2015-02-28 15:00:24 -08:00
Harshavardhana
0c2d58bc6d
Implement proper delimiter and prefix handling
...
With this change Minio server now responds with, delimited
'object names' in conjunction with prefix filtering
~~~
<ListBucketResult>
<Name>example-bucket</Name>
<Prefix></Prefix>
<Marker></Marker>
<MaxKeys>1000</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>sample.html</Key>
<LastModified>2011-02-26T01:56:20.000Z</LastModified>
<ETag>example-bucket#sample.html</ETag>
<Size>142863</Size>
<Owner>
<ID>minio</ID>
<DisplayName>minio</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
<CommonPrefixes>
<Prefix>photos/</Prefix>
</CommonPrefixes>
</ListBucketResult>
~~~
~~~
<ListBucketResult>
<Name>example-bucket</Name>
<Prefix>photos/2006/</Prefix>
<Marker></Marker>
<MaxKeys>1000</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>false</IsTruncated>
<CommonPrefixes>
<Prefix>photos/2006/feb/</Prefix>
</CommonPrefixes>
<CommonPrefixes>
<Prefix>photos/2006/jan/</Prefix>
</CommonPrefixes>
</ListBucketResult>
~~~
2015-02-28 14:47:19 -08:00
Harshavardhana
d5e5a3b3e6
Use validString
2015-02-27 19:49:18 -08:00
Harshavardhana
6ebb48b4ea
Add object name validation
2015-02-27 19:42:04 -08:00
Harshavardhana
9acb1f728c
Sort list of objects
2015-02-27 17:52:55 -08:00
Harshavardhana
53669a0854
Implement delimiter, path prefix
2015-02-27 16:23:05 -08:00
Harshavardhana
3f8b3462e6
Remove donut_gen binary and update crc32c function
2015-02-27 14:41:53 -08:00
Harshavardhana
9aea7fd97b
Merge pull request #213 from harshavardhana/pr_out_crc32c_re_implementation_with_convenience_functions
2015-02-27 14:35:11 -08:00
Harshavardhana
8ce9b84b69
Crc32c re-implementation with Convenience functions
...
- Sum32([]byte) --> uint32
- Sum(io.Reader) --> uint32, error
2015-02-27 13:39:17 -08:00
Frederick F. Kautz IV
2e37791681
Merge pull request #212 from fkautz/pr_out_adding_comparison_for_footer_s_inim
2015-02-27 12:40:10 -08:00
Frederick F. Kautz IV
1f7a3c13a5
Adding comparison for footer's INIM
2015-02-27 12:39:52 -08:00
Frederick F. Kautz IV
2ca62f13a5
Moving donut_gen to its own dir and renaming it as donut_gen_v1
2015-02-27 12:39:14 -08:00
Frederick F. Kautz IV
be768d01a2
Seek to beginning for tempbuffer
2015-02-27 12:18:27 -08:00
Frederick F. Kautz IV
5c52da6ebe
Adding crc32c to write
2015-02-26 23:04:07 -08:00
Harshavardhana
a9aaff0ee0
Remove HTTP server timeouts write and read.
...
Implement it later with a proper timer thread. Large file
transfers from 'mc' fail with i/o timeout without this change.
2015-02-24 13:55:24 -08:00
Frederick F. Kautz IV
ef442289da
Making donut use io.ReadWriteSeek instead of io.Writer
2015-02-23 20:27:25 -08:00
Harshavardhana
5e1e5ad786
More updates on documentation
2015-02-23 17:44:55 -08:00
Harshavardhana
b7868d23ac
Update minioapi documentation
2015-02-23 16:46:48 -08:00
Harshavardhana
f4b5519451
Update erasure documentation
2015-02-23 13:39:16 -08:00
Anand Babu (AB) Periasamy
de41e465c8
move httpserver under server
2015-02-23 11:03:01 -08:00
Harshavardhana
51e80eaa6d
Add domain and subdomain support for MinioAPI
...
This change brings in domain and subdomain support
- ./minio --domain "yourminiodomain.com"
This change brings in a much needed feature by keeping
bucketnames as part of your 'DNS' name.
All your existing applications can be migrated off from s3 to
Minio without little to no modifications.
NOTE: Setting up DNS for your `buckets` is out of scope of this feature
2015-02-23 02:25:01 -08:00
Harshavardhana
a92c6cb2b2
Purge tiedot wrapper
2015-02-22 20:02:09 -08:00
Harshavardhana
49a714d1a4
Add license header for Minio modifications, improvements for sha1,sha256,sha512 implementations
...
Also bring in SSE3 optimized public domain implementation of SHA1 from Intel ``FIPS PUB 180-1``
2015-02-21 15:50:47 -08:00
Harshavardhana
12cff1be58
Implement sha1 as intel optimized set
2015-02-21 11:25:09 -08:00
Anis Elleuch
1d4d7ff274
Add missing asm instruction to correct sha256 calculation in avx mode
2015-02-21 19:34:36 +01:00
Anis Elleuch
e89271b8f5
Use Intel optimized code (ssse3, avx, avx2) to calculate sha256
2015-02-21 13:11:15 +01:00
Harshavardhana
3151f9b6c3
Add proper entries for GobHeader, Data copy.
...
This commit also adds 'donut_gen.go' for generating sample donut file
2015-02-21 01:44:27 -08:00
Frederick F. Kautz IV
8129d8fd0b
Writing data out with error handling
2015-02-20 23:24:01 -08:00
Frederick F. Kautz IV
98ddbd840e
Moving donut code to v1 in donut package
2015-02-20 23:07:43 -08:00
Frederick F. Kautz IV
9833647fb7
Fixing magic number for INIM
2015-02-20 22:42:58 -08:00
Anand Babu (AB) Periasamy
ec36a598c9
Magic as numbers are faster to encode and compare
2015-02-20 18:20:21 -08:00
Harshavardhana
741e14f749
Remove go cover and remove unncessary Makefiles
2015-02-20 17:44:26 -08:00
Harshavardhana
19a4998fcb
SHA512 Implemention with Intel assembly code
2015-02-20 16:32:19 -08:00
Harshavardhana
c4f0aad9b5
Add donut tests, just for verification
2015-02-18 19:46:14 -08:00
Frederick F. Kautz IV
f7f34d08e8
Donut structure refined
2015-02-18 17:18:33 -08:00
Frederick F. Kautz IV
ab80c0ce12
Merge pull request #180 from abperiasamy/donut
2015-02-18 15:57:16 -08:00
Anand Babu (AB) Periasamy
9e304b53de
donut spec v1 prototype
2015-02-18 15:52:12 -08:00
Harshavardhana
fab954f13f
Run govet and fix
2015-02-18 15:33:55 -08:00
Harshavardhana
f7a06a5d1e
Some more cleanup
2015-02-18 12:15:33 -08:00
Frederick F. Kautz IV
05ac09bf69
Adding header version
2015-02-18 10:21:02 -08:00
Harshavardhana
a3e5121f7b
Make channels more aware of errors and shutdown on error - some cleanup
2015-02-18 00:24:19 -08:00
Harshavardhana
cf6d03b907
Expose policy code, for api router usage
2015-02-17 19:06:01 -08:00
Harshavardhana
5235badec9
Merge pull request #169 from harshavardhana/pr_out_add_policy_validation_code_more_rigorous
2015-02-17 18:10:00 -08:00
Frederick F. Kautz IV
fe9a5c14a0
Adding scaffolding for writing donut
2015-02-17 17:47:10 -08:00
Harshavardhana
980d229272
Add policy validation code more rigorous
2015-02-17 13:23:16 -08:00
Harshavardhana
f04beab7c2
Skip policy files
2015-02-16 18:37:09 -08:00
Harshavardhana
eeae64935e
Implement bucket policy handler and with galore of cleanup
2015-02-16 18:20:40 -08:00
Harshavardhana
ba3e2d41f7
Add license and fix development scripts
2015-02-15 01:59:48 -08:00
Harshavardhana
966cdd4f05
Reply in xml from validate and ignore handlers
2015-02-11 22:00:45 -08:00
Harshavardhana
ac4f07906c
Implement S3 Style ErrorCodes and Response
...
This patchset also brings in lot of cleanup in terms of minioapi codebase
2015-02-11 21:27:28 -08:00
Harshavardhana
680848bdcb
Add license header
2015-02-08 03:00:32 -08:00
Harshavardhana
8087ca2450
Verify both 'x-amz-date' and 'date' header before discarding request
2015-02-08 02:37:19 -08:00