newrelic_rpm 9.2.1 → 9.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 24d17293feea3a15b482164d50f81a2f90a5540f25fee4d90e8472c1eb9d2f14
4
- data.tar.gz: f8a2475b3a782c509dd417a7174b3067da223bc834236c97a99456bb96660ecc
3
+ metadata.gz: fd188401ae5aad975a09ff40578156c88aac17e12320f41ce4bee8149c769aaf
4
+ data.tar.gz: e32201ee58712dd1520f03ae23a46bd1c804c2991b835151a68643c00cf140e3
5
5
  SHA512:
6
- metadata.gz: 6b2673019061b94d7800b6025ab88c9f6f096322f1309f3fac2d08c999731574f76997782b603327c4e2cb8ced6b45bfb02e47c2086f575dffe839607a8c92de
7
- data.tar.gz: 7f7d7e8f5982346f59d22a19bfdabacbbf5a57fd907cc694078534ff45e1cadeaee8631d2a110a64e06874f94258cf0050c15534a9d5482f13fe295005fb22e9
6
+ metadata.gz: cf9190f9bece2103511dc53071120f3dc758dba82cf042c1892d3376dc73a7b66e8898908bfe8406d85ba49ad67f7c6f5b2826e8e9b2a07d29ea05f5a99b701c
7
+ data.tar.gz: 5a240785708c245119750b33df64e5467e7f9b8abf9daae8b568a452da1913f40862788323232928ecc6da489fc7b998118f2397293a55e4d371e3f0a1ae0ad5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # New Relic Ruby Agent Release Notes
2
2
 
3
+ ## v9.2.2
4
+
5
+ Version 9.2.2 of the agent fixes a bug with the `Transaction#finished?` method.
6
+
7
+ - **Bugfix: Transaction#finished? no longer throws a NoMethodError when initial_segment is nil**
8
+
9
+ This change adds a safe navigation operator to `Transaction#finished?` to prevent `NoMethodErrors` when a transaction does not have any segments. Our thanks goes to [@JulienDefrance](https://github.com/JulienDefrance) for reporting this issue. [PR#1983](https://github.com/newrelic/newrelic-ruby-agent/pull/1983)
10
+
3
11
  ## v9.2.1
4
12
 
5
13
  Version 9.2.1 fixes a bug causing the agent to continue storing data on finished transactions, and a bug preventing errors from being expected.
@@ -21,8 +29,8 @@
21
29
 
22
30
  - **Feature: Enhance performance for handling high numbers of nested actions**
23
31
 
24
- With [Issue#1910](https://github.com/newrelic/newrelic-ruby-agent/issues/1910) community members [@parkerfinch](https://github.com/parkerfinch) and [@travisbell](https://github.com/travisbell) informed us of some CPU spikes and process hangs seen only when using the agent's thread instrumentation, which was enabled by default with v9.0. When thread instrumentation is enabled, instrumented actions taking place within threads are seen and reported on by the agent whereas they would have previously gone unnoticed. This is a great improvement to the agent's usefulness in an async context, and also makes it easier for higher numbers of nested actions to be observed.
25
- For example, if an instrumented background job framework (Sidekiq, Resque) kicks off a job that the agent notices and then that job in turn performs actions such as database queries that the agent also instruments, nested actions are seen. However, with very high (10,000+) numbers of actions nested within a single instrumented outer action, the agent would struggle to efficiently crunch through all of the collected data at the time when the outer action finished.
32
+ With [Issue#1910](https://github.com/newrelic/newrelic-ruby-agent/issues/1910) community members [@parkerfinch](https://github.com/parkerfinch) and [@travisbell](https://github.com/travisbell) informed us of some CPU spikes and process hangs seen only when using the agent's thread instrumentation, which was enabled by default with v9.0. When thread instrumentation is enabled, instrumented actions taking place within threads are seen and reported on by the agent whereas they would have previously gone unnoticed. This is a great improvement to the agent's usefulness in an async context, and also makes it easier for higher numbers of nested actions to be observed.
33
+ For example, if an instrumented background job framework (Sidekiq, Resque) kicks off a job that the agent notices and then that job in turn performs actions such as database queries that the agent also instruments, nested actions are seen. However, with very high (10,000+) numbers of actions nested within a single instrumented outer action, the agent would struggle to efficiently crunch through all of the collected data at the time when the outer action finished.
26
34
  The agent should now be much more efficient when any observed action with lots of nested actions is finished. Our performance testing was conducted with hundreds of thousands of nested actions taking place, and we hope that the benefits of thread tracing can now be enjoyed without any drawbacks. Thanks very much [@parkerfinch](https://github.com/parkerfinch) and [@travisbell](https://github.com/travisbell)! [PR#1927](https://github.com/newrelic/newrelic-ruby-agent/pull/1927)
27
35
 
28
36
  - **Feature: The agent configuration will now reflect whether module prepending or method chaining was used for instrumentation**
@@ -440,7 +440,7 @@ module NewRelic
440
440
  end
441
441
 
442
442
  def finished?
443
- initial_segment.finished?
443
+ initial_segment&.finished?
444
444
  end
445
445
 
446
446
  def create_initial_segment(options = {})
@@ -7,7 +7,7 @@ module NewRelic
7
7
  module VERSION # :nodoc:
8
8
  MAJOR = 9
9
9
  MINOR = 2
10
- TINY = 1
10
+ TINY = 2
11
11
 
12
12
  STRING = "#{MAJOR}.#{MINOR}.#{TINY}"
13
13
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newrelic_rpm
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.2.1
4
+ version: 9.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tanna McClure