Harshavardhana
d0df548eb5
Use new LRU inside memory driver
10 years ago
Harshavardhana
f7caef2d26
Change CreateObject() to take size argument from content-length
10 years ago
Harshavardhana
c342ce1588
New LRU based on GroupCache which keeps track of memory rather than entries
10 years ago
Frederick F. Kautz IV
3cf045fd1b
Deleting key from lastAccessedObjects on eviction
10 years ago
Harshavardhana
9ec8925f1c
Rename IsValidObject() to IsValidObjectName()
10 years ago
Frederick F. Kautz IV
33ecba8e49
Reimagining memory settings cli input
10 years ago
Frederick F. Kautz IV
25c268ac88
Attempt to fix memory lock on Get preventing write
10 years ago
Frederick F. Kautz IV
85f1b46492
Removing log message from test
10 years ago
Frederick F. Kautz IV
7cf86e6114
Fix docker support
10 years ago
Harshavardhana
2c7b30e5e1
Even mux vars don't help, handle it by looking at req.URL.Path
10 years ago
Frederick F. Kautz IV
b86b26e7e5
Exposing expiration for memory driver
10 years ago
Harshavardhana
bbc32d6ac0
Disable domain based routing for now
10 years ago
Harshavardhana
f3078d047c
Get bucketName from mux.Vars instead of heuristic code, resolves subdomain issues
10 years ago
Harshavardhana
8e3d48bf35
Use UTC() everywhere
...
ref - https://github.com/golang/go/issues/1988 , no standard function to set timeZone
10 years ago
Frederick F. Kautz IV
94e24f1a05
Disable eviction on 0 expiration time
10 years ago
Harshavardhana
2de81c8a3c
Minio config directory should be 0700 not os.ModeDir
10 years ago
Frederick F. Kautz IV
8e2f7f9493
Wrapping functions that require gc so that references are released before running
10 years ago
Harshavardhana
d815e6adfd
Changes to CreateObject() now returns back md5 along with any error
...
- This change is necessary to avoid the racy calls to GetObjectMetadata()
- This change is also necessary since one has to reply back md5sum with
PUT object response header
10 years ago
Harshavardhana
fd2203b1b7
Some more improvements to connection limit
10 years ago
Harshavardhana
f8a16dd22b
Memory now evicts bucket if no more objects in memory struct
...
- To avoid race in expiration while accessing memory driver structs with
in two competing write locks. Use lru Len() instead to know exact length
to schedule for eviction.
- squash both bucket and object structs, instead use a separate map to keep
mutable info of lastAccessTime which can be independently used inside the
expiration routine.
10 years ago
Frederick F. Kautz IV
ed0a9a9e06
Removing entity too large errors from memory driver
10 years ago
Frederick F. Kautz IV
aff2b3b06a
Adding debug statements for testing
10 years ago
Frederick F. Kautz IV
82a16b8848
Make minio work with curl and browsers again
10 years ago
Frederick F. Kautz IV
3a1386165f
Fixing race condition
10 years ago
Harshavardhana
03bca9a001
Fix out of memory issue
10 years ago
Harshavardhana
25d4c0f6fa
A small logical change in messaging and logging
10 years ago
Frederick F. Kautz IV
f596c744ed
Adding error message on connection limit met
10 years ago
Harshavardhana
a89c4a57d3
Return resources as its available, not a new value
10 years ago
Frederick F. Kautz IV
0da04c6f17
Expirations are now based on last accessed instead of time created
10 years ago
Harshavardhana
92e4301414
Add proper content-length for error and success responses
...
- All compliance issues with S3 API for Put,Get,List (Bucket,Object) respectively
- Encodes and returns back proper HTTP headers
10 years ago
Frederick F. Kautz IV
5fc5f79ab7
Adding lru
10 years ago
Frederick F. Kautz IV
8fcb697844
Simplifying memory sleep logic
10 years ago
Frederick F. Kautz IV
5cc9418ca7
Adding expiration
10 years ago
Frederick F. Kautz IV
a608524ebf
api logging is now in its own package
10 years ago
Harshavardhana
d1d5f7a78d
Collate success response into writeSuccessResponse(), add docs
10 years ago
Harshavardhana
b18bb230da
maxObjectSize and minObjectSize limitation added at putObjectHandler()
...
Put() replies back with
- EntityTooLarge with > 5GB in single PUT operation
- EntityTooSmall with < 1B in single PUT operation
- IncompleteBody with ho Content-Length found in HTTP request header
10 years ago
Frederick F. Kautz IV
172cd18455
Adding initial logging framework to api_router
10 years ago
Frederick F. Kautz IV
88cca647ea
Adding json logging to stderr
10 years ago
Frederick F. Kautz IV
de091068e8
Removing quotas, will handle with iptables
10 years ago
Frederick F. Kautz IV
f2257a643c
Critical sections are now protected by lock
10 years ago
Harshavardhana
605edbc307
Add some logging with debug
10 years ago
Frederick F. Kautz IV
db5870be28
Fix multiple response.WriteHeader calls
10 years ago
Frederick F. Kautz IV
289c859675
Adding software fallback
10 years ago
Harshavardhana
ade803a923
Verify if request date is 5minutes late, reject such a request as
...
it could be a possible replay attack.
This commit also fixes #505 , by returning MethodNotAllowed instead of NotImplemented
10 years ago
Harshavardhana
9232ce3b4e
Now client requests for ACL changes are honored through PutBucketACL API
10 years ago
Harshavardhana
c99d96dbc2
Now donut supports bucket ACL's, bringing in this support for dl.minio.io
10 years ago
Harshavardhana
8beca83090
Limit memory mode at 100 buckets and return error appropriately
...
~~~
mc: <ERROR> Failed to create bucket for URL [http://localhost:9000/newbucket-101 ]. Reason: [You have attempted to create more buckets than allowed.].
~~~
Response from server
10 years ago
Harshavardhana
2d96d5ad57
Enhance error responses for request limit and bring some code from api errors
...
~~~
mc: <ERROR> Failed to create bucket for URL [http://localhost:9000/newbucket-101 ]. Reason: [Reduce your request rate.].
~~~
Client sees proper errors now.
10 years ago
Frederick F. Kautz IV
a974e4d7c7
Making lock much less aggressive, fixes multiple uploads blocking
10 years ago
Frederick F. Kautz IV
258bf55e31
Bandwidth quota now supports 100-Continue
10 years ago