Ca, Inc. v. New Relic, Inc.

Decision Date28 September 2015
Docket NumberCV 12-5468 (AKT)
PartiesCA, INC., D/B/A CA TECHNOLOGIES, Plaintiff, v. NEW RELIC, INC., Defendant.
CourtU.S. District Court — Eastern District of New York
MEMORANDUM DECISION AND ORDER

A. KATHLEEN TOMLINSON, Magistrate Judge:

I. PRELIMINARY STATEMENT

Plaintiff CA, Inc. ("CA") commenced this patent infringement action alleging that defendant New Relic, Inc. ("New Relic") has infringed three patents regarding an application performance management ("APM") product which monitors the performance of software applications. See generally Compl. [DE 1]. New Relic has moved for partial summary judgment in its favor on the issues of patent infringement and validity as to one of the patents-in-suit, namely, U.S. Patent No. 7,512,935 B1 ("the '935 Patent"), entitled "Adding Functionality to Existing Code at Exits." See Memorandum of Law in Support of Defendant New Relic Inc.'s Motion for Partial Summary Judgment ("Def.'s Mem.") [DE 113]. As to infringement, New Relic argues that its accused systems, the Java and .NET agents, do not infringe the asserted claims of the '935 Patent as a matter of law. See id. at 5. As to validity, New Relic argues that all of the asserted claims of the '935 Patent are invalid as anticipated by a 1999 article by Marcus Dahm entitled "Byte Code Engineering with the JavaClass API" ("the Dahm article") and by the associated JavaClass system. See id. CA opposes the motion, arguing that genuine issues of factexist regarding the claims of infringement and validity. See generally Plaintiff's Memorandum of Law In Opposition to New Relic's Motion for Partial Summary Judgment ("CA Opp'n") [DE 125].

Due to the complexity of the technology encompassed by the '935 Patent as well as the issues raised in New Relic's motion, the Court issued an Order, pursuant to Fed. R. Civ. P. 53, appointing Robert Neuner, Esq. as Special Master (the "Special Master") to hear and consider New Relic's motion for partial summary judgment and to issue a Report and Recommendation as to the specific disposition of the issues raised in New Relic's motion and CA's opposition to that motion. See September 12, 2014 Order of Appointment Of And Reference To Special Master ("Order of Appointment") [DE 151]. The Special Master held two hearings on the motion and thereafter submitted his Report and Recommendation to the Court. See Special Master's Report and Recommendation ("R&R") [DE 154].

Generally speaking, the Special Master recommended that New Relic's motion for partial summary judgment be granted, in part, and denied, in part. See id. The Special Master concluded that, as a matter of law, (1) none of the asserted claims of the '935 Patent are infringed by New Relic's Java agent, either literally or under the doctrine of equivalents, and (2) none of the asserted claims are literally infringed by New Relic's .NET agent. See id. at 20-23. The Special Master therefore recommended that partial summary judgment of non-infringement be granted, in part, in favor of New Relic on these issues. See id. at 26. However, the Special Master concluded that questions of fact remain as to whether the asserted claims of the '935 Patent (1) are infringed by New Relic's .NET agent under the doctrine of equivalents, see id. at 23-24; and (2) are invalid as anticipated by the Dahm article and the JavaClass system, see id. at 25-26. Accordingly, the Special Master recommended that the Court deny summary judgment toNew Relic on these issues. See id. at 26. In light of these recommendations, the Special Master also recommended that the Court re-open discovery to allow the parties' experts to supplement their expert reports on the issue of infringement and to allow the parties to depose the experts on their supplemental reports. See id. at 26-27.

Presently before the Court are the parties' objections to the R&R. See Defendant New Relic's Objections And Request to Adopt And Modify The Special Master's Report and Recommendation ("New Relic Objs.") [DE 155]; Plaintiff CA's Objections and Response to Special Master's Report and Recommendation ("CA Objs.") [DE 156]. For the reasons set forth in this Memorandum Decision and Order, the Court (1) OVERRULES the objections by CA, and (2) OVERRULES, in part, and SUSTAINS, in part, the objections by New Relic. Further, the Court (1) ADOPTS the R&R, in part, to the extent that it recommends: (a) granting partial summary judgment of non-infringement as to the Java Agent; (b) granting partial summary judgment of non-infringement as to the .NET agent based on literal infringement; and (c) denying partial summary judgment on the issue whether the '935 Patent is invalid because it was anticipated by the Dahm Article and the JavaClass system; and (2) MODIFIES the R&R, in part, to the extent that summary judgment of non-infringement as to the .NET agent under the doctrine of equivalents is granted. The Court further REJECTS AS MOOT the Special Master's recommendation that expert discovery be re-opened in light of the Court's decision to modify the R&R to grant partial summary judgment of non-infringement as to the .NET agent in its entirety. Accordingly, New Relic's motion for partial summary judgment is GRANTED, in part, as to non-infringement, and DENIED, in part, as to the validity of the '935 Patent.

II. BACKGROUND

The underlying facts of this case were set out in some detail in Magistrate Judge Wall's January 5, 2014 Memorandum and Order [DE 86] after the claim construction hearing was completed and will not be repeated here. The following background information is derived primarily from the Special Master's R&R1 and the supporting record evidence. Only those facts necessary for disposition of the issues before the Court are included here.

A. The '935 Patent

The '935 Patent was issued to Jeffrey R. Cobb on March 31, 2009 based upon a patent application filed on February 21, 2001. R&R at 2; see '935 Patent, annexed as Ex. A to the Declaration of Corey Johanningmeier In Support of New Relic's Motion for Summary Judgment ("Johanningmeier Decl.") [DE 115-1]. The patent was originally assigned to Wily Technology, Inc. ("Wily"). R&R at 2. When Wily was acquired by CA, the patent was assigned first to Computer Associates Think, Inc. and thereafter to CA. Id. The field of invention is software for adding performance profiling functionality to existing codes at exits. Id.; see '935 Patent, Background of Invention, 1:6-8.2

The '935 Patent acknowledges that performance profiling software existed prior to the filing date of the '935 Patent. R&R at 3; see '935 Patent, Background of Invention, 1:10-67, 2:1-8 (describing prior art). The prior art software involved adding new code to each of the exits in the code. R&R at 3; see '935 Patent, Background of Invention, 1:55-57. According to the '935 Patent, this prior art technique of "[a]dding performance profiling code to each of the instructions that each can be an exit has its drawbacks," including increasing the amount of code in the software and failing to adequately account for all the possible exits in the code. '935 Patent, Background of Invention, 1:60-67; 2:1-2; see R&R at 3. Moreover, "[w]hen an error or exception occurs, the normal flow of the method can be halted, in which case none of the explicit exits will be performed and an exit associated with the error or exception will be performed." '935 Patent, Background of Invention, 2:3-6; see R&R at 3.

As a solution, the '935 Patent discloses "a system for adding functionality to existing object code . . . so that multiple exits are accounted for." '935 Patent, Summary of the Invention, 2:19-21. In particular, the '935 patent describes a way to add functionality to existing object code (specifically, Java byte code) so that the instructions (i.e., exit code) added to the existing code are executed regardless of how the existing object code exits. Id. at 2:26-35; 4:18-24; see R&R at 3.

One embodiment of the invention disclosed in the '935 Patent is "try / finally functionality," also referred to in the R&R as "try / finally implementation." See R&R at 3.3 The '935 Patent describes try / finally functionality as follows:

Rather than physically insert copies of the stop code at every possible explicit exit, the present invention conceptually encloses the [Java instructions] within a 'try' block and places the stop code within a 'finally' block. Thisimplementation provides that the stop code will be performed regardless of the exit from the 'try' block, including intentional exits and exceptions.

'935 Patent, Summary of the Invention, 4:18-24; see id. at 3:52-55 ("Rather than add many copies of the exit code in different places, the present invention adds exit code using 'try' and 'finally' functionality."). The Special Master provided the following explanation of the try / finally functionality in the R&R:

Try / finally is a programming language construct. No matter how the code enclosed in the try block exits, the code in the finally block is always executable. The '935 patent illustrates try / finally implementation in a profiling process by adding a single finally handler for all normal and exception exits. In the example given in the patent at column 13:line 28 to column 15:line 16, instructions 16-18 correspond to existing object code. The code corresponding to indices 36-47 represents the finally handler. The added code at indices 19-27 is performed for normal exits in the case where there are no exceptions. This added code calls the finally handler through a jump subroutine (index 21) and the finally handler is executed. Error in the original routine shifts the code flow to the added code (indices 28-35) representing exception exits. This code likewise jumps to index 36 and the finally handler is executed. Whether the code runs through the code executed for normal exits and jumps to instruction 36 and/or runs through the code executed for exceptions and jumps to instruction 36, the finally handler will get executed
...

To continue reading

Request your trial

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT