Harshavardhana
1df28f3060
Get rid of sub-domain code and some other formatting changes
9 years ago
Harshavardhana
6d3d92694f
Add Marker support for donut, also add a testing code
9 years ago
Harshavardhana
75028c2ad1
Add lexicographic Marker/NextMarker support for recursive listing of objects.
...
Also update times when an object is accessed logic
9 years ago
Frederick F. Kautz IV
24af2222c9
Adding xmlns
9 years ago
Harshavardhana
193a6606db
Fix a potential race between ExpireObjects() and Set() over items map
9 years ago
Harshavardhana
ed1259d6f0
Deprecate LRU use just map[string]interface{} and call it intelligent 'cache'
9 years ago
Harshavardhana
63edb1e9a0
Nullify list memory to nil as we remove the element
9 years ago
Harshavardhana
d63064b8af
Optimize memory usage in GetPartialObject() for memory driver
9 years ago
Harshavardhana
c8f31d97a8
Modify LRU further to add object expiration
9 years ago
Harshavardhana
670f997b07
Bring blockingWriter from client and use it here
9 years ago
Harshavardhana
d0df548eb5
Use new LRU inside memory driver
9 years ago
Harshavardhana
f7caef2d26
Change CreateObject() to take size argument from content-length
9 years ago
Harshavardhana
c342ce1588
New LRU based on GroupCache which keeps track of memory rather than entries
9 years ago
Frederick F. Kautz IV
3cf045fd1b
Deleting key from lastAccessedObjects on eviction
9 years ago
Harshavardhana
9ec8925f1c
Rename IsValidObject() to IsValidObjectName()
9 years ago
Frederick F. Kautz IV
33ecba8e49
Reimagining memory settings cli input
9 years ago
Frederick F. Kautz IV
25c268ac88
Attempt to fix memory lock on Get preventing write
9 years ago
Frederick F. Kautz IV
85f1b46492
Removing log message from test
9 years ago
Frederick F. Kautz IV
7cf86e6114
Fix docker support
9 years ago
Harshavardhana
2c7b30e5e1
Even mux vars don't help, handle it by looking at req.URL.Path
9 years ago
Frederick F. Kautz IV
b86b26e7e5
Exposing expiration for memory driver
9 years ago
Harshavardhana
bbc32d6ac0
Disable domain based routing for now
9 years ago
Harshavardhana
f3078d047c
Get bucketName from mux.Vars instead of heuristic code, resolves subdomain issues
9 years ago
Harshavardhana
8e3d48bf35
Use UTC() everywhere
...
ref - https://github.com/golang/go/issues/1988 , no standard function to set timeZone
9 years ago
Frederick F. Kautz IV
94e24f1a05
Disable eviction on 0 expiration time
9 years ago
Harshavardhana
2de81c8a3c
Minio config directory should be 0700 not os.ModeDir
9 years ago
Frederick F. Kautz IV
8e2f7f9493
Wrapping functions that require gc so that references are released before running
9 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
9 years ago
Harshavardhana
fd2203b1b7
Some more improvements to connection limit
9 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.
9 years ago
Frederick F. Kautz IV
ed0a9a9e06
Removing entity too large errors from memory driver
9 years ago
Frederick F. Kautz IV
aff2b3b06a
Adding debug statements for testing
9 years ago
Frederick F. Kautz IV
82a16b8848
Make minio work with curl and browsers again
9 years ago
Frederick F. Kautz IV
3a1386165f
Fixing race condition
9 years ago
Harshavardhana
03bca9a001
Fix out of memory issue
9 years ago
Harshavardhana
25d4c0f6fa
A small logical change in messaging and logging
9 years ago
Frederick F. Kautz IV
f596c744ed
Adding error message on connection limit met
9 years ago
Harshavardhana
a89c4a57d3
Return resources as its available, not a new value
9 years ago
Frederick F. Kautz IV
0da04c6f17
Expirations are now based on last accessed instead of time created
9 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
9 years ago
Frederick F. Kautz IV
5fc5f79ab7
Adding lru
9 years ago
Frederick F. Kautz IV
8fcb697844
Simplifying memory sleep logic
9 years ago
Frederick F. Kautz IV
5cc9418ca7
Adding expiration
9 years ago
Frederick F. Kautz IV
a608524ebf
api logging is now in its own package
9 years ago
Harshavardhana
d1d5f7a78d
Collate success response into writeSuccessResponse(), add docs
9 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
9 years ago
Frederick F. Kautz IV
172cd18455
Adding initial logging framework to api_router
9 years ago
Frederick F. Kautz IV
88cca647ea
Adding json logging to stderr
9 years ago
Frederick F. Kautz IV
de091068e8
Removing quotas, will handle with iptables
9 years ago
Frederick F. Kautz IV
f2257a643c
Critical sections are now protected by lock
9 years ago