Abstract: The present invention provides techniques for managing process space on a multi-tenant database system that features a method that provides to multiple users of two or more organizations, over a network, access to information stored in a database repository shared by the two or more organizations. The database repository implements security protocols to restrict a set of first users to a first sub-portion of the information. The set of first users belongs to one of the two or more organizations. The first sub-portion of the information is different from a second sub-portion accessible by users from another organization. Access of the information by the multiple users is monitored. A first processing space for the set of first users is generated in response to the access of the database repository. The first processing space is distinct from a second processing space for the users from the other organization.
Type:
Grant
Filed:
April 16, 2010
Date of Patent:
December 31, 2013
Assignee:
salesforce.com, inc.
Inventors:
Craig Weissman, Dave Moellenhoff, Simon Wong, Paul Nakada
Abstract: A mobile device test framework is used in combination with client controllers and device controllers so that a single mobile device API test can be used with mobile devices having different operating system platforms. The client controllers can provide information specific to the client and the device controllers can provide information needed to apply the test to each of the mobile device platforms. The test framework can navigate through the controls of the mobile device GUIs and input information. The test framework can then check that the text and images displayed by the mobile devices match the expected information.
Abstract: Systems and methods for operating a database using distributed memory and set operations, and for evaluating graphs stored in the database. Any system may be represented as a graph structure having nodes and edges. The graph structure is stored in a distributed memory system using a key/value schema wherein each node is stored as a key and a set of neighbor nodes is stored as the corresponding value. A short path from one node to another may be determined by traversing the graph in stages, moving outward from each node in stages until common midpoint nodes are found indicating connections between the nodes.
Abstract: Network security is enhanced in a multi-tenant database network environment using a query plan detection module to continually poll the database system to locate and raise an alert for suspect query plans. Security also can be enhanced using a firewall system sitting between the application servers and the client systems that records user and organization information for each client request received, compares this with information included in a response from an application server, and verifies that the response is being sent to the appropriate user. Security also can be enhanced using a client-side firewall system with logic executing on the client system that verifies whether a response from an application server is being sent to the appropriate user system by comparing user and organization id information stored at the client with similar information in the response.
Type:
Grant
Filed:
November 1, 2011
Date of Patent:
December 31, 2013
Assignee:
salesforce.com, inc.
Inventors:
Eric Chan, Craig Weissman, Paul Nakada, Dave Moellenhoff, Todd McKinnon
Abstract: In accordance with embodiments, there are provided techniques for processing group membership data in a multi-tenant database system. These techniques for processing group membership data in a multi-tenant database system may enable embodiments to provide great flexibility to a tenant of the architecture to select the content that may be perceived by the tenant users while allowing the owner of the architecture control over the content.
Type:
Application
Filed:
June 12, 2013
Publication date:
December 26, 2013
Applicant:
salesforce.com, inc.
Inventors:
Scott Yancey, Kedar Doshi, Yongsheng Wu
Abstract: Techniques for providing feed-based case management on an online social network. A user interface that includes a publisher and an information feed is provided. Information associated with a record is received and the record is updated in a database system. A feed item associated with the database system update is generated and provided in the information feed. The feed item includes one or more actionable selections providing a reference to the publisher. Selection of one of the one or more actionable selections causes the publisher to be operable to receive further information associated with the record. The record is capable of being updated based on the further information. In some implementations, the record is a case and the user interface serves as a single interface for all interactions required in solving the case.
Type:
Application
Filed:
August 30, 2013
Publication date:
December 26, 2013
Applicant:
salesforce.com, inc.
Inventors:
Scott D. Beechuk, Orjan N. Kjellberg, Larry P.G. Robinson, Michael Ramsey, Arvind Krishnan, Jyoti M. Khubchandani, Jill Blue Lin, Mustafa O. Al-Alami, Jason A. Ellis, Christopher A. Myers, Vahn K. Phan, Chitra Gulabrani
Abstract: Disclosed are methods, apparatus, systems, and computer-readable storage media for representing a portion of a user interface of a web browser as a web address. In some implementations, a computing device receives a request to encode as a web address a portion of a user interface provided in a web browser at the computing device. The computing device then generates a web address to identify content of the portion of the user interface. The portion of the user interface represented by the web address includes a primary user interface component and one or more secondary user interface components associated with the primary user interface component.
Abstract: In accordance with embodiments, there are provided mechanisms and methods for publishing non-malicious third party content to a data feed. These mechanisms and methods for publishing non-malicious third party content to a data feed can provide analysis of third party content requested to be published to a data feed, which can be used to safeguard against the publication of malicious content to the data feed.
Type:
Application
Filed:
May 6, 2013
Publication date:
December 26, 2013
Applicant:
salesforce.com, inc
Inventors:
Shozub Qureshi, Man Lung Hui, Carter Thaxton
Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses for accepting late joiners with screen sharing including, for example, means for receiving, at a server, a key frame from a publishing client sharing its screen, the key frame defining the screen of the publishing client in its entirety at the beginning of a screen sharing session with one or more viewing clients; transmitting the key frame to the one or more viewing clients; iteratively processing each of a plurality of delta frames from the publishing client specifying changes to the screen of the publishing client, wherein the iterative processing includes: (i) receiving each delta frame, (ii) updating an aggregated current key frame with the delta frame received, and (iii) sending the delta frame to the one or more viewing clients.
Abstract: The technology disclosed relates to connecting a user's location via a location mediation server with indications of interest in products and product groups and in real time. An application executing on a user's mobile computing device supplies a location. The location mediation server works with the application, using various allocations of effort, to match current locations to sales environments that set the product(s) of interest and, in some implementations, to product exemplars outside sales environments.
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;
Abstract: Systems and methods are provided for creating indices and loading key-value pairs for NoSQL databases. Attributes are created that correspond to records in a NoSQL database based on corresponding record fields. An index is created based on the attributes. A memory is loaded with attributes that correspond to a subset of the index as keys in a key-value pair and identifiers that correspond to records that correspond to the attributes as values in the key-value pair. The attributes that correspond to the subset of the index are sorted in the memory. Any duplicate attributes are identified from the sorted attributes in the memory. Any identifiers that correspond to any duplicate attributes also identify records in the NoSQL database to be evaluated as potential duplicate records.
Abstract: A method for identifying errors in code is provided. The method may include rebuilding object dependencies from a heap dump, calculating memory usage of each object, identifying top consumers of memory by object class, analyzing how much memory each class consumes with respect to how much other classes consume, building a corpus of data that may be used in a progressive machine learning algorithm, and identifying suspect classes. Additionally, the suspect classes and the memory usage statistics of the suspect classes may then be used as an identifying signature of the associated out of memory error. The identifying signature of the associated out of memory error may then be used to compare with the signatures of other out of memory occurrences for identifying duplicate error occurrences.
Abstract: Systems and methods are provided for semi-synchronously exporting data. A web server creates an export record in response to receiving a data request from a client computer. The web server sends a token to the client computer, wherein receipt of the token enables the client computer to be used for other purposes while waiting for receipt of requested data. At least one of multiple batch processing servers processes the data request in response to accessing the export record. At least one of the multiple batch processing servers updates the export record to reflect the processing of the data request. The web server exports the processed data request to the client computer in response to identifying an update of the export record.
Abstract: In accordance with embodiments, there are provided mechanisms and methods for publishing an application-independent format event. These mechanisms and methods for publishing an application-independent format event can enable optimized data communication, improved scalability, increased operational efficiency, etc.
Abstract: Methods and apparatus are provided for providing customized domain messages. A customized message for one of a plurality of domains is received at one of a plurality of servers of a content delivery network. A request is received from a user device for content for the one of the plurality of domains at the one of the plurality of servers. The customized message is provided by the one of the plurality of servers to the user device in response to the request when the one of the plurality of domains is unavailable.
Abstract: Disclosed are methods, apparatus, systems, and computer readable storage media for publishing a marketing campaign on an online social network. A CRM server accesses a marketing campaign record in a database and transmits marketing campaign data to be published on an online social network. The CRM server also receives data related to users interacting with the published marketing campaign. The CRM server can store the user-related data. In some implementations, the user-related data can also be analyzed.
Abstract: More efficient querying of a multi-tenant database using dynamic tuning of database indices. A layer of meta-data associates data items with tenants, e.g., via tags, and the meta-data is used to optimize searches by channeling processing resources during a query to only those pieces of data bearing the relevant tenant's unique tag.
Type:
Grant
Filed:
September 14, 2012
Date of Patent:
December 10, 2013
Assignee:
salesforce.com, inc.
Inventors:
Craig Weissman, Dave Moellenhoff, Simon Wong, Paul Nakada
Abstract: Methods and systems for secure client-side communication between multiple domains is provided. Such methods and systems can provide for decreased communication latency particularly effective for dynamic multi-domain and/or multi-tenant environments while allowing for granular security or specific security of messages and operations with regard to users, user sessions, groups, organizations, permissions sets, applications, or any other logical delineation. Such methods and systems may involve a variety of security components, for example, at least one set of instructions including a plurality of defined instruction to be utilized by users of the set of instructions to communicate, and cryptographic construct data in order to verify the data integrity and the authenticity of messages sent and received using the secure client-side communication between multiple domains.
Abstract: Systems and methods for installing and upgrading application packages to an application platform of an on-demand database service. In some embodiments, application packages are uploaded to a directory by developers for installation by subscribers. Some embodiments enable a developer to send identification information to a subscriber to allow that user to access and install an application package created by the developer. If the developer changes the original source package, the subscriber may pull into its organization the change(s) made by the publisher while preserving any data rows the subscriber had created since first importing the package. One or more flags may be set in the package definition to determine whether and to what extent customizations to a package may be made and upgraded by the subscriber and/or developer.
Type:
Grant
Filed:
October 3, 2007
Date of Patent:
December 3, 2013
Assignee:
salesforce.com, inc.
Inventors:
Lars Hofhansl, Nathan Jensen-Horne, Scott Hansma, Steven Tamm, Craig Weissman