Patents by Inventor Namit Jain

Namit Jain 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: 7206842
    Abstract: One embodiment of the present invention provides a system that facilitates accessing communication queues using a public network. The system operates by first generating a message or messages at a client. The system then formats these messages in a publicly available format. Next, the system communicates the messages across the public network to a web server. The web server receives the messages and transforms the messages to a database specific format. The web server then passes the messages to a queue within a database server across a proprietary network. In one embodiment of the present invention, the system includes queue-to-queue propagation with exactly once guarantees and recovery from failures. In one embodiment of the present invention, the system includes transactional guarantees when a client accesses a queue.
    Type: Grant
    Filed: August 25, 2005
    Date of Patent: April 17, 2007
    Assignee: Oracle International Corp.
    Inventors: Bhagat V. Nainani, Neerja Bhatt, Shailendra K. Mishra, Krishnan Meiyyappan, Namit Jain, Wei Wang
  • Patent number: 7203706
    Abstract: A buffered message queue architecture for managing messages in a database management system is disclosed. A “buffered message queue” refers to a message queue implemented in a volatile memory, such as a RAM. The volatile memory may be a shared volatile memory that is accessible by a plurality of processes. The buffered message queue architecture supports a publish and subscribe communication mechanism, where the message producers and message consumers may be decoupled from and independent of each other. The buffered message queue architecture provides all the functionality of a persistent publish-subscriber messaging system, without ever having to store the messages in persistent storage. The buffered message queue architecture provides better performance and scalability since no persistent operations are needed and no UNDO/REDO logs need to be maintained.
    Type: Grant
    Filed: May 21, 2003
    Date of Patent: April 10, 2007
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Neerja Bhatt, Kapil Surlaker, Krishnan Meiyyappan, Shailendra Mishra
  • Patent number: 7185033
    Abstract: A buffered message queue architecture for managing messages in a database management system is disclosed. A “buffered message queue” refers to a message queue implemented in a volatile memory, such as a RAM. The volatile memory may be a shared volatile memory that is accessible by a plurality of processes. The buffered message queue architecture supports a publish and subscribe communication mechanism, where the message producers and message consumers may be decoupled from and independent of each other. The buffered message queue architecture provides all the functionality of a persistent publish-subscriber messaging system, without ever having to store the messages in persistent storage. The buffered message queue architecture provides better performance and scalability since no persistent operations are needed and no UNDO/REDO logs need to be maintained.
    Type: Grant
    Filed: May 21, 2003
    Date of Patent: February 27, 2007
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Neerja Bhatt, Kapil Surlaker, Krishnan Meiyyappan, Shailendra Mishra
  • Patent number: 7185034
    Abstract: A buffered message queue architecture for managing messages in a database management system is disclosed. A “buffered message queue” refers to a message queue implemented in a volatile memory, such as a RAM. The volatile memory may be a shared volatile memory that is accessible by a plurality of processes. The buffered message queue architecture supports a publish and subscribe communication mechanism, where the message producers and message consumers may be decoupled from and independent of each other. The buffered message queue architecture provides all the functionality of a persistent publish-subscriber messaging system, without ever having to store the messages in persistent storage. The buffered message queue architecture provides better performance and scalability since no persistent operations are needed and no UNDO/REDO logs need to be maintained.
    Type: Grant
    Filed: May 21, 2003
    Date of Patent: February 27, 2007
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Neerja Bhatt, Kapil Surlaker, Krishnan Meiyyappan, Shailendra Mishra, Bhagat Nainani
  • Patent number: 7181482
    Abstract: A buffered message queue architecture for managing messages in a database management system is disclosed. A “buffered message queue” refers to a message queue implemented in a volatile memory, such as a RAM. The volatile memory may be a shared volatile memory that is accessible by a plurality of processes. The buffered message queue architecture supports a publish and subscribe communication mechanism, where the message producers and message consumers may be decoupled from and independent of each other. The buffered message queue architecture provides all the functionality of a persistent publish-subscriber messaging system, without ever having to store the messages in persistent storage. The buffered message queue architecture provides better performance and scalability since no persistent operations are needed and no UNDO/REDO logs need to be maintained.
    Type: Grant
    Filed: May 21, 2003
    Date of Patent: February 20, 2007
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Neerja Bhatt, Kapil Surlaker, Krishnan Meiyyappan, Sanjay Kaluskar, Shailendra Mishra
  • Publication number: 20070005603
    Abstract: A method and apparatus for sharing state information among a plurality of servers is provided. A first server receives a request to perform a file operation, such as a NFS file system operation. Thereafter, the first server updates state information to reflect a change in state associated with processing the request. The first server then causes state update information, which identifies the change in state that was made at the first server, to be propagated to a second server. The second server updates state information, stored at the second server, to reflect the change in state associated with processing the request at the first server. Advantageously, a client may send a series of stateful file operations to either the first server or the second server, even if processing any one of the stateful file operation requests requires knowledge of the state of processing prior requests in the series of requests.
    Type: Application
    Filed: June 29, 2005
    Publication date: January 4, 2007
    Inventors: Namit Jain, Syam Pannala, Sam Idicula, Nipun Agarwal, Eric Sedlar, Vikram Kapoor
  • Publication number: 20070005604
    Abstract: A method and apparatus for performing network file system (NFS) operations across a plurality of servers is provided. At a first server, a filehandle for a particular file is generated based, at least in part, on an identifier that uniquely identifies the particular file relative to all other files within a file system repository. The file system repository may be implemented in a database. The identifier may also be stored in the database. The first server sends a client the filehandle. The client may thereafter send another request for the performance of a file operation, containing the filehandle, to a different server. The second server may read the filehandle and use the identifier to locate the file within the repository against which to perform the file operation without receiving, from the first server, information that associates the filehandle with the file.
    Type: Application
    Filed: June 30, 2005
    Publication date: January 4, 2007
    Inventors: Namit Jain, Syam Pannala, Sam Idicula, Nipun Agarwal, Eric Sedlar, Vikram Kapoor
  • Publication number: 20070005555
    Abstract: Techniques are provided for accessing and storing files within a virtual folder. A virtual folder is a folder that is logically a part of a hierarchical folder structure of a file system repository, but the contents of the virtual folder are not physically stored in the file system repository. A client may issue, to an access mechanism, a request to perform a file operation on a file in a virtual folder. The access mechanism, which may be a database server or a component therein, may perform the file operation on the file in the virtual folder as if the file was stored in a particular folder within the hierarchical folder structure implemented by the file system repository. Advantageously, files may be physically stored outside of the file system repository, but still be a part of the hierarchical folder structure implemented by the file system repository.
    Type: Application
    Filed: June 29, 2005
    Publication date: January 4, 2007
    Inventors: Namit Jain, Nipun Agarwal, Vikram Kapoor, Syam Pannala, Ravi Murthy
  • Patent number: 7158981
    Abstract: A hierarchy may be explicitly or implicitly reflected in existing data maintained external to hierarchy structures. Such hierarchies are referred to herein as a “pre-existing hierarchies”. Techniques are described herein for capturing a pre-existing hierarchy in hierarchy structures. After a pre-existing hierarchy has been captured, there exist two independent sets of data that reflect the hierarchy: the external hierarchy definition and the internal hierarchy definition. Changing either hierarchy definition changes the hierarchy. Therefore, to maintain a consistent reflection of the hierarchy, the internal hierarchy definition must be modified in response to changes made to the external hierarchy definition, and the external hierarchy definition must be modified in response to changes made to the internal hierarchy definition. Various techniques are described for maintaining consistency between the two hierarchy definitions.
    Type: Grant
    Filed: December 21, 2005
    Date of Patent: January 2, 2007
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Eric Sedlar, Ravi Murthy, Namit Jain
  • Patent number: 7120776
    Abstract: A method and apparatus for efficient runtime memory access in a database is provided. A buffer pool is pre-allocated in cache. Buffers in the buffer pool are sized to accommodate average case queries and frequently executed queries. Buffers from the buffer pool are allocated to query working sets during runtime to reduce cache misses.
    Type: Grant
    Filed: February 3, 2004
    Date of Patent: October 10, 2006
    Assignee: Oracle International Corporation
    Inventors: Kumar Rajamani, Namit Jain
  • Publication number: 20060206473
    Abstract: The methods and systems for database statement execution plan optimization exploit bind variable data available on the network to build and optimize an execution plan for the statement. A system for database statement execution plan optimization comprises a bind variable analyzer, a frame allocator, and an optimizer, in addition to a parser for parsing and analyzing the statement, a type checker for type checking the statement, and a tree builder for building an expression tree.
    Type: Application
    Filed: May 12, 2006
    Publication date: September 14, 2006
    Inventors: Sanjay Kaluskar, Namit Jain, Hakan Jakobsson, Graham Wood
  • Patent number: 7092931
    Abstract: The methods and systems for database statement execution plan optimization exploit bind variable data available on the network to build and optimize an execution plan for the statement. A system for database statement execution plan optimization comprises a bind variable analyzer, a frame allocator, and an optimizer, in addition to a parser for parsing and analyzing the statement, a type checker for type checking the statement, and a tree builder for building an expression tree.
    Type: Grant
    Filed: May 10, 2002
    Date of Patent: August 15, 2006
    Assignee: Oracle Corporation
    Inventors: Sanjay Kaluskar, Namit Jain, Hakan Jakobsson, Graham S. Wood
  • Patent number: 7089265
    Abstract: A method and apparatus for managing a database is provided. A database management system conducts a plurality of database transactions with a plurality of clients. An event may be detected as a result of one of the transactions. The event is mapped to an independent database action. In response to detecting the event, the independent database action is executed without interference from the transaction that caused the event.
    Type: Grant
    Filed: April 17, 2002
    Date of Patent: August 8, 2006
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Rajit Kambo, Shailendra Mishra
  • Publication number: 20060136508
    Abstract: A method and apparatus for performing file system operation locks at a database server is provided. A request to perform a file operation on a portion of a file managed by a database server is received at the database server. In response to receiving the request, the database server grants a lock that covers only a portion of the file that is involved in the file operation. For example, the database server may grant a lock that covers a range of bytes on the file, where the range of bytes is less than the entire file. Thereafter, the database server performs the file operation on the file. The file operation may be a NFS operation.
    Type: Application
    Filed: December 16, 2004
    Publication date: June 22, 2006
    Inventors: Sam Idicula, Namit Jain, Syam Pannala, Vasudha Krishnaswamy, Eric Sedlar, Nipun Agarwal, Bipul Sinha, Ravi Murthy
  • Publication number: 20060136516
    Abstract: A method and apparatus for providing file system operation locks at a database server is provided. A database server may employ database locks and file system operation locks in servicing requests from consistent requestors and inconsistent requesters. A database lock is a lock that is obtained in response to performing a database operation, and the database lock is released when the database operation has successfully completed. A file system operation lock is a lock that is obtained in response to performing an OPEN file system operation, and the file system operation lock is released when a CLOSE file system operation is performed. The database server may use a temporary copy of the resource, which reflects all the current changes that have been made to the resource by database operations, in servicing consistent requestors, and may use the original version of the resource in servicing inconsistent requesters.
    Type: Application
    Filed: December 16, 2004
    Publication date: June 22, 2006
    Inventors: Namit Jain, Sam Idicula, Syam Pannala, Nipun Agarwal, Ravi Murthy, Eric Sedlar
  • Publication number: 20060136509
    Abstract: A method and apparatus for reverting a resource to a prior state in time is provided. Changes are committed to a resource at a particular point in time. After the particular point in time, a request, which may be a file system operation request, to revert the resource to a state prior to the particular point in time is received at a database server. In response to the request, the resource is reverted to the state prior to the particular point in time. The current state of the resource ceases to reflect the plurality of changes. Advantageously, if a requestor creates an incorrect version of a resource, the changes made to a schema-based resource are not compatible with the schema, or the changes of multiple requesters are not compatible with each other, the resource may be reverted to the earlier point in time.
    Type: Application
    Filed: December 16, 2004
    Publication date: June 22, 2006
    Inventors: Syam Pannala, Namit Jain, Sam Idicula, Nipun Agarwal, Eric Sedlar
  • Publication number: 20060136376
    Abstract: A method and apparatus for processing a file system operation at a database server is provided. A request to perform a file system operation on a resource stored in a database is received at a database system. The request may be implemented using the NFS protocol. The request may include state identification data that identifies state information associated with the request. State information associated with the request is retrieved within the database system based on the state identification data. State information is information that describes the operational state of the requestor for a particular file. The request is then processed based, at least in part, on the state identification. File system operations may be processed a database management system to access any data, such as a file, relational data, and object-relational data.
    Type: Application
    Filed: December 16, 2004
    Publication date: June 22, 2006
    Applicant: Oracle International Corporation
    Inventors: Namit Jain, Nipun Agarwal, Eric Sedlar, Sam Idicula, Syam Pannala
  • Publication number: 20060129584
    Abstract: A method and apparatus for performing an action in response to a file system event is provided. According to one aspect, sets of “event listeners” are associated with a file hierarchy and/or the nodes thereof. Each event listener contains a set of “event handlers.” Each event handler corresponds to a separate type of event that may occur relative to the file hierarchy's nodes. When an event is going to occur relative to the hierarchy or a node thereof, all event listeners that are associated with that hierarchy/node are inspected to determine whether those event listeners contain any event handlers that correspond to the event's type. Those event handlers that correspond to the event's type are placed in an ordered list of event handlers to be invoked. As the event handlers in the list are invoked, programmatic mechanisms that correspond to those event handlers are executed to perform customized user-specified actions.
    Type: Application
    Filed: December 15, 2004
    Publication date: June 15, 2006
    Inventors: Thuvan Hoang, Sam Idicula, Nipun Agarwal, Ravi Murthy, Asha Tarachandani, Namit Jain, Eric Sedlar
  • Publication number: 20060117049
    Abstract: A method and apparatus for processing path-based database operations is provided. According to one aspect, a “parent row ID” column is added to a directory links table. For each row in the table, the value of the “parent row ID” column indicates the row ID, in the table, of the node that is that row's node's parent in the file hierarchy. To determine whether a particular node is within a specified path of the file hierarchy, the particular node's pathname is derived by visiting child-to-parent links indicated in the table and prepending, to the front of a pathname being constructed for the particular node, node names indicated in the visited rows. Each parent node's row in the directory links table is located using the “parent row ID” column of the child node's row. The resulting pathname is compared with the specified path to determine whether the particular node exists therein.
    Type: Application
    Filed: November 29, 2004
    Publication date: June 1, 2006
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Namit Jain, Fei Ge, Ravi Murthy, Subramanian Muralidhar, Nipun Agarwal, Eric Sedlar
  • Patent number: 7051033
    Abstract: A hierarchy may be explicitly or implicitly reflected in existing data maintained external to hierarchy structures. Such hierarchies are referred to herein as a “pre-existing hierarchies”. Techniques are described herein for capturing a pre-existing hierarchy in hierarchy structures. After a pre-existing hierarchy has been captured, there exist two independent sets of data that reflect the hierarchy: the external hierarchy definition and the internal hierarchy definition. Changing either hierarchy definition changes the hierarchy. Therefore, to maintain a consistent reflection of the hierarchy, the internal hierarchy definition must be modified in response to changes made to the external hierarchy definition, and the external hierarchy definition must be modified in response to changes made to the internal hierarchy definition. Various techniques are described for maintaining consistency between the two hierarchy definitions.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: May 23, 2006
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Eric Sedlar, Ravi Murthy, Namit Jain