Patents by Inventor Srinath Krishnaswamy
Srinath Krishnaswamy 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: 11947534Abstract: A server system provided according to an aspect of the present disclosure provides a shared connection pool to parallel execution entities accessing database instances of a distributed database when processing requests. A shared connection pool implies that each pool connection of the connection pool may be used for serving different execution entities requiring access to different database instances. In an embodiment, the database instances correspond to shards together implementing a distributed database, and the parallel execution entities correspond to threads.Type: GrantFiled: December 31, 2019Date of Patent: April 2, 2024Assignee: Oracle International CorporationInventors: Sumit Sahu, Lakshminarayanan Chidambaran, Krishna Itikarlapalli, Srinath Krishnaswamy
-
Patent number: 11277435Abstract: Techniques described herein improve database security by reducing network attack surface area in conjunction with deep input validation. In an embodiment, a database session receives one or more network packets sent via a network, the database session including a database session state that specifies one or more database privileges. The database session reads said one or more network packets into one or more request-packet-buffers, wherein said one or more request-packet-buffers include an RPC op code for a database operation. Based on the one or more database privileges associated with the user associated with the database session, the database session determines whether the RPC op code may be executed. In response to determining that the RPC op code may be executed by said database session, the RPC op code is executed. In response to determining that the op code may not be executed by said database session, the execution of the RPC op code is prevented.Type: GrantFiled: September 14, 2017Date of Patent: March 15, 2022Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Krishna Mohan Itikarlapalli, Santanu Datta, Srinath Krishnaswamy, Lakshminarayanan Chidambaran, Rajesh Kumar, Sumit Sahu, Rajendra Pingte
-
Publication number: 20210200765Abstract: A server system provided according to an aspect of the present disclosure provides a shared connection pool to parallel execution entities accessing database instances of a distributed database when processing requests. A shared connection pool implies that each pool connection of the connection pool may be used for serving different execution entities requiring access to different database instances. In an embodiment, the database instances correspond to shards together implementing a distributed database, and the parallel execution entities correspond to threads.Type: ApplicationFiled: December 31, 2019Publication date: July 1, 2021Inventors: Sumit Sahu, Lakshminarayanan Chidambaran, Krishna Itikarlapalli, Srinath Krishnaswamy
-
Patent number: 10642735Abstract: Disclosed are methods and apparatuses that implement automatic resizing of statement caches in response to cache metrics. One embodiment provides an approach for periodically calculating a session eligibility index for each session cache, wherein the session eligibility index indicates the priority level of the session cache for resizing, and selecting and resizing one or more cache sessions based at least in part on the session eligibility index.Type: GrantFiled: March 15, 2013Date of Patent: May 5, 2020Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Mehul Dilip Bastawala, Srinath Krishnaswamy, Lakshminarayanan Luxi Chidambaran, Santanu Datta
-
Patent number: 10296629Abstract: A method, system, and computer program product is disclosed for interacting with a client supported by a client-side cache. Embodiments of a method, a system, and a computer program product are disclosed that retrieve a first snapshot, indicating a state of the database after a last database request by the client, associated with the client, determine any number of invalid cached results for the client based on the first snapshot, and transmit the any number of invalid cached results and a second snapshot, an update for the first snapshot.Type: GrantFiled: October 22, 2007Date of Patent: May 21, 2019Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Lakshminarayanan Chidambaran, Mehul Dilip Bastawala, Srinath Krishnaswamy, Tirthankar Lahiri, Juan R. Loaiza, Bipul Sinha, Srinivas S. Vemuri
-
Publication number: 20180077196Abstract: Techniques described herein improve database security by reducing network attack surface area in conjunction with deep input validation. In an embodiment, a database session receives one or more network packets sent via a network, the database session including a database session state that specifies one or more database privileges. The database session reads said one or more network packets into one or more request-packet-buffers, wherein said one or more request-packet-buffers include an RPC op code for a database operation. Based on the one or more database privileges associated with the user associated with the database session, the database session determines whether the RPC op code may be executed. In response to determining that the RPC op code may be executed by said database session, the RPC op code is executed. In response to determining that the op code may not be executed by said database session, the execution of the RPC op code is prevented.Type: ApplicationFiled: September 14, 2017Publication date: March 15, 2018Inventors: Krishna Mohan Itikarlapalli, Santanu Datta, Srinath Krishnaswamy, Lakshminarayanan Chidambaran, Rajesh Kumar, Sumit Sahu, Rajendra Pingte
-
Patent number: 9697253Abstract: A method, system, and computer program product is disclosed for caching results in a client-side cache. Embodiments of a method, a system, and a computer program product are disclosed that associate a first snapshot of a database with a client that indicates a state of the database after a last database request by the client, and indicate any number of invalid cached results in the client cache for the client based upon the first snapshot. In some embodiments, the method further includes receiving a second snapshot that indicates a state of the database upon receipt of a database server request by the client, and updating the first snapshot with the second snapshot.Type: GrantFiled: October 19, 2007Date of Patent: July 4, 2017Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Lakshminarayanan Chidambaran, Mehul Dilip Bastawala, Srinath Krishnaswamy, Tirthankar Lahiri, Juan R. Loaiza, Bipul Sinha, Srinivas S. Vemuri
-
Patent number: 9582375Abstract: Some embodiments are directed to a method and apparatus for implementing an automatic failover mechanism for a resource. A client accesses a source through a first server using a first session. During the session, the client stores checksum information corresponding to data received via the session with the first server. When it is detected that the session between the first server and the client has failed, the client is automatically connected with second server that has access to the resource. The checksum information is transmitted from the client to the second server, where it is compared with checksum information calculated at the second server, so that a determination can be made as to whether the client can continue processing where it left off when connected to the second server.Type: GrantFiled: May 7, 2014Date of Patent: February 28, 2017Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Mehul Dilip Bastawala, Srinath Krishnaswamy, Nancy Reiko Ikeda, Lakshminarayanan Chidambaran
-
Publication number: 20150324259Abstract: Some embodiments are directed to a method and apparatus for implementing an automatic failover mechanism for a resource. A client accesses a source through a first server using a first session. During the session, the client stores checksum information corresponding to data received via the session with the first server. When it is detected that the session between the first server and the client has failed, the client is automatically connected with second server that has access to the resource. The checksum information is transmitted from the client to the second server, where it is compared with checksum information calculated at the second server, so that a determination can be made as to whether the client can continue processing where it left off when connected to the second server.Type: ApplicationFiled: May 7, 2014Publication date: November 12, 2015Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Mehul Dilip BASTAWALA, Srinath KRISHNASWAMY, Nancy Reiko IKEDA, Lakshminarayanan CHIDAMBARAN
-
Publication number: 20140281252Abstract: Disclosed are methods and apparatuses that implement automatic resizing of statement caches in response to cache metrics. One embodiment provides an approach for periodically calculating a session eligibility index for each session cache, wherein the session eligibility index indicates the priority level of the session cache for resizing, and selecting and resizing one or more cache sessions based at least in part on the session eligibility index.Type: ApplicationFiled: March 15, 2013Publication date: September 18, 2014Inventors: Mehul Dilip Bastawala, Srinath Krishnaswamy, Lakshminaray Luxi Chidambaran, Santanu Datta
-
Patent number: 8713186Abstract: A server side connection pool provides pooling of server connections. Thus, client side processes do not create groups of dedicated resources. Clients are provided the capability to communicate to a server side connection broker process to GET a pooled server connection comprising connection state plus a thread of execution for doing some work, whereby requesting the work can bypass the connection broker process and go directly to the assigned pooled connection. Once the client issues a RELEASE to release the pooled connection back to the pool, a completely different client process on potentially a different client middle tier machine can reuse the same pooled connection. The server-side connection pool can be logically partitioned into sub-pools that correspond to connection classes that typically correspond to respective applications. A client process can request a pooled connection having a particular state, where a stored procedure can be executed to generate such state.Type: GrantFiled: March 12, 2008Date of Patent: April 29, 2014Assignee: Oracle International CorporationInventors: Lakshminarayanan Chidambaran, Srinath Krishnaswamy, Krishna Mohan Itikarlapalli, Kevin Neel, Sreekumar K. Seshadri, Jonathan Giloni, Scot McKinley, Ravi Thammaiah
-
Patent number: 8522205Abstract: Multiple groups of read-only files, for use by various components of an application program in a computer, are packaged as follows. Several executable files are prepared, each executable file corresponding to a group of read-only files used by one or more components. Each executable file includes an array that has sufficient space to accommodate the group of read-only files to be packaged therein. Each array in each executable file is overwritten with data from a corresponding group of read-only files. The presence or absence of each executable file for a group of read-only files is indicated by an index that is developed during initialization of components. Retrieval of data is from the executable files, if the index indicates, on first accessing each read-only file, that the corresponding executable file is present. If the executable file is indicated by the index as being absent, then the read-only file is directly accessed.Type: GrantFiled: May 19, 2006Date of Patent: August 27, 2013Assignee: Oracle International CorporationInventors: Mohammad Shoaib Lari, Rajendra S. Pingte, Srinath Krishnaswamy
-
Patent number: 8244888Abstract: An improved method, mechanism, and system for implementing, generating, and maintaining for implementing session pools is disclosed. A session in a session pool can be customized to with a specific set of affinities and attributes. Tags can be associated with the customized sessions. When a later request is made for a session having a set of desired characteristics, the tags can be used to search for and identify a session in the session pool having the requested characteristics. Also disclosed is a method, mechanism, and system for dynamic sizing of session pools.Type: GrantFiled: June 10, 2011Date of Patent: August 14, 2012Assignee: Oracle International CorporationInventors: Srinath Krishnaswamy, Debashis Saha, Sapna Chandiramani, Amit Bande, I. V. Krishna Mohan
-
Patent number: 8191076Abstract: One embodiment of the present invention provides a system that facilitates making an inter-process procedure call through a shared memory that is shared between a client process and a server process, wherein the client makes the inter-process procedure call as if the client is making a local procedure call, but the procedure call actually executes on the server. The system operates by an Application Programming Interface (API) to allow the client to make an inter-process procedure call. The system then allocates a section of the shared memory for the data structure parameters of the inter-process procedure call.Type: GrantFiled: August 5, 2010Date of Patent: May 29, 2012Assignee: Oracle International CorporationInventors: Mohammad Shoaib Lari, Srinath Krishnaswamy
-
Publication number: 20110307615Abstract: An improved method, mechanism, and system for implementing, generating, and maintaining for implementing session pools is disclosed. A session in a session pool can be customized to with a specific set of affinities and attributes. Tags can be associated with the customized sessions. When a later request is made for a session having a set of desired characteristics, the tags can be used to search for and identify a session in the session pool having the requested characteristics. Also disclosed is a method, mechanism, and system for dynamic sizing of session pools.Type: ApplicationFiled: June 10, 2011Publication date: December 15, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Srinath KRISHNASWAMY, Debashis SAHA, Sapna CHANDIRAMANI, Amit BANDE, I. V. Krishna MOHAN
-
Patent number: 7962630Abstract: An improved method, mechanism, and system for implementing, generating, and maintaining for implementing session pools is disclosed. A session in a session pool can be customized to with a specific set of affinities and attributes. Tags can be associated with the customized sessions. When a later request is made for a session having a set of desired characteristics, the tags can be used to search for and identify a session in the session pool having the requested characteristics. Also disclosed is a method, mechanism, and system for dynamic sizing of session pools.Type: GrantFiled: April 30, 2003Date of Patent: June 14, 2011Assignee: Oracle International CorporationInventors: Srinath Krishnaswamy, Debashis Saha, Sapna Chandiramani, Amit Bande, I.V. Krishna Mohan
-
Publication number: 20100313206Abstract: One embodiment of the present invention provides a system that facilitates making an inter-process procedure call through a shared memory that is shared between a client process and a server process, wherein the client makes the inter-process procedure call as if the client is making a local procedure call, but the procedure call actually executes on the server. The system operates by receiving a request from the client through an Application Programming Interface (API) to make an inter-process procedure call. The system then allocates a section of the shared memory for the data structure parameters of the inter-process procedure call. Additionally, the client process acquires a lock on a commonly known section of shared memory called a Parameter Control Block. Once the lock is acquired, the client process stores parameters for the inter-process procedure call in the Parameter Control Block. Finally, the client process clears a Call_Done flag and releases the lock.Type: ApplicationFiled: August 5, 2010Publication date: December 9, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Mohammad Shoaib Lari, Srinath Krishnaswamy
-
Patent number: 7779417Abstract: One embodiment of the present invention provides a system that facilitates making an inter-process procedure call through a shared memory that is shared between a client process and a server process, wherein the client makes the inter-process procedure call as if the client is making a local procedure call, but the procedure call actually executes on the server. The system operates by providing an Application Programming Interface (API) to allow the client to make an inter-process procedure call. The system then allocates a section of the shared memory for the data structure parameters of the inter-process procedure call.Type: GrantFiled: October 25, 2005Date of Patent: August 17, 2010Assignee: Oracle International CorporationInventors: Mohammad Shoaib Lari, Srinath Krishnaswamy
-
Patent number: 7743333Abstract: A system, method, computer program and system for suspending a result set and continuing from a suspended result set for a scrollable cursor is disclosed. The rows from a row source corresponding to the scrollable cursor result set are suspended into storage so that when a fetch is requested the data can be sent (continued) from the suspended storage and does not depend on the original scrollable cursor row source or session to be available.Type: GrantFiled: April 1, 2005Date of Patent: June 22, 2010Assignee: Oracle International CorporationInventors: Mehul D. Bastawala, Lakshminarayanan Chidambaran, Sreenivas Gollapudi, Sanjay Kaluskar, Srinath Krishnaswamy, Debashish Chatterjee
-
Patent number: 7711695Abstract: A computer automatically identifies multiple occurrences of an abstract data type that is embedded within an object of metadata of another abstract data type (hereinafter “top-level” abstract data type), e.g. by recursively visiting each element of the top-level abstract data type. Then the computer automatically generates, for the top-level abstract data type, a tap-level description that contains a description of each embedded abstract data type. At several locations in the top-level description that correspond to occurrences of a given embedded abstract data type in the top-level abstract data type, the computer automatically inserts offsets that identify a common position where the single description of that given embedded abstract data type is present in the tap-level description. Use of multiple offsets that identify a common position of an embedded description reduces space. The space was otherwise occupied by multiple embedded descriptions in prior art's top-level descriptions.Type: GrantFiled: January 18, 2005Date of Patent: May 4, 2010Assignee: Oracle International CorporationInventors: Rajendra S. Pingte, Srinath Krishnaswamy