Patents Assigned to salesforce.com
  • Patent number: 10671236
    Abstract: Disclosed are some implementations of systems, apparatus, methods, and computer program products for implementing, a stateful, contextual, and draggable widget. A widget application stores a state of the widget, a context of the widget, and coordinates of the widget. When a user navigates from one web page of a web site to another web page of the web site, the widget application reconstitutes the widget using the saved state, context, and coordinates of the widget.
    Type: Grant
    Filed: September 20, 2018
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Orlee Dykan, Robert Birbeck, Joshua Boyden
  • Patent number: 10671751
    Abstract: A predicate-based row level security system is used when workers build or split an analytical data store. According to one implementation, predicate-based means that security requirements of source transactional systems can be used as predicates to a rule base that generates one or more security tokens, which are associated with each row as attributes of a dimension. Similarly, when an analytic data store is to be split, build job, user and session attributes can be used to generate complementary security tokens that are compared to security tokens of selected rows. Efficient indexing of a security tokens dimension makes it efficient to qualify row retrieval based on security criteria.
    Type: Grant
    Filed: February 22, 2017
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Donovan A. Schneider, Daniel C. Silver, Fred Im, Vijayasarathy Chakravarthy
  • Patent number: 10671975
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating smart streaming of data between external systems and service providers in an on-demand services environment according to one embodiment. In one embodiment and by way of example, a method comprises splitting, by a streaming server computing device (“streaming device”), a file including messages associated with multiple tenants in a multitenant environment based on growth of the file over a time-period. The method may further include grouping, by the streaming device, the messages into multiple files based on intelligence fields associated with one or more of the messages and the tenants, where each file of the multiple files corresponds to a tenant of the multiple tenants. The method may further include uploading, by the streaming device, the multiple files to a database device associated with a service provider and coupled to the streaming server device.
    Type: Grant
    Filed: January 10, 2018
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Anjani Gupta, William Victor Gray, Shaahin Mehdinezhad Rushan, Yogesh Patel, Kshama Thacker, Shreedhar Sundaram, Mahalaxmi Sanathkumar, Rajkumar Pellakuru, William Edward Hackett
  • Patent number: 10671604
    Abstract: Methods for splitting a plurality of records into subsets for parallel processing by separate threads are disclosed. In one embodiment, a plurality of records are added to a database. The adding includes tracking, for each unique value found in the plurality of records within a selected one of the sequence of fields, a statistic based on the values found in the plurality of records within a next one of the sequence of fields. Then a plurality of queries are generated, each includes a row value constructor (RVC) with a logical operation, a specific one of the unique values found within the selected one of the sequence of fields, and, for that specific value, the tracked statistic. Then a plurality of threads are caused to execute that each submit one of the queries and operate on a subset of the plurality of records responsive to execution of that query.
    Type: Grant
    Filed: January 30, 2018
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Danil Dvinov, Parth Vijay Vaishnav, Chenghung Ker
  • Patent number: 10671739
    Abstract: A method for securely sharing a common software package includes storing, within a database, a set of software packages associated with a first namespace, then storing, within the database, a common software package associated with the set of software packages. The common software package is obfuscated and includes an access modifier. A request to install a first software package selected from the set of software packages associated with the namespace is received by a subscriber. In response to the request from the subscriber, the system installs the first software package and the common software package in accordance with the access modifier.
    Type: Grant
    Filed: January 17, 2018
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Ganesh Mathrubootham, Jeffrey M. Bartolotta, Reid A. Elliott
  • Patent number: 10671589
    Abstract: A system may utilize a combination of real-time and polling connectors for data crawling. A real-time connector may use a collector to write data associated with a new event from a database to a channel and record external identifiers (IDs) associated the data. A polling connector may use a verifier to compare the recorded IDs with IDs associated with a batch of data, and may write any data of the batch of data to the channel that has not been written previously written by the collector. The system may include an onboarder for reading data previously stored in the database.
    Type: Grant
    Filed: March 3, 2017
    Date of Patent: June 2, 2020
    Assignee: salesforce.com, inc.
    Inventors: Ankush Goyal, Shardul Vikram, Nathaniel Richard Price, Sudarshan Vijay Sarolkar, Scott Walter Bishel, Praveen Innamuri, Jon Tomas Gretarsson
  • Patent number: 10664928
    Abstract: Disclosed are examples of apparatus, methods, and computer readable storage media for informing one or more users of social network data such as group data when the data is relevant to the user(s). For example, when one or more keywords are identified as being associated with both a group of an online social network and the user, a communication with information identifying the group data can be generated and provided to a display device accessible by the user. In another example, social network data is associated with an entity of the online social network, and the entity is not being followed by the user. Social network data identified as related to one or more keywords can be provided to a display device in a suitable presentation accessible by the user.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: May 26, 2020
    Assignee: salesforce.com, inc.
    Inventor: Elena Schneider
  • Patent number: 10664266
    Abstract: Maintaining client version affinity during a rolling server cluster upgrade includes a server in the server cluster receiving a request from a client and checking the request for a version cookie indicating a software version that the client is running. Responsive to a determination that the server is running the same software version as the client, the server serves the request. Responsive to a determination that the client is running a software version matching a previous software version of the server, the server initiates a software upgrade on the client instead of servicing the request. Responsive to a determination that the server is not running the same software version as the client, the server forwards the request to one of the other servers in the server cluster that is running the same software version as the client.
    Type: Grant
    Filed: September 4, 2018
    Date of Patent: May 26, 2020
    Assignee: SALESFORCE.COM, INC.
    Inventors: Olga Peschansky, Paul Sydell
  • Patent number: 10664455
    Abstract: A system derives a first schema that is specific to a first log entry type associated with a log code, a second schema that is specific to a second log entry type associated with the log code, and a common schema for the first log entry type and the second log entry type. The system stores the first schema and the common schema in a container for the first log entry type, and the second schema and the common schema in a container for the second log entry type. The system identifies a schema identifier in a log entry corresponding to a system user event. The schema identifier corresponds to a schema in the container for the first log entry type or the container for the second log entry type. The system identifies log data by applying the corresponding schema to the log entry, and outputs the log data.
    Type: Grant
    Filed: April 7, 2017
    Date of Patent: May 26, 2020
    Assignee: salesforce.com, inc.
    Inventors: Choapet Oravivattanakul, Alex Warshavsky, Samarpan Jain
  • Patent number: 10664244
    Abstract: Disclosed are examples of systems, apparatus, methods and computer program products for providing a dynamic page previewer for a web application builder. A database system maintains a multi-tenant non-relational database associated with a number of users, web applications, and web application components. The system displays a user interface for a dynamic page previewer, consisting of a preview page for a web application containing a number of web application components and one or more component toggle buttons corresponding to the components. The system then processes a user request to select a component toggle button. One or more component visibility rules associated with the component are determined, as well as a visibility state for the component.
    Type: Grant
    Filed: August 22, 2017
    Date of Patent: May 26, 2020
    Assignee: salesforce.com, inc.
    Inventor: Jan Ove Kristian Olsson
  • Patent number: 10664192
    Abstract: In an example, a computing system is configured to detect data to temporarily store in a group of buffers using an in-memory buffer service; correlate, to the detected data, one or more identifiers of a plurality of identifiers based on a characteristic of the detected data, wherein a first identifier of the plurality corresponds to a first buffer type and a second different identifier of the plurality corresponds to a second buffer type; in response to the data correlated to a single identifier of the identifiers, create a first data object and place the first data object in one of the buffers of the corresponding buffer type; and in response to the data correlated to more than one of the identifiers, create a second data object for each one of the identifiers and place the second data objects in ones of the buffers of the corresponding buffer types, respectively.
    Type: Grant
    Filed: April 26, 2018
    Date of Patent: May 26, 2020
    Assignee: SALESFORCE.COM, INC.
    Inventors: Choapet Oravivattanakul, Samarpan Jain
  • Patent number: 10664487
    Abstract: Techniques and structures for providing a multitenant environment having both a relational database and a non-relational database. A database query is received with at least one server computing device providing a multitenant environment having a relational database system and a non-relational database system, the database query in a format corresponding to the relational database system. The query is parsed with the at least one server computing device to find one or more components of the query directed to data stored in the non-relational database system. One or more components of the query directed to data stored in the non-relational database system are converted to one or more scans of the non-relational database system. Results from the query of the relational database system and results from the one or more scans of the non-relational database system are collected. The results from the query and the results of the one or more scans to a combined result are combined.
    Type: Grant
    Filed: August 24, 2018
    Date of Patent: May 26, 2020
    Assignee: salesforce.com
    Inventors: Jonathan Bruce, Eli Levine, Simon Toens, James Taylor
  • Patent number: 10666722
    Abstract: Disclosed are examples of systems, apparatus, methods, and computer program products for message delivery in a distributed server environment. In some implementations, a first dispatcher component can control an event stream. A first connection can be established between a first server and a client device. The first dispatcher component can identify a first event associated with the client device. A first message including an identifier can be generated. The first message can be provided to the client device. It can be determined that the first connection is unreliable. A second connection can be established with a second server responsive to receiving the identifier from the client device. A temporary second dispatcher component can be instantiated. The temporary second dispatcher component can identify a second event. A second message can be generated based on the second event. The second message can be provided to the client device.
    Type: Grant
    Filed: November 22, 2016
    Date of Patent: May 26, 2020
    Assignee: salesforce.com, inc.
    Inventors: Andy Lintner, Sivananda Reddy Thummala Abbigari, Hisham Ghazouli, Fang Wong, Naveen Jaini
  • Publication number: 20200159578
    Abstract: A first scheduler stores into a memory of a first virtual machine, a first block of jobs to be executed by the first virtual machine, the first block of jobs included in a table stored in a database associated with a server computer system. A second scheduler stores into a memory of a second virtual machine, a second block of jobs to be executed by the second virtual machine. The second block of jobs being included in the table and having a second block size equal to the first block size and including jobs not in the first block. From the first virtual machine memory, the first scheduler schedules one or more jobs in the first block for execution by the first virtual machine. From the second virtual machine memory, the second scheduler schedules one or more jobs in the second block for execution by the second virtual machine.
    Type: Application
    Filed: June 10, 2019
    Publication date: May 21, 2020
    Applicant: salesforce.com, inc.
    Inventors: Bhinav Sura, Dilip Devaraj, Rajavardhan Sarkapally, Kirankumar Kakanuru Gowdru
  • Publication number: 20200159917
    Abstract: A graph representation of a designated application may be created. The graph representation may include nodes that each represent a computer programming code statement associated with the designated application as well as edges that each represent a logical linkage between two or more computer programming code statements. A determination may be made as to whether the designated application constitutes an unacceptable security risk by comparing the designated graph representation with a plurality of comparison graph representations. When it is determined that the designated application constitutes an unacceptable security risk, a message may be transmitted to prevent the designated application from being executed.
    Type: Application
    Filed: November 16, 2018
    Publication date: May 21, 2020
    Applicant: Salesforce, com, Inc.
    Inventor: Michael Cervantez
  • Publication number: 20200159912
    Abstract: Computer programming code may be executed via look ahead execution in a virtual machine. The computer programming code may include a first instruction to retrieve data stored in an on-demand computing services environment and a second instruction to transmit the data to a recipient. The first instruction, the second instruction, and the data may be evaluated to determine whether the execution of the computer programming code constitutes acceptable use of the on-demand computing services environment. When it is determined that the execution of the computer programming code does not constitute acceptable use of the on-demand computing services environment, further execution of the computer programming code may be halted.
    Type: Application
    Filed: November 16, 2018
    Publication date: May 21, 2020
    Applicant: Salesforce.com, Inc.
    Inventor: Michael Cervantez
  • Patent number: 10657064
    Abstract: A request for retrieving a cached data object from a data object cache used to cached data objects retrieved from one or more primary data sources is received from a data object requester. Responsive to determining that the cached data object in the data object cache is expired, it is determined whether the cached data object in the data object cache is still within an extended time period. If the cached data object in the data object cache is still within an extended time period, it is determined whether the cached data object is free of a cache invalidity state change caused by a data change operation. If the cached data object is free of a cache invalidity state change, the cached data object is returned to the data object requester.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: May 19, 2020
    Assignee: salesforce.com. inc.
    Inventors: Sameer Khan, Francis James Leahy, III
  • Patent number: 10659433
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating protection of data in a database environment in an on-demand services environment according to one embodiment. In one embodiment and by way of example, a method includes detecting, by a first computing device in the database environment, sensitive data associated with a user having access to a second computing device, where the sensitive data is capable of being communicated within a geographic residency. The method may further include performing, by the first computing device, secured communication of the sensitive data between at least one of multiple computing devices and multiple application frames within the geographic residency, wherein the first computing device includes a proxy server that is locally situated within the geographic residency.
    Type: Grant
    Filed: November 30, 2016
    Date of Patent: May 19, 2020
    Assignee: salesforce.com, inc.
    Inventor: Nathan E Tableman
  • Patent number: 10659446
    Abstract: Techniques are disclosed relating to contextual authentication across different applications based on user communications. In some embodiments, a user is preauthenticated to certain actions on a second application based on the user's communication via a first application. The user's communication via a first application provides contextual information that may be used to preauthenticate a request to perform an action on the second application. Contextual information may include the user's communication itself and/or communications characteristics that are determined from the user's communications.
    Type: Grant
    Filed: June 13, 2017
    Date of Patent: May 19, 2020
    Assignee: salesforce.com, inc.
    Inventors: Josh Alexander, Seth Holloway, Evan Tyler Grim, Ian Glazer, William Charles Mortimore, Jr.
  • Patent number: D884731
    Type: Grant
    Filed: September 24, 2018
    Date of Patent: May 19, 2020
    Assignee: salesforce.com, inc.
    Inventors: David Klein, Victor Nikolai Carunungan Oliveros