Patents Assigned to salesforce.com, inc.
  • Patent number: 10025951
    Abstract: An encrypted search index is disclosed. For instance, an exemplary system may include a search index stored on disk with customer information stored therein, the search index files having a term dictionary or a term index type file having internal structure which allows a portion of the individual search index file to be updated, encrypted, and/or decrypted without affecting the internal structure of the individual search index file; a file input/output (IO) layer to encrypt the customer information being written into the individual search index file and to decrypt the customer information being read from the individual search index file; and a query interface to execute the operation against the customer information stored in the memory in its decrypted form.
    Type: Grant
    Filed: November 4, 2016
    Date of Patent: July 17, 2018
    Assignee: salesforce.com, inc.
    Inventors: Mukul Raj Kumar, Prasad Peddada
  • Patent number: 10027735
    Abstract: In accordance with embodiments, there are provided mechanisms and methods for facilitating user-controlled mapping of sites and synchronization of their content. In one embodiment and by way of example, a method includes receiving a first generation request for generating a site template in a first site network. The first generation request is received at a first computing device. The method may further include generating the site template, generating a child site based on the site template, and mapping the child site to one or more of a parent site and one or more child sites within the first site network.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: July 17, 2018
    Assignee: salesforce.com, inc.
    Inventors: Philip Norman Calvin, Sonali Agrawal, Eric Dorgelo, Shelby Hubick
  • Patent number: 10025547
    Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for implementing frame aggregation with screen sharing including, for example, means for receiving, at a server, a stream of delta frames from a publishing client as part of a screen sharing session with one or more viewing clients; establishing a FIFO buffer for each of the respective one or more viewing clients on 1:1 basis; queuing a copy of the stream of delta frames into each of the FIFO buffers corresponding to the one or more viewing clients, wherein the stream of delta frames are transmitted from the respective FIFO buffers to the corresponding one or more client viewers; monitoring each of the respective FIFO buffers for each of the one or more viewing clients to determine if two or more delta frames are concurrently queued in any single one of the respective FIFO buffers at any given time; aggregating the two or more delta frames into a single aggregated delta frame; re-queuing the aggregated delta frame;
    Type: Grant
    Filed: November 10, 2015
    Date of Patent: July 17, 2018
    Assignee: salesforce.com, inc.
    Inventor: Barry Spencer
  • Patent number: 10021193
    Abstract: In accordance with embodiments disclosed herein, there are provided methods, systems, and apparatuses for implementing a session table framework including, for example, receiving a request at a host organization from a client device, in which such a request specifies an application available via the host organization; generating a user session unique to the client device in a memory of the host organization; creating a user session data table within the user session; processing the request via the application specified by the request on behalf of the client device; updating the user session data table based on the processing of the request; and transmitting a response to the client device responsive to the request.
    Type: Grant
    Filed: September 20, 2016
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventors: John Duff, Manu Gurudatha, Ashik Uzzaman
  • Patent number: 10019297
    Abstract: Systems and methods for implementing bulk handling in asynchronous processing are described. For example, an exemplary system includes a processor and a memory to execute instructions at the system; a broker to enqueue received messages; a push connection from the broker to a thread, in which the broker is to push an initial message to the thread for processing; a pull connection from the thread to the broker, in which the thread is to request one or more additional messages for bulk processing with the initial message from the broker; a query interface to issue a database query from the thread to a data store, the database query specifying the initial message and the one or more additional messages as a set of messages to obtain a lock for the set of messages; and a message processing engine to handle the set of messages in bulk based on whether the lock for the set of messages is obtained.
    Type: Grant
    Filed: June 16, 2014
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventors: Marco Helmich, Ananya Yadav, Praveen Murugesan, Vijayanth Devadhar
  • Patent number: 10019383
    Abstract: Disclosed technology includes access to rotatable-key-encrypted content in a multi-tier disk partition system, with a first-tier-track, and initializing a second-tier-track accessible using the same block designator. A stack of bit vectors, stored in SSD memory, represents tier-tracks and a bit flag indicates whether a respective tier-track holds currently-active data or another bit vector needs to be consulted for access to a predecessor of the tier-track. Copying forward of data from the first-tier-track to the second-tier-track, as-scheduled or in response to an authorized write access to the second-tier-track includes, prior to completion, responding to an access request by providing data from the second-tier-track that has been copied forward and following mappings associated with the flag sets to provide data from the first-tier-track.
    Type: Grant
    Filed: November 30, 2016
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventor: Mark Manasse
  • Patent number: 10019479
    Abstract: Techniques for providing polymorphic query requests. A request is received that has at least a database query. The database query comprises at least an expression using a polymorphic relationship. The request is processed utilizing the polymorphic relationship. A user-readable result is provided for the query where the result is defined by at least the polymorphic relationship.
    Type: Grant
    Filed: August 1, 2016
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventor: Seth John White
  • Patent number: 10021089
    Abstract: Mechanisms and techniques for customized user validation. A login attempt is received from a remote electronic device with one or more computing devices that provide access to one or more resources. The login attempt is analyzed to determine a profile from a plurality of profiles corresponding to the login attempt. The one or more computing devices support the plurality profiles with each profile having a corresponding flow. The flow corresponding to the profile is performed prior to allowing continuation of the login attempt. The login attempt is continued, via the one or more computing devices, after the flow corresponding to the profile is completed. Access is granted to the one or more resources, via the one or more computing devices, in response to a successful completion of the login attempt.
    Type: Grant
    Filed: April 9, 2015
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventors: William Charles Mortimore, Jr., Sergio Isaac Koren, Paul Anthony Mason, Alan Vangpat
  • Patent number: 10021205
    Abstract: A media routing server is described. The media routing server may be configured to receive media information from a source computing system. The media routing server may be configured to scale the media information based on characteristics of one or more destination computing systems. Each scaled media information is unique to the characteristics of each destination computing system. The media information may comprise a plurality of objects. Priority information and sequencing information may be assigned to the objects by the media routing server. The media routing server may be configured to transmit the scaled media information to each destination computing system based on at least the priority information and the sequencing information.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: July 10, 2018
    Assignee: salesforce.com, inc.
    Inventor: Barry Spencer
  • Publication number: 20180192274
    Abstract: Systems and methods are provided in which an application at each user device monitors locations of user devices. A location of a first user device within a facility and identification information associated with a user who is associated with the first user device can be determined and a floorplan can be generated and then caused to displayed via a user interface of a second user device. The floorplan includes an icon that represents the location of the first user device.
    Type: Application
    Filed: February 14, 2018
    Publication date: July 5, 2018
    Applicant: salesforce.com, inc.
    Inventors: Jonathon Christopher Newby, Richard W. Spencer, Corinthe Jennelle Bailey
  • Patent number: 10013501
    Abstract: Techniques are disclosed relating to caching web application data. In some embodiments, a computing system maintains a multi-tenant database and an in-memory cache for the database. In some embodiments, the computing system is configured to store data in an entry in response to a store request and retrieve data in response to a read request. In various embodiments, data cached by one tenant is not visible to other tenants. The cache may be partitioned and each partition may have an assigned capacity. The computing system may be configured to evict cached data based on capacity thresholds, least-recently-used information, time-to-live information, amount of data in an entry, etc. The cache may indicate misses when requested data is not present. Various disclosed techniques may improve web application performance while maintaining privacy between tenants.
    Type: Grant
    Filed: October 26, 2015
    Date of Patent: July 3, 2018
    Assignee: salesforce.com, inc.
    Inventors: Barathkumar Sundaravaradan, Christopher James Wall, Lawrence Thomas Lopez, Paul Sydell, Sreeram Duvur, Vijayanth Devadhar
  • Patent number: 10013278
    Abstract: In accordance with embodiments disclosed herein, there are provided mechanisms and methods for batch processing in an on-demand service environment. For example, in one embodiment, mechanisms include receiving a processing request for a multi-tenant database, in which the processing request specifies processing logic and a processing target group within the multi-tenant database. Such an embodiment further includes dividing or chunking the processing target group into a plurality of processing target sub-groups, queuing the processing request with a batch processing queue for the multi-tenant database among a plurality of previously queued processing requests, and releasing each of the plurality of processing target sub-groups for processing in the multi-tenant database via the processing logic at one or more times specified by the batch processing queue.
    Type: Grant
    Filed: May 27, 2014
    Date of Patent: July 3, 2018
    Assignee: salesforce.com, inc.
    Inventors: Gregory D. Fee, William J. Gallager
  • Patent number: 10013294
    Abstract: A messaging system implements messaging among application servers and databases, utilizing other servers that implement messaging brokers. A large flood of incoming messages can bring down messaging brokers by overflowing the message queues, negatively impacting performance of the overall system. This disclosure in some embodiments detects and identifies “flooders” in a timely manner and isolates their message traffic to dedicated queues to avoid impacting other system users. Subsequently, a preferred system de-allocates the queues and returns the messaging system to normal operation when flooding conditions subside, and “sweeps” up any remaining orphan messages.
    Type: Grant
    Filed: March 22, 2017
    Date of Patent: July 3, 2018
    Assignee: SALESFORCE.COM, INC.
    Inventors: Hui Lam Kwong, Xiaodan Wang, Vipul Modani, John B. Buisson
  • Publication number: 20180181270
    Abstract: Disclosed herein are system, method, and computer-readable storage medium embodiments for ordered macro building. An embodiment may include operations of displaying, via a user interface, a first user interface object and a second user interface object, populating a macro building pane comprising a first macro building object and a second macro building object, in response to the first user interface object receiving a first interaction and in response to the second user interface object receiving a second interaction, and compiling a macro with at least the first interaction and the second interaction, the first interaction being with a first application and the second interaction being with a second application.
    Type: Application
    Filed: October 16, 2017
    Publication date: June 28, 2018
    Applicant: salesforce.com, inc.
    Inventors: Kristen Noriko MURAMOTO, Clément Jacques Antoine Tussiot, Orjan Nils Kjellberg
  • Patent number: 10007607
    Abstract: To deliver up-to-date, coherent user data to applications upon request, the disclosed technology includes systems and methods for caching data and metadata after it has been synchronously loaded—for future retrieval with a page load time close to zero milliseconds. To provide this experience, data needs to be stored as locally to a user as possible, in the cache on the local device or in an edge cache located geographically nearby, for use in responding to requests. Applications which maintain caches of API results can be notified of their invalidation, and can detect the invalidation, propagate the invalidation to any further client tiers with the appropriate derivative type mapping, and refresh their cached values so that clients need not synchronously make the API requests again—ensuring that the client has access to the most up-to-date copy of data as inexpensively as possible—in terms of bandwidth and latency.
    Type: Grant
    Filed: May 31, 2016
    Date of Patent: June 26, 2018
    Assignee: salesforce.com, inc.
    Inventor: Richard Perry Pack, III
  • Patent number: 10007576
    Abstract: In accordance with embodiments, there are provided techniques for implementing batch processing in a multi-tenant database system. These techniques for implementing batch processing in a multi-tenant database system may enable embodiments to provide great flexibility to a tenant of the architecture to perform desired functions on content of the database while allowing the owner of the architecture schedule the processing of the functions on the content.
    Type: Grant
    Filed: February 29, 2016
    Date of Patent: June 26, 2018
    Assignee: salesforce.com, inc.
    Inventors: Scott Yancey, Andrew Smith, Andrew Waite, Craig Weissman
  • Patent number: 10007956
    Abstract: The technology disclosed describes systems and methods for delivering software trial demonstrations that are customized, with features identified as interesting to a software demonstration candidate, by mining biographical and behavioral data of the candidate. The technology further discloses systems and methods for the customization of trial demonstrations with software usage stories that reflect a software demonstration candidate's interests, identified by analyzing mined biographical and behavioral data about the candidate.
    Type: Grant
    Filed: October 30, 2017
    Date of Patent: June 26, 2018
    Assignee: salesforce.com, Inc.
    Inventors: Daniel Everett Jemiolo, Beau David Cronin
  • Patent number: 10001983
    Abstract: Methods are disclosed for dynamic node allocation for a server system that can automatically heal on failure—minimizing the need for static configuration—dynamically adjusting server resources to match load, and minimize end user wait times. The disclosed methods dynamically allocate nodes to increase capacity for a platform that accepts data queries. Additionally disclosed is a system for rolling version update deployment: workers maintain org lists of org-task-queues that they service; org-affinities between the workers and the org-task-queues require the workers to have access to local copies of immutable data sets to service org-tasks from the org-task-queues of the orgs that they service. A leader running on a worker implements a healing and balancing service that maintains worker redundancy, manages the workers' org-affinities to accumulate orgs on their respective org-lists. The leader implements messaging to the workers to update to a new software version and monitors completion of updates.
    Type: Grant
    Filed: July 27, 2016
    Date of Patent: June 19, 2018
    Assignee: salesforce.com, Inc.
    Inventors: Saptarshi Roy, Daniel C. Silver, Donovan Schneider, Medha Pradhan, Ryan Lamore, Naveen Purushothama Rao, Nicholas Geh, Srirama Koneru
  • Publication number: 20180165297
    Abstract: Systems, methods, and computer-readable media for providing/obtaining database visualization updates in real-time are described. In embodiments, a user system may obtain a user input indicating a selection of a synchronization (sync) option of a set of sync options. Each sync option may indicate a desired timing for obtaining updated data for a visual representation of a dataset by a database system. The user system may send a request to obtain updated data for the visual representation of the dataset in accordance with the selected sync option. In embodiments, the selected sync option may include a real-time sync option, which when selected, the user system may obtain the updated data as the dataset is updated at the database system without sending additional requests for updates. Other embodiments may be described and/or claimed.
    Type: Application
    Filed: December 9, 2016
    Publication date: June 14, 2018
    Applicant: salesforce.com, inc.
    Inventors: Santhosh Kumar KUCHOOR, Rafael SANTANDER
  • Patent number: 9996955
    Abstract: Systems, device and techniques are disclosed for analytics visualization. A selection of a data set may be received. A first visualization associated with the data set may be generated. A selection of a first data subset of the data set may be received. A second visualization associated with the first data subset of the data set may be generated. The second visualization may be visually linked to the first visualization with a first visual link. A selection of a second data subset of the data set may be received. A third visualization associated with the second data subset of the data set may be generated. The third visualization may be visually linked to the first visualization with a second visual link and displayed simultaneously with the second visualization.
    Type: Grant
    Filed: August 27, 2015
    Date of Patent: June 12, 2018
    Assignee: Salesforce.com, Inc
    Inventor: Luke Ball