aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/cache.rb
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2393 from bdurand/fix_cache_read_multiSantiago Pastorino2011-08-011-1/+1
|\ | | | | Fix ArgumentError in ActiveSupport::Cache::CacheStore.read_multi
| * Pass options in ActiveSupport::Cache::CacheStore#read_multi through to the ↵Brian Durand2011-08-011-1/+1
| | | | | | | | delete_entry call.
* | Change ActiveSupport::Cache behavior to always return duplicate objects ↵Brian Durand2011-07-291-15/+8
|/ | | | instead of frozen objects.
* Properly cache value when it is "false"Sebi Burkhard2011-07-081-2/+2
|
* minor edit in 7896ac3Vijay Dev2011-07-051-1/+1
|
* general grammar cleanup of cache docsMatt Jankowski2011-07-011-24/+26
|
* do not test explicit equality of predicate methods, they should be allowed ↵Aaron Patterson2011-03-071-5/+1
| | | | to return truthy or falsey objects
* refactor calls to to_param in expand_key methodAaron Patterson2011-03-071-9/+10
|
* use sort_by instead of sort()Aaron Patterson2011-03-051-1/+1
|
* Merge branch 'master' of https://github.com/cylence/docrails into cylence-masterAditya Sanghi2010-11-291-1/+1
|\
| * Corrected typo and wording.Ryan L. Cross2010-10-241-1/+1
| |
* | Resolves LH #6063, should be :expires_in not :expire_inAditya Sanghi2010-11-271-2/+2
|/
* Exception handling more readableThiago Pradi2010-09-191-2/+2
| | | | | | [#5601 state:committed] Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
* Revert "Setup explicit requires for files with exceptions. Removed them from ↵José Valim2010-09-021-1/+0
| | | | | | | | autoloading." Booting a new Rails application does not work after this commit [#5359 state:open] This reverts commit 38a421b34d0b414564e919f67d339fac067a56e6.
* Setup explicit requires for files with exceptions. Removed them from ↵Łukasz Strzałkowski2010-09-021-0/+1
| | | | | | autoloading. Signed-off-by: José Valim <jose.valim@gmail.com>
* Support pluggable cache stores.Mike Perham2010-08-281-1/+8
| | | | | | [#5486 state:committed] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* Deletes trailing whitespaces (over text files only find * -type f -exec sed ↵Santiago Pastorino2010-08-141-11/+11
| | | | 's/[ \t]*$//' -i {} \;)
* Make options an attr_readerSantiago Pastorino2010-07-301-6/+1
|
* Merge remote branch 'rails/master'Xavier Noria2010-07-301-2/+0
|\
| * removing unused variableNeeraj Singh2010-07-281-2/+0
| |
* | editing the documentation regarding :race_condition_ttl and :expires_in ↵Neeraj Singh2010-07-281-22/+23
| | | | | | | | option in AS cache
* | editing a sentenceNeeraj Singh2010-07-281-1/+1
| |
* | making comments have a consistent theme of narrativeNeeraj Singh2010-07-261-26/+22
|/
* Allow instrumentation of cache hits and misses. [#4888 state:resolved]Hongli Lai (Phusion)2010-06-211-25/+40
| | | | Signed-off-by: José Valim <jose.valim@gmail.com>
* Fix a bunch of minor spelling mistakesEvgeniy Dolzhenko2010-06-111-1/+1
|
* Change event namespace ordering to most-significant first [#4504 state:resolved]Justin George2010-05-021-1/+1
| | | | | | | | | More work still needs to be done on some of these names (render_template.action_view and render_template!.action_view particularly) but this allows (for example) /^sql/ to subscribe to all the various ORMs without further modification Signed-off-by: José Valim <jose.valim@gmail.com>
* ActiveSupport::Cache refactoringBrian Durand2010-04-271-69/+427
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All Caches * Add default options to initializer that will be sent to all read, write, fetch, exist?, increment, and decrement * Add support for the :expires_in option to fetch and write for all caches. Cache entries are stored with the create timestamp and a ttl so that expiration can be handled independently of the implementation. * Add support for a :namespace option. This can be used to set a global prefix for cache entries. * Deprecate expand_cache_key on ActiveSupport::Cache and move it to ActionController::Caching and ActionDispatch::Http::Cache since the logic in the method used some Rails specific environment variables and was only used by ActionPack classes. Not very DRY but there didn't seem to be a good shared spot and ActiveSupport really shouldn't be Rails specific. * Add support for :race_condition_ttl to fetch. This setting can prevent race conditions on fetch calls where several processes try to regenerate a recently expired entry at once. * Add support for :compress option to fetch and write which will compress any data over a configurable threshold. * Nil values can now be stored in the cache and are distinct from cache misses for fetch. * Easier API to create new implementations. Just need to implement the methods read_entry, write_entry, and delete_entry instead of overwriting existing methods. * Since all cache implementations support storing objects, update the docs to state that ActiveCache::Cache::Store implementations should store objects. Keys, however, must be strings since some implementations require that. * Increase test coverage. * Document methods which are provided as convenience but which may not be universally available. MemoryStore * MemoryStore can now safely be used as the cache for single server sites. * Make thread safe so that the default cache implementation used by Rails is thread safe. The overhead is minimal and it is still the fastest store available. * Provide :size initialization option indicating the maximum size of the cache in memory (defaults to 32Mb). * Add prune logic that removes the least recently used cache entries to keep the cache size from exceeding the max. * Deprecated SynchronizedMemoryStore since it isn't needed anymore. FileStore * Escape key values so they will work as file names on all file systems, be consistent, and case sensitive * Use a hash algorithm to segment the cache into sub directories so that a large cache doesn't exceed file system limits. * FileStore can be slow so implement the LocalCache strategy to cache reads for the duration of a request. * Add cleanup method to keep the disk from filling up with expired entries. * Fix increment and decrement to use file system locks so they are consistent between processes. MemCacheStore * Support all keys. Previously keys with spaces in them would fail * Deprecate CompressedMemCacheStore since it isn't needed anymore (use :compress => true) [#4452 state:committed] Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* Use backtrace cleaner for dev mode exception pageJoshua Peek2010-01-161-4/+4
|
* Use underscore in notification namespaces.José Valim2010-01-041-1/+1
|
* Use namespaces in notifications.José Valim2010-01-031-2/+2
|
* cache.rb requires active_support/core_ext/string/inflections because it uses ↵Xavier Noria2010-01-011-0/+1
| | | | camelize
* Fix arg destructureJeremy Kemper2009-11-081-2/+2
|
* Ruby 1.9.2: work around changes to flatten and nil.to_strJeremy Kemper2009-11-081-1/+2
|
* Consolidate Object#to_param and #to_query core extensionsJeremy Kemper2009-11-021-6/+1
|
* Renamed Orchestra to Notifications once again [#3321 state:resolved]José Valim2009-10-151-1/+1
|
* Instrument cache store events only if required.José Valim2009-10-151-6/+18
|
* Update Orchestra instrumentations and move part of logging to Orchestra.José Valim2009-10-151-6/+5
|
* Revert "Rename Orchestra to Notifications [#3321 state:resolved]"José Valim2009-10-151-1/+1
| | | | This reverts commit 8cbf825425dc8ad3770881ea4e100b9023c69ce2.
* Rename Orchestra to Notifications [#3321 state:resolved]Joshua Peek2009-10-141-1/+1
|
* Mute log info coming from the local_cache strategyPratik Naik2009-10-091-0/+7
|
* Instrumenting cache stores.José Valim2009-09-201-34/+26
|
* More perf work:Yehuda Katz2009-08-111-7/+15
| | | | | | | | | | | | | | * Move #set_cookie and #delete_cookie inline to optimize. These optimizations should almost certainly be sent back upstream to Rack. The optimization involves using an ivar for cookies instead of indexing into the headers each time. * Was able to use a bare Hash for headers now that cookies have their own joining semantics (some code assumed that the raw cookies were an Array). * Cache blankness of body on body= * Improve expand_cache_key for Arrays of a single element (common in our case) * Use a simple layout condition check unless conditions are used * Cache visible actions * Lazily load the UrlRewriter * Make etag an ivar that is set on prepare!
* Fixes bug where Memcached connections get corrupted when an invalid expire ↵Yehuda Katz + Carl Lerche2009-07-011-2/+11
| | | | is passed in [#2854 state:resolved]
* Try speeding up rails bootingYehuda Katz + Carl Lerche2009-06-251-1/+6
|
* Add expiry support File cache store [#1693 state:resolved] [Roman ↵Pratik Naik2009-06-211-2/+10
| | | | Shterenzon, Pratik Naik]
* Fix dependencies revealed by testing in isolationJeremy Kemper2009-04-221-0/+1
|
* Remove rarely-used DRb cache storeJeremy Kemper2009-04-171-4/+3
|
* Explicit class attribute accessor, benchmark, and NameError extension ↵Jeremy Kemper2009-03-281-0/+3
| | | | dependencies
* Decouple the local cache strategy from MemCacheStore for reuse with other ↵Lourens Naude2009-01-171-0/+4
| | | | | | remote stores [#1653 state:resolved] Signed-off-by: Joshua Peek <josh@joshpeek.com>
* Benchmark.msJeremy Kemper2008-12-091-2/+2
|