Salesforce.com Patent Applications

SPACE-EFFICIENT STORAGE OF ENCRYPTED DATA

Granted: July 20, 2017
Application Number: 20170206362
An encryption platform may identify language characters in database fields and determine which of multiple encoding schemes more efficiently encodes the language characters. The encryption platform may use the selected encoding scheme to encode plaintext into a byte array and then encrypt the byte array into ciphertext. The encryption platform may assign encoding flags to the ciphertext identifying the encoding scheme used for encoding the plaintext. The encryption platform then may use…

SYSTEMS AND METHODS FOR FLEXIBLE FOLLOW SEMANTICS FOR BUSINESS OBJECTS

Granted: July 20, 2017
Application Number: 20170206613
The technology disclosed describes systems and methods for generating and utilizing flexible follow semantics for business objects in an enterprise social network—efficiently optimizing the follow semantics for the business objects using follow-models designed to optimize feeds for relevance and usefulness, in a multi-tenant environment. The technology disclosed further relates to managing digital data for a plurality of tenants to software instances, each tenant of the plurality of…

Detecting and Managing Flooding of Multi-tenant Message Queues

Granted: July 6, 2017
Application Number: 20170192828
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.…

SYSTEMS AND METHODS FOR EXPORTING, PUBLISHING, BROWSING AND INSTALLING ON-DEMAND APPLICATIONS IN A MULTI-TENANT DATABASE ENVIRONMENT

Granted: June 22, 2017
Application Number: 20170177326
In accordance with embodiments, there are provided mechanisms and methods for creating, exporting, viewing and testing, and importing custom applications in a multitenant 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…

System, method and computer program product delivering mobilized data object to mobile device over multiplexed network

Granted: June 22, 2017
Application Number: 20170177382
In accordance with embodiments, there are provided mechanisms and methods for receiving a command to define at least one mobilized object that implements a view for at least one mobile device of data retrieved from an on-demand service. These mechanisms and methods further include generating the mobilized object including the at least one instruction for defining the view for the at least one mobile device, and pushing the mobilized object to the at least one mobile device.

CLOUD-BASED SECURITY PROFILING, THREAT ANALYSIS AND INTELLIGENCE

Granted: June 22, 2017
Application Number: 20170180410
An automated software vulnerability scanning and notification system and method provide an automated detection and notification regarding a software vulnerability. The operation of the system and the method includes obtaining software vulnerability information, periodically scanning a web application and a corresponding web server associated with an operator, and evaluating the periodic scans relative to the software vulnerability information to detect software vulnerabilities. Upon…

SYSTEM AND METHOD FOR SYNCHRONIZING DATA OBJECTS IN A CLOUD BASED SOCIAL NETWORKING ENVIRONMENT

Granted: June 22, 2017
Application Number: 20170180475
Methods and systems are provided for synchronizing and sharing data objects. The method includes configuring a set of permissions, within a collaboration site, to define a sharing configuration to allow sharing of a set of data objects between a group of computing devices comprising a first computing device and second computing devices; updating a data object at the first computing device; receiving an updated data object at the collaboration site from a sync client of the first…

SYSTEM HAVING IN-MEMORY BUFFER SERVICE, TEMPORARY EVENTS FILE STORAGE SYSTEM AND EVENTS FILE UPLOADER SERVICE

Granted: June 15, 2017
Application Number: 20170168880
Computer-implemented methods and systems are provided for writing events to a data store. An application server generates events, the data store that stores the events, and a temporary events file storage system (TEFSS) temporarily stores groups of events as events files. When events are unable to be written directly to the data store, an indirect events writer is invoked that includes event capture threads each being configured to generate a particular events file, and write it to the…

PROVIDING FEATURES IN A DATABASE SYSTEM ENVIRONMENT

Granted: June 15, 2017
Application Number: 20170169060
A system and method for providing features in a database system. In one embodiment, a method includes receiving, from a user, a request for a feature, where the feature is a functionality of the database system. The method further includes upgrading the database system, where the upgrading includes one or more provisioning steps that are based on the request from the user.

ROW LEVEL SECURITY INTEGRATION OF ANALYTICAL DATA STORE WITH CLOUD ARCHITECTURE

Granted: June 8, 2017
Application Number: 20170161515
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…

FALSE POSITIVE DETECTION REDUCTION SYSTEM FOR NETWORK-BASED ATTACKS

Granted: June 8, 2017
Application Number: 20170163663
A system detects a security attack through a network-based application. The system receives a runtime request for invocation of a function and dynamically determines if the request for invocation of the function is associated with a cross-site scripting attack. In response to determine the function is associated with a cross-site scripting attack, the system stores information associated with the request, which is used for determining if the request is a legitimate request or a…

APPLICATION AWARE VIRTUAL PATCHING

Granted: June 1, 2017
Application Number: 20170153882
The technology disclosed relates to thwarting attempts in between software releases to take advantage of security holes in web applications. A virtual patch is a data object comprising an identifier that indicates a relevant local context for the patch and may be created while the application is running. One or more conditions included in the patch are evaluated using data from a service request or from the local context. A patch directive specifies an action to perform when the one or…

COMPUTER IMPLEMENTED METHODS AND APPARATUS FOR RECOMMENDING EVENTS

Granted: June 1, 2017
Application Number: 20170154048
Disclosed are methods, apparatus, systems, and computer-readable storage media for recommending an event to a user. In some implementations, one or more servers receive information identifying a plurality of events. The one or more servers store data of the plurality of events in a first one or more data tables having an action field, an item field, and a user field, and analyze the data of the first one or more data tables to generate one or more pairs, each pair including information…

SYSTEM AND METHOD FOR PROCESSING METADATA TO DETERMINE AN OBJECT SEQUENCE

Granted: June 1, 2017
Application Number: 20170154123
In one embodiment, a computer-implemented method executable by a computer to process metadata of a data source is provided. The method includes: processing, by a processor of the computer, the metadata to determine a graph of nodes and edges; converting, by the processor of the computer, the graph from a cyclic graph to an acyclic graph; converting, by the processor of the computer, the acyclic graph to a listing; performing, by the processor of the computer, a topological sort on the…

SYSTEM AND METHOD FOR MONITORING AND DETECTING FAULTY STORAGE DEVICES

Granted: May 25, 2017
Application Number: 20170147425
In an enterprise environment that includes multiple data centers each having a number of first servers, computer-implemented methods and systems are provided for detecting faulty storage device(s) that are implemented as redundant array of independent disks (RAID) in conjunction with each of the first servers. Each first server monitors lower-level health metrics (LHMs) for each of the storage devices that characterize read and write activity of each storage device over a period of time.…

NEURAL NETWORK COMBINED IMAGE AND TEXT EVALUATOR AND CLASSIFIER

Granted: May 18, 2017
Application Number: 20170140240
Deep learning is applied to combined image and text analysis of messages that include images and text. A convolutional neural network is trained against the images and a recurrent neural network against the text. A classifier predicts human response to the message, including classifying reactions to the image, to the text, and overall to the message. Visualizations are provided of neural network analytic emphasis on parts of the images and text. Other types of media in messages can also…

Methods and Systems for Upgrading and Installing Application Packages to an Application Platform

Granted: May 4, 2017
Application Number: 20170123785
Systems and methods for installing and upgrading application packages to an application platform. Application packages may be uploaded to a directory by developing users (developers) for installation by subscribing users (subscribers). Alternatively, a developer may send identification information to a subscribing user to allow that user to access and install that application package created by the developer. Application packages may also be upgraded. If a developer changes the original…

SYSTEM AND METHOD FOR ANALYZING COMPLEX METADATA

Granted: May 4, 2017
Application Number: 20170124124
In one embodiment, a computer-implemented method executable by a computer to analyze complex metadata of a data source is provided. The method includes: receiving, by a processor, complex metadata from the data source; processing, by a processor, the complex metadata to determine a dictionary of metadata; processing, by a processor, the dictionary of metadata to determine a graph of nodes and edges; processing, by a processor, the graph using a single feature analysis method; and…

SEARCH PROMOTION SYSTEMS AND METHOD

Granted: May 4, 2017
Application Number: 20170124203
A method for presenting search results is provided. The method receives a user input search query; obtains, from a search engine, a first set of search results responsive to the user input search query; efficiently identifies a promoted set of search results for promotion using a set of search promotion rules, each of the set of search promotion rules including a set of terms and one or more document identifiers; revises the first set of search results, based on the identified promoted…

COMPUTING SYSTEMS AND PROCESSES FOR SIMULTANEOUS CO-DEVELOPMENT OF DASHBOARD INTERFACES

Granted: April 13, 2017
Application Number: 20170102833
A computer system facilitates the collaborative design and presentation of graphical dashboard displays or the like by initiating the presentation of dashboard imagery on each of the collaborating system displays. When a user of a client system identifies an object of the dashboard display for editing, instructions are sent to each of the other collaborating systems to identify the editing party and to prevent simultaneous edits of the same object by multiple parties. Edited objects may…