IP Library Granted Patent US 12675369
Granted Patent B2
US 12675369 · App. 19/176,360 · Granted Jul 7, 2026

Cloud computing sandbox backup

Inventor: Gadi Luc Vered (Tenafly, NJ)
Assignee: Salesforce, Inc.
G06F11/1451G06F11/1464G06F16/125
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12675369
App. No.
19/176,360
Granted
Jul 7, 2026
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for backing up environments. One of the methods includes maintaining, for a cloud computing environment, first data that indicates one or more previously active sandbox environments; determining second data that indicates one or more most recently active sandbox environments; determining, using the second data, a newly added sandbox environment; determining, using a first identifier for the newly added sandbox environment and a second identifier for a prior sandbox environment from the one or more previously active sandbox environments, whether the newly added sandbox environment is likely a refresh of the prior sandbox environment; and performing one or more actions for the newly added sandbox environment using a result of the determination whether the newly added sandbox environment is likely a refresh of the prior sandbox environment.

Claims (45)

1 . A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

detecting, for a cloud computing environment that includes a live production environment and two or more sandbox environments each of which were seeded using data from the live production environment and are not refreshed with new data from the live production environment, a newly added sandbox environment from one or more most recently active sandbox environments that is not included in one or more previously active sandbox environments;

determining, using a first identifier for the newly added sandbox environment and a second identifier for a prior sandbox environment that is a) from the one or more previously active sandbox environments and b) not included in the one or more most recently active sandbox environments, whether the newly added sandbox environment is likely a refresh of the prior sandbox environment from the one or more previously active sandbox environments; and

performing one or more actions for the newly added sandbox environment using a result of the determination whether the newly added sandbox environment is likely a refresh of the prior sandbox environment.

2 . The system of claim 1 , wherein:

determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises determining whether the first identifier and the second identifier satisfy an identifier sequence criteria; and

performing one or more actions for the newly added sandbox environment responsive to determining that the first identifier and the second identifier satisfy the identifier sequence criteria.

3 . The system of claim 1 , wherein determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises:

determining, using the second identifier for the prior sandbox environment and first data that indicates one or more previously active sandbox environments from the two or more sandbox environments, a first environment type for the prior sandbox environment;

determining, using the first identifier for the newly added sandbox environment, a second environment type for the newly added sandbox environment; and

determining whether the first environment type and the second environment type satisfy an environment type criteria.

4 . The system of claim 1 , wherein determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises:

determining a first time period during which the prior sandbox environment was deleted;

determining a second time period during which the newly added sandbox environment was created; and

determining whether the first time period and the second time period satisfy a time period criteria.

5 . The system of claim 4 , wherein determining the first time period during which the prior sandbox environment was deleted uses i) an environment status and an environment identifier for the prior sandbox environment and ii) a timestamp for a most recent message that included environment data for the cloud computing environment and did not include the environment identifier for the prior sandbox environment.

6 . The system of claim 5 , wherein determining the first time period includes using data indicating that the environment status for the prior sandbox environment, prior to receipt of the most recent message that included environment data for the cloud computing environment and did not include the environment identifier for the prior sandbox environment, was active.

7 . The system of claim 1 , wherein performing the one or more actions comprises automatically adding the newly added sandbox environment to a list of environments to backup in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment that was previously on the list of environments to backup.

8 . The system of claim 7 , the operations further comprising removing the prior sandbox environment from the list of environments to backup in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment that was previously on the list of environments to backup.

9 . The system of claim 1 , wherein performing the one or more actions comprises backing up the newly added sandbox environment in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment.

10 . The system of claim 1 , the operations comprising archiving a backup of the prior sandbox environment in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment.

11 . The system of claim 1 , wherein performing the one or more actions comprises, in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment, associating, in a database, the newly added sandbox environment with the prior sandbox environment to enable joint analysis of the newly added sandbox environment with the prior sandbox environment that was not previously available prior to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment.

12 . One or more non-transitory computer storage media encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

detecting, for a cloud computing environment that includes a live production environment and two or more sandbox environments each of which were seeded using data from the live production environment and are not refreshed with new data from the live production environment, a newly added sandbox environment from one or more most recently active sandbox environments that is not included in one or more previously active sandbox environments;

determining, using a first identifier for the newly added sandbox environment and a second identifier for a prior sandbox environment that is a) from the one or more previously active sandbox environments and b) not included in the one or more most recently active sandbox environments, whether the newly added sandbox environment is likely a refresh of the prior sandbox environment from the one or more previously active sandbox environments; and

performing one or more actions for the newly added sandbox environment using a result of the determination whether the newly added sandbox environment is likely a refresh of the prior sandbox environment.

13 . The media of claim 12 , wherein:

determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises determining whether the first identifier and the second identifier satisfy an identifier sequence criteria; and

performing one or more actions for the newly added sandbox environment responsive to determining that the first identifier and the second identifier satisfy the identifier sequence criteria.

14 . The media of claim 12 , wherein determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises:

determining, using the second identifier for the prior sandbox environment and first data that indicates one or more previously active sandbox environments from the two or more sandbox environments, a first environment type for the prior sandbox environment;

determining, using the first identifier for the newly added sandbox environment, a second environment type for the newly added sandbox environment; and

determining whether the first environment type and the second environment type satisfy an environment type criteria.

15 . The media of claim 12 , wherein determining whether the newly added sandbox environment is likely a refresh for the prior sandbox environment comprises:

determining a first time period during which the prior sandbox environment was deleted;

determining a second time period during which the newly added sandbox environment was created; and

determining whether the first time period and the second time period satisfy a time period criteria.

16 . The media of claim 15 , wherein determining the first time period during which the prior sandbox environment was deleted uses i) an environment status and an environment identifier for the prior sandbox environment and ii) a timestamp for a most recent message that included environment data for the cloud computing environment and did not include the environment identifier for the prior sandbox environment.

17 . The media of claim 16 , wherein determining the first time period includes using data indicating that the environment status for the prior sandbox environment, prior to receipt of the most recent message that included environment data for the cloud computing environment and did not include the environment identifier for the prior sandbox environment, was active.

18 . The media of claim 12 , wherein performing the one or more actions comprises automatically adding the newly added sandbox environment to a list of environments to backup in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment that was previously on the list of environments to backup.

19 . The media of claim 18 , the operations comprising removing the prior sandbox environment from the list of environments to backup in response to determining that the newly added sandbox environment is likely a refresh of the prior sandbox environment that was previously on the list of environments to backup.

20 . A computer-implemented method comprising:

detecting, for a cloud computing environment that includes a live production environment and two or more sandbox environments each of which were seeded using data from the live production environment and are not refreshed with new data from the live production environment, a newly added sandbox environment from one or more most recently active sandbox environments that is not included in one or more previously active sandbox environments;

determining, using a first identifier for the newly added sandbox environment and a second identifier for a prior sandbox environment that is a) from the one or more previously active sandbox environments and b) not included in the one or more most recently active sandbox environments, whether the newly added sandbox environment is likely a refresh of the prior sandbox environment from the one or more previously active sandbox environments; and

performing one or more actions for the newly added sandbox environment using a result of the determination whether the newly added sandbox environment is likely a refresh of the prior sandbox environment.