aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/notifications
Commit message (Collapse)AuthorAgeFilesLines
* Subscribing to notifications while inside the said instrumented section.thedarkone2015-11-282-4/+9
| | | | | | | | | | | | | The issue is that on the exit from Instrumenter#instrument section, an Evented listener will run into an error because its thread local (Thread.current[:_timestack]) has not been set up by the #start method (this obviously happens because the Evented listeners didn't exist at the time, since no subscribtion to that section was made yet). Note: support for subscribing to instrumented sections, while being inside those instrumented sections, might be removed in the future. Maybe fixes #21873.
* Require only necessary concurrent-ruby classes.Jerry D'Antonio2015-11-041-1/+1
|
* Replaced `ThreadSafe::Map` with successor `Concurrent::Map`.Jerry D'Antonio2015-09-191-3/+3
| | | | | | | The thread_safe gem is being deprecated and all its code has been merged into the concurrent-ruby gem. The new class, Concurrent::Map, is exactly the same as its predecessor except for fixes to two bugs discovered during the merge.
* :nodoc: internal class [ci skip]Godfrey Chan2015-08-101-1/+1
|
* Replace `#=>` with `# =>` [ci skip]claudiob2014-12-171-1/+1
| | | | | | | | @rafaelfranca suggested in f7c7bcd9 that code examples should display the result after `# =>` and not after `#=>`. This commit replaces *all* the occurrences of `#=>` in the code documentation (mostly added by me :sob:) with the suggested `# =>`.
* Fix docs for AS::Notifications::Event#durationclaudiob2014-12-171-2/+2
| | | | | | | | | Stems from comments by @zzak on e07f3dd: * https://github.com/rails/docrails/commit/e07f3ddcac394d2a8dc23fc571318b7e8c2497b1#commitcomment-9015634 * https://github.com/rails/docrails/commit/e07f3ddcac394d2a8dc23fc571318b7e8c2497b1#commitcomment-9015639 [ci skip]
* Add docs for AS::Notifications::Event#durationclaudiob2014-12-171-0/+12
| | | | [ci skip]
* Avoid looping through subscribers when unsubscribing with a subscriber object.Guo Xiang Tan2014-06-011-5/+10
|
* Update documentation to reflect unsubscription with name.Guo Xiang Tan2014-06-011-2/+2
|
* use a thread local rather than a queue so events are in the right orderAaron Patterson2013-10-301-7/+4
|
* use a queue rather than a list. fixes #12069Aaron Patterson2013-10-281-1/+1
|
* duration is called multiple times in dev, so lets cache itAaron Patterson2013-08-181-1/+2
|
* Bug fix: Evented notification subscribers can handle published eventsCarl Lerche2013-05-171-0/+7
|
* Merge branch 'master' of github.com:lifo/docrailsVijay Dev2013-03-301-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb activerecord/test/cases/adapter_test.rb guides/source/testing.md [ci skip]
| * Fix some typosAkira Matsuda2013-03-251-1/+1
| |
* | ActiveSupport::Notifications::Instrumenter#instrument should yieldstopdropandrew2013-03-021-1/+1
|/ | | | its payload the same way that ActiveSupport::Notifications does. Fix spelling in test name.
* adding start / finish on the instrumenter, adding tests for the classAaron Patterson2013-01-091-6/+17
|
* Replace some global Hash usages with the new thread safe cache.thedarkone2012-12-141-2/+5
| | | | | | | | | | | | | | | | Summary of the changes: * Add thread_safe gem. * Use thread safe cache for digestor caching. * Replace manual synchronization with ThreadSafe::Cache in Relation::Delegation. * Replace @attribute_method_matchers_cache Hash with ThreadSafe::Cache. * Use TS::Cache to avoid the synchronisation overhead on listener retrieval. * Replace synchronisation with TS::Cache usage. * Use a preallocated array for performance/memory reasons. * Update the controllers cache to the new AS::Dependencies::ClassCache API. The original @controllers cache no longer makes much sense after @tenderlove's changes in 7b6bfe84f3 and f345e2380c. * Use TS::Cache in the connection pool to avoid locking overhead. * Use TS::Cache in ConnectionHandler.
* update AS/notifications and AS/testing docs [ci skip]Francesco Rodriguez2012-09-141-1/+1
|
* Evented notifications take priority over Timed notificationsEric Saxby2012-08-111-3/+3
| | | | | | | In cases where a notification subscriber includes methods to support both Evented and Timed events, Evented should take priority over Timed. This allows subscribers to be backwards compatible (older Rails only allows Timed events) while defaulting to newer behavior.
* move fanout back to a global variable, add a mutex for safetyAaron Patterson2012-06-191-7/+17
|
* Add missing requireRafael Mendonça França2012-06-191-0/+2
|
* subscribers are per thread, so remove the nested hash accessAaron Patterson2012-06-191-5/+3
|
* documenting concurrency rules for the Fanout classAaron Patterson2012-06-191-0/+3
|
* make events not use date and time to determine parent_of. fixes #5932タコ焼き仮面2012-06-181-4/+12
|
* evented listeners can subscribe to any messageAaron Patterson2012-03-211-9/+27
|
* evented subscribers workAaron Patterson2012-03-211-6/+10
|
* start / finish events are sent by the instrumenterAaron Patterson2012-03-212-7/+41
|
* split subscribers based on pattern typeAaron Patterson2012-03-211-13/+31
|
* Remove deprecation from AS::Deprecation behavior, some minor cleanupsCarlos Antonio da Silva2012-03-162-6/+3
| | | | | | | | | * Refactor log subscriber, use select! to avoid a new object * Remove deprecation messages related to AS::Deprecation behavior This was added about 2 years ago for Rails 3: https://github.com/rails/rails/commit/d4c7d3fd94e5a885a6366eaeb3b908bb58ffd4db * Remove some not used requires * Refactor delegate to avoid string conversions and if statements inside each block
* Removed ActiveSupport::SecureRandom in favour of SecureRandom from the ↵Jon Leighton2011-05-231-1/+0
| | | | standard library. (It has been deprecated in the 3-1-stable branch.)
* minor changesVijay Dev2011-04-271-3/+3
|
* Revert the previous three commits.José Valim2010-07-251-7/+4
| | | | | | * AS::Notifications#instrument should not measure anything, it is not its responsibility; * Adding another argument to AS::Notifications#instrument API needs to be properly discussed;
* use a hash to collect optional statistics about the instrumentationAaron Patterson2010-07-251-4/+7
|
* Get rid of instrumenter.elapsed.José Valim2010-07-241-9/+3
|
* Performance optimizations to handle cases of instrumentors that are not ↵Carlhuda2010-07-222-4/+9
| | | | listened to. Also, fix a possible concurrency issue.
* Add a test for elapsed and require missing benchmark file.José Valim2010-07-201-2/+2
|
* reusing the time instrumentation from the instrumenter rather than ↵Aaron Patterson2010-07-191-2/+9
| | | | Benchmark. [#5098 state:open]
* Minor performance improvment in notifications/fanout and ↵Daniel Guettler2010-07-191-7/+5
| | | | active_record/log_subscriber [#5098 state:open]
* avoid call to Array#firstAaron Patterson2010-07-191-3/+3
|
* subscriber does not need to be a block, but an object that responds to #callAaron Patterson2010-07-181-5/+5
|
* tap the subscriber for easier return valueAaron Patterson2010-07-181-2/+3
|
* bind method is not needed, so goodbye! <3 <3 <3Aaron Patterson2010-07-181-7/+1
|
* convert duration to an attr_readerAaron Patterson2010-07-171-6/+3
|
* drained? is never calledAaron Patterson2010-07-171-4/+0
|
* private method is not neededAaron Patterson2010-07-171-12/+2
|
* removing Binding classAaron Patterson2010-07-171-14/+4
|
* use === to avoid regular expression creation, and speed up string comparisonAaron Patterson2010-07-171-9/+3
|
* Event should be aware if yielded block failed or not.José Valim2010-05-021-3/+5
|
* Make notifications go off even when an error is raised, so that we capture ↵Justin George2010-05-021-3/+7
| | | | | | | | | | | | | | the underlying performance data [#4505 state:resolved] This is important when trying to keep track of many layers of interrelated calls i.e.: ActiveRecord::Base.transaction do MyModel.find(1) #ActiveRecord::NotFound end # should capture the full time until the error propagation Signed-off-by: José Valim <jose.valim@gmail.com>