Patents by Inventor Mikhail Chainani

Mikhail Chainani has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10635561
    Abstract: In a computing environment having multiple application servers each having at least one connection agent and at least one pause agent and a database node, detecting an error condition between a first application server from the multiple application servers and the database node. Indicating that the database node is unavailable to stop attempts to access the database node by a first application server. The attempts to access the database node are paused without an indication of the database node being unavailable to a source of the attempt to access the database node. Checking periodically, with the first application server, availability of the database node. Indicating that the database node is available in response to a pre-selected number of successful attempts to contact the database node with the first application server.
    Type: Grant
    Filed: January 4, 2018
    Date of Patent: April 28, 2020
    Assignee: salesforce.com, inc.
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Gopala Krishnan, Alan Arbizu, Jesse Collins
  • Publication number: 20190363928
    Abstract: Techniques and architectures to provide multiple application servers each having at least one connection agent and at least one enabler agent and at least one database organized as multiple nodes. An error condition between a first connection agent and a first database node is detected. The first connection agent indicates that the first database node is unavailable to stop attempts to access the first database node by a first application server. A first enabler agent periodically checks availability of the first database node. The first database node is indicated as available in response to a pre-selected number of successful attempts to contact the first database node with the first enabler agent. The first database node is accessed with the application server in response to the indication that the first database node is available.
    Type: Application
    Filed: August 5, 2019
    Publication date: November 28, 2019
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Gopola Krishnan, Alan Arbizu, Jesse Collins
  • Publication number: 20190306008
    Abstract: A system may identify gap events in a change detection stream. When changes in data are transmitted to a downstream system, the system may identify intermittent portions of the transmission where data is missing (e.g., a gap event). In some examples, a gap event may be caused by system maintenance or one or more system errors. After identifying the gap event, the system may bridge the gap event using metadata associated with the gap event. The associated metadata may be transmitted (e.g., via a gap event identification message) to the downstream system, which may prevent the downstream system from experiencing computational inefficiencies due to the gap event.
    Type: Application
    Filed: March 28, 2018
    Publication date: October 3, 2019
    Inventors: Mikhail Chainani, Vijay Devadhar, William Dumaresq, Venkat Chandrasekaran, Jia Chen, Utsavi Benani, Xiaodan Wang
  • Patent number: 10425274
    Abstract: Techniques and architectures to provide multiple application servers each having at least one connection agent and at least one enabler agent and at least one database organized as multiple nodes. An error condition between a first connection agent and a first database node is detected. The first connection agent indicates that the first database node is unavailable to stop attempts to access the first database node by a first application server. A first enabler agent periodically checks availability of the first database node. The first database node is indicated as available in response to a pre-selected number of successful attempts to contact the first database node with the first enabler agent. The first database node is accessed with the application server in response to the indication that the first database node is available.
    Type: Grant
    Filed: November 6, 2017
    Date of Patent: September 24, 2019
    Assignee: salesforce.com, inc.
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Gopala Krishnan, Alan Arbizu, Jesse Collins
  • Publication number: 20190235918
    Abstract: A request for an organization migration to move application data and application services of an organization hosted at a source system instance in a multi-tenant computing system to a target system instance in the multi-tenant computing system is received. Based on operational parameters, a time window is selected to execute the organization migration. Computing resource usages of one or both of the source and target system instances in the selected time window are monitored. If computing resources are available, the organization migration is enqueued.
    Type: Application
    Filed: January 29, 2018
    Publication date: August 1, 2019
    Inventors: Chen Liu, Ilya Zaslavsky, Alex Ovesea, Mikhail Chainani, Xiaodan Wang, Sridevi Gopala Krishnan
  • Publication number: 20190235895
    Abstract: Migration configuration data for an organization migration to move application data and application services of a to-be-migrated organization hosted at a source system instance to a target system instance is received. Migration components respectively representing to-be-migrated systems of record in a to-be-migrated organization are registered. In response to receiving an instruction to enter a specific organization migration state, migration steps for each migration component in the migration components are identified for execution in the specific organization migration state. Each migration component in the migration components automatically executes migration steps determined for each such migration component for execution in the specific organization migration state.
    Type: Application
    Filed: January 29, 2018
    Publication date: August 1, 2019
    Inventors: Alex Ovesea, Ilya Zaslavsky, Chen Liu, Alan Arbizu, Mikhail Chainani, Xiaodan Wang, Sridevi Gopala Krishnan
  • Publication number: 20190236201
    Abstract: Techniques are disclosed relating to processing data stored within database tables in a parallelized manner. In various embodiments, a computer system maintains a database having a database table storing data for a plurality of tenants and an index structure storing indexes for accessing data stored in the database table. In some embodiments, the computer system receives, from a particular tenant, a request to perform a task that includes operating on particular data. In some embodiments, the computer system determines a portion of the index structure corresponding to the particular tenant and divides a range of indexes within that portion into a plurality of index sub-ranges. In various embodiments, the computer system processes portions of the task in parallel by determining an index sub-range for each of a plurality of threads and causing each of the threads to operate on a portion of the particular data specified by its index sub-range.
    Type: Application
    Filed: January 31, 2018
    Publication date: August 1, 2019
    Inventors: Xiaodan Wang, Mikhail Chainani, Alan Arbizu, Ashwini Bijwe
  • Publication number: 20190236150
    Abstract: Migration specific action requests to perform a set of migration specific actions are sent from a source system instance to a target system instance. Migration specific action responses are received from the target system instance. Based on the migration specific action responses, traffic lights for resource utilization of the target system instance are determined. Based on the traffic lights, a concurrency limit is determined for the specific time. The concurrency limit is applied to scale a total number of ongoing migration specific actions to be requested of the target system instance at the specific time.
    Type: Application
    Filed: January 29, 2018
    Publication date: August 1, 2019
    Inventors: Ilya Zaslavsky, Mikhail Chainani, Alex Ovesea, Vijayanth Devadhar, Xiaodan Wang, Alan Arbizu
  • Publication number: 20190065542
    Abstract: Technology for tracking changes to a database and providing the changes to a subscribing computing device. In an illustrative implementation, a method may involve subscribing a computing device to changes of a portion of a multi-tenant database and accessing a plurality of change events stored in a log of the multi-tenant database in parallel. The method may further involve storing the plurality of change events in a persistent data store separate from the multi-tenant database and processing the plurality of change events to create an ordered set of change events. The ordered set of change events may then be provided to the computing device that subscribed to the changes.
    Type: Application
    Filed: August 25, 2017
    Publication date: February 28, 2019
    Inventors: Gary Baker, Mikhail Chainani, Varun Jobanputra, William Dumaresq
  • Publication number: 20190057133
    Abstract: Systems and methods perform a bounded scan on multi-column keys of a database system which stores data in a storage device. The systems and methods may include creating an index on one or more columns of a table of a database stored in the storage device. A first query for data in the indexed table may be received by the database system, where the query includes a scan range operation. The database system may translate the first query that includes the scan range operation into a plurality of sub-queries having respective scan ranges. A second query may be formed by combining the sub-queries with an operation. The systems and methods may process the second query and output a result of the second query.
    Type: Application
    Filed: August 15, 2017
    Publication date: February 21, 2019
    Inventors: Mikhail Chainani, Ashwini Bijwe
  • Publication number: 20180331887
    Abstract: Techniques and architectures to provide multiple application servers each having at least one connection agent and at least one enabler agent and at least one database organized as multiple nodes. An error condition between a first connection agent and a first database node is detected. The first connection agent indicates that the first database node is unavailable to stop attempts to access the first database node by a first application server. A first enabler agent periodically checks availability of the first database node. The first database node is indicated as available in response to a pre-selected number of successful attempts to contact the first database node with the first enabler agent. The first database node is accessed with the application server in response to the indication that the first database node is available.
    Type: Application
    Filed: November 6, 2017
    Publication date: November 15, 2018
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Gopola Krishnan, Alan Arbizu, Jesse Collins
  • Publication number: 20180329793
    Abstract: In a computing environment having multiple application servers each having at least one connection agent and at least one pause agent and a database node, detecting an error condition between a first application server from the multiple application servers and the database node. Indicating that the database node is unavailable to stop attempts to access the database node by a first application server. The attempts to access the database node are paused without an indication of the database node being unavailable to a source of the attempt to access the database node. Checking periodically, with the first application server, availability of the database node. Indicating that the database node is available in response to a pre-selected number of successful attempts to contact the database node with the first application server.
    Type: Application
    Filed: January 4, 2018
    Publication date: November 15, 2018
    Inventors: Olumayokun Obembe, Chen Liu, Ping-Hsiu Hsieh, Ashwini Bijwe, Vijayanth Devadhar, Mikhail Chainani, Sridevi Krishnan, Alan Arbizu, Jesse Collins