Patents Assigned to salesforce.com, inc.
-
Publication number: 20080086447Abstract: In accordance with embodiments, there are provided mechanisms and methods for saving multiple rows together through an object relational mapping layer to a database. These mechanisms and methods for saving multiple rows together can enable embodiments to detect faults in the save operation(s) and recover. The ability of embodiments to detect faults in the save operation(s) and recover can enable embodiments to provide a robust forgiving published API that saves a set of rows together whenever possible.Type: ApplicationFiled: February 23, 2007Publication date: April 10, 2008Applicant: salesforce.com, inc.Inventors: Craig Weissman, Steven Tamm, Simon Fell, Simon Wong, Steve Fisher, Scott Hansma
-
Publication number: 20080086358Abstract: In accordance with embodiments, there are provided mechanisms and methods for selecting a synchronous or asynchronous process to determine a forecast. These mechanisms and methods for such synchronous/asynchronous process selection can enable embodiments to determine forecasts for multiple users (e.g. with hierarchical relationships, etc.) over an arbitrary time interval. The ability of embodiments to provide forecasts that involve such a large amount of data in an effective way can enable forecasting that was otherwise infeasible due to resource limitations.Type: ApplicationFiled: August 1, 2007Publication date: April 10, 2008Applicant: salesforce.com, inc.Inventors: Kedar Doshi, Mark Fischer, Evan Chou
-
Publication number: 20080086479Abstract: A database system includes servers configured to receive requests from user systems. Each server includes a local and a global store. Each local store stores the number of requests received by its server. The system includes a processor configured to receive the number of requests from servers. The processor is configured to determine the number of requests received by all of the servers, and send this number of requests to each server. The global store stores the number of requests received from the processor. A given server is configured to compare the number of requests received by the servers with a threshold number. If this number is greater than the threshold number, then the given server is configured to send a message to the user systems that the number of threshold requests has been exceeded and/or the given server will discontinue accepting requests.Type: ApplicationFiled: December 27, 2006Publication date: April 10, 2008Applicant: salesforce.com Inc.Inventors: Chris Fry, Peter Morreli, Craig Weissman
-
Publication number: 20080086514Abstract: Embodiments may recover from faults by forming a new set of rows by removing rows associated with faulting save operations and repeating the saving and forming operations using the new set of rows until a set of rows that can be saved from the known start state without fault is determined. When the subset of successful rows is found, embodiments are able to provide assurance that no side effects (i.e., code or operations triggered by saving of a data to a particular location) have been executed on behalf of any of the failed rows (side effects from custom PL/SOQL code included) by deferring execution of triggers until an entire set of rows can be saved and committed.Type: ApplicationFiled: February 23, 2007Publication date: April 10, 2008Applicant: salesforce.com, Inc.Inventors: Craig Weissman, Steven Tamm, Simon Fell, Simon Wong, Steve Fisher
-
Publication number: 20080086482Abstract: In accordance with embodiments, there are provided mechanisms and methods for allowing access to developed applications via a multi-tenant on-demand database service, in a controlled environment. These mechanisms and methods for providing such access can enable embodiments to provide additional control over the development process as well as the access of such developed applications. The ability of embodiments to provide such additional control may lead to an improved application development framework, etc.Type: ApplicationFiled: September 21, 2007Publication date: April 10, 2008Applicant: salesforce.com, inc.Inventor: Craig Weissman
-
Publication number: 20080082555Abstract: In accordance with embodiments, there are provided mechanisms and methods for synchronizing a server and an on-demand database service. These mechanisms and methods for synchronizing a server and an on-demand database service can enable embodiments to synchronize a larger amount of data. The ability of embodiments to provide such feature can enable more effective synchronization of a user-level sharing entity database with a multi-user on-demand database service.Type: ApplicationFiled: August 31, 2007Publication date: April 3, 2008Applicant: Salesforce.com, inc.Inventors: Greg Salmon, Chris Hopkins, Anant Verma, Jesse Collins, Craig Weissman
-
Publication number: 20080082586Abstract: In accordance with embodiments, there are provided mechanisms and methods for selecting amongst a plurality of processes to send a message (e.g. a message for updating an endpoint system, etc.). These mechanisms and methods for selecting amongst a plurality of processes to send a message can enable embodiments to utilize more than one queue for sending such message. The ability of embodiments to provide such multi-process feature can, in turn, prevent latency that typically accompanies a mounting number of messages.Type: ApplicationFiled: August 31, 2007Publication date: April 3, 2008Applicant: Salesforce.com, incInventors: Benji Jasik, Simon Fell
-
Publication number: 20080082504Abstract: In accordance with embodiments, there are provided mechanisms and methods for applying a group of instructions to metadata in the context of an on-demand database service. These mechanisms and methods for applying a group of instructions to metadata can enable embodiments that ensure that “all or none” of the operations corresponding to the grouped instructions are performed. The ability of embodiments to provide such feature can prevent a scenario where only a portion of a desired effect is accomplished which, in turn, may complicate any effort to undo the same.Type: ApplicationFiled: August 1, 2007Publication date: April 3, 2008Applicant: Salesforce.com, inc.Inventors: Benji Jasik, Simon Fell, Bill Eidson, Lexi Viripaeff
-
Publication number: 20080080689Abstract: In accordance with embodiments, there are provided mechanisms and methods for integrating a private branch exchange (PBX)-equipped client and an on-demand database service. These mechanisms and methods for integrating a PBX-equipped client and an on-demand database service can enable embodiments with additional infrastructure at the client that is better equipped to leverage the on-demand database service. The ability of embodiments to provide such client side infrastructure can enable additional enhanced services in conjunction with telephone calls, etc.Type: ApplicationFiled: August 31, 2007Publication date: April 3, 2008Applicant: Salesforce.com, incInventors: Marco S. Casalaina, Jim Dvorkin, Jason Winters, Bing Yang, Dararith Ourk, Rupert Chen
-
Publication number: 20080082540Abstract: In embodiments, methods and systems for controlling access to custom objects are provided. These techniques for controlling access to custom objects can enable embodiments to utilize a key for the protection of the security of data that is to remain private while not compromising efficiency of a query. The key for a requested custom object is identified and then used so that only an appropriate portion of a custom entity share table is searched to locate access information. It is then determined whether the user can access at least a portion of the custom object, and the appropriate and allowed data is sent to the user.Type: ApplicationFiled: October 2, 2007Publication date: April 3, 2008Applicant: salesforce.com, Inc.Inventors: Craig Weissman, Kevin Oliver, Benji Jasik, Kedar Doshi
-
Publication number: 20080082572Abstract: In embodiments, methods and systems for customizing a user interface to an on-demand database service. These mechanisms and methods for customizing a user interface to an on-demand database service can enable embodiments to provide a user interface designed by a tenant of the on-demand database service. The customization can include including third party content into the customized user interface, overriding a standard object, and providing content inline at a specified location.Type: ApplicationFiled: October 3, 2007Publication date: April 3, 2008Applicant: salesforce.com, Inc.Inventors: Alan Ballard, Doug Chasman, Eric Bezar, Mary Scotton
-
Publication number: 20080082986Abstract: In accordance with embodiments, there are provided mechanisms and methods for providing access to an external service via an application services platform, utilizing an application program interface (API). These mechanisms and methods for providing access to an external service via art application services platform can enable embodiments to provide an effective way of allowing access to such external service without necessarily forcing access to the external service separately with respect to the application services platform. The ability of embodiments to provide such effective technique can enable the integration of an external service with an application services platform, thus allowing access to the external service in a more time effective manner.Type: ApplicationFiled: July 16, 2007Publication date: April 3, 2008Applicant: salesforce.com, inc.Inventors: Manoj Cheenath, Doug Chasman
-
Publication number: 20080077566Abstract: In accordance with embodiments, there are provided mechanisms and methods for querying data relationships over a network. These mechanisms and methods for querying data relationships over a network can enable embodiments to provide the capability to query for more than a single entity at a time. The ability of embodiments to query for more than a single entity at a time can enable improved network throughput, faster response time and more efficient utilization of resources.Type: ApplicationFiled: September 22, 2006Publication date: March 27, 2008Applicant: Salesforce.com, inc.Inventors: Simon Z. Fell, Benji H. Jasik, Sven E. Mawson, Craig Weissman
-
Publication number: 20080010243Abstract: Mechanisms and methods for pushing data to a plurality of devices of a plurality of organizations are provided. Queries are handled in bulk for a group of users of an organization or the entire organization, and limited results are sent to a middle tier server between the database system and the user devices. These mechanisms and methods for pushing data to a plurality of devices enable an efficient and transparent transfer of data to user devices. This efficient and transparent transfer of data can enable mobile devices of many organizations to seamlessly have the data that is required to perform business.Type: ApplicationFiled: June 1, 2007Publication date: January 10, 2008Applicant: salesforce.com, Inc.Inventors: Craig Weissman, William Eidson, Erik Forsberg, Deepak Kothule
-
Publication number: 20070288510Abstract: A cache server is provided in a network for storing Java objects for retrieval by one or multiple application servers. Application server(s) are configured to request an object from the cache server, rather than requesting the Java object directly from a database, so as to reduce processing load on the database and free up database resources. Responsive to a request for a Java object from an application server, e.g., in an HTTP request, the cache server determines if the object is stored in memory and if so, serializes the requested object and sends the serialized object to the requesting server, e.g., in an HTTP response. The requesting server then deserializes the Java object. If the object is not stored in memory, the cache server instantiates the object (typically by requesting the object from the database), serializes the instantiated object and sends it to the requesting server. Cache coherency methods are also provided.Type: ApplicationFiled: March 30, 2007Publication date: December 13, 2007Applicant: salesforce.com, inc.Inventors: Frank Dominguez, Dave Moellenhoff, Eric Chan
-
Publication number: 20070130130Abstract: 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: ApplicationFiled: October 23, 2006Publication date: June 7, 2007Applicant: salesforce.com, Inc.Inventors: Eric Chan, Craig Weissman, Paul Nakada, Dave Moellenhoff, Todd McKinnon
-
Publication number: 20070130137Abstract: Search systems and methods for searching structured data and enhancing the relevancy of search results provided to a requesting user or application. Enhanced search results are provided by searching a cache of a users most recently used items to eliminate or reduce search indexing latency. Also, more relevant search results are provided by re-ranking results based on use history, data security models and/or hierarchical user role models. Further, enhanced search results are provided by including user information in the search index.Type: ApplicationFiled: December 2, 2005Publication date: June 7, 2007Applicant: salesforce.com, inc.Inventors: Kevin Oliver, Scott Hansma, Craig Weissman, Paul Nakada, Jeanine Walters
-
Publication number: 20070124276Abstract: In embodiments, methods and systems for improving a query in a database system are provided. These method and system embodiments can enable greater contextual knowledge about the types and use of data in tables underlying a relational database to be employed to improve query efficiency. By employing contextual information, embodiments can provide improved queries and/or make recommendations to a query optimizer of a database system to improve its operation based upon knowledge of the data and/or application gathered. Embodiments can be useful in improving query performance in multi-tenant database systems.Type: ApplicationFiled: November 10, 2006Publication date: May 31, 2007Applicant: salesforce.com, Inc.Inventors: Craig Weissman, Dave Moellenhoff, Simon Wong
-
Patent number: 7209929Abstract: A cache server is provided in a network for storing Java objects for retrieval by one or multiple application servers. Application server(s) are configured to request an object from the cache server, rather than requesting the Java object directly from a database, so as to reduce processing load on the database and free up database resources. Responsive to a request for a Java object from an application server, e.g., in an HTTP request, the cache server determines if the object is stored in memory and if so, serializes the requested object and sends the serialized object to the requesting server, e.g., in an HTTP response. The requesting server then deserializes the Java object. If the object is not stored in memory, the cache server instantiates the object (typically by requesting the object from the database), serializes the instantiated object and sends it to the requesting server. Cache coherency methods are also provided.Type: GrantFiled: April 17, 2003Date of Patent: April 24, 2007Assignee: salesforce.com, inc.Inventors: Frank Dominguez, Jr., Dave Moellenhoff, Eric Chan
-
Publication number: 20070088741Abstract: In accordance with embodiments, there are provided mechanisms and methods for creating, exporting, viewing and testing, and importing custom applications in a multi-tenant database environment. These mechanisms and methods can enable embodiments to provide a vehicle for sharing applications across organizational boundaries. The ability to share applications across organizational boundaries can enable tenants in a multi-tenant database system, for example, to easily and efficiently import and export, and thus share, applications with other tenants in the multi-tenant environment.Type: ApplicationFiled: September 8, 2006Publication date: April 19, 2007Applicant: salesforce.com, inc.Inventors: David Brooks, Lewis Tucker, Benji Jasik, Timothy Mason, Eric Bezar, Simon Wong, Douglas Chasman, Tien Tzuo, Scott Hansma, Adam Gross, Steven Tamm