Facilitating Handling Of Crashes In Concurrent Execution Environments Of Server Systems While Processing User Queries For Data Retrieval

US2016078050A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016078050-A1
Application numberUS-201514599543-A
CountryUS
Kind codeA1
Filing dateJan 19, 2015
Priority dateSep 17, 2014
Publication dateMar 17, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A server system provided according to an aspect of the present disclosure forms physical queries to process a user query received from a client system. Each physical query is thereafter executed in a corresponding concurrent execution entity (e.g., thread) to retrieve a respective data portion from a corresponding data source. A response to the user query is formed based on the data portions. State information corresponding to each execution entity is logged into log storage. According to another aspect, when a query (either physical or user) causes an execution environment to crash, the identifier of such query is added to a prohibited list. When a new query is to be executed, the initiation of execution of the new query is prevented if the identifier of the new query is present in the prohibited list.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method performed in a server system, said method comprising: receiving a user query from a client system; forming physical queries from said user query, each physical query for retrieving a portion of data required to form response to said user query; executing each of said physical queries in a corresponding concurrent execution entity of a plurality of execution entities to receive the respective portions of said data; generating a response to said user query based on said respective portions; sending said response to said client system; and logging status of activities in each concurrent execution entity to a log storage. 2 . The method of claim 1 , wherein said logging comprises: maintaining a respective stack for each concurrent execution entity such that a first stack is maintained for a first concurrent execution entity of said plurality of execution entities; adding a corresponding entry to said first stack upon initiation of each activity in said first concurrent execution entity, wherein each entry maintains a state information related to the corresponding activity, wherein said first stack includes a first entry corresponding to a first activity and a second entry corresponding to a second activity; and removing said second entry from said first stack upon completion of said corresponding second activity. 3 . The method of claim 2 , further comprising: receiving an indication of occurrence of a crash of said first execution entity at a time instance; in response to said indication, providing content of each entry in said stacks first stack to an administrator for debugging purpose, wherein said content provided to said administrator represents status information with respect to all activities not yet completed in said first execution entity until said time instance. 4 . The method of claim 3 , wherein said first execution entity processes a first physical query, wherein said user query is processed in a second execution entity also executing concurrent with said first execution entity, wherein said method further comprises: maintaining a parent stack for logging activities related to processing of said user query in said second execution entity; and including a pointer from said first stack to said parent stack. 5 . The method of claim 4 , wherein said providing further comprising: providing content of each entry in said parent stack corresponding to said second execution entity, wherein said content of said parent stack represents status information with respect to all activities not yet completed in said second execution entity until said time instance. 6 . The method of claim 5 , wherein each of said first execution entity and said second execution entity is a thread. 7 . The method of claim 1 , wherein a first portion of data maintained in a first database server and a second portion of data maintained in a second database server, wherein said executing comprises: connecting to said first database server to retrieve said first portion of data; and connecting to said second database server to retrieve said second portion of data. 8 . A non-transitory machine readable medium storing one or more sequences of instructions for enabling a server system to facilitate handling of crashes, wherein execution of said one or more instructions by one or more processors contained in said server system enables said server system to perform the actions of: receiving a user query from a client system; forming physical queries from said user query, each physical query for retrieving a portion of data required to form response to said user query; executing each of said physical queries in a corresponding concurrent execution entity of a plurality of execution entities to receive the respective portions of said data; generating a response to said user query based on said respective portions; sending said response to said client system; and logging status of activities in each concurrent execution entity to a log storage. 9 . The non-transitory machine readable medium of claim 8 , wherein said logging comprises: maintaining a respective stack for each concurrent execution entity such that a first stack is maintained for a first concurrent execution entity of said plurality of execution entities; adding a corresponding entry to said first stack upon initiation of each activity in said first concurrent execution entity, wherein each entry maintains a state information related to the corresponding activity, wherein said first stack includes a first entry corresponding to a first activity and a second entry corresponding to a second activity; and removing said second entry from said first stack upon completion of said corresponding second activity. 10 . The non-transitory machine readable medium of claim 9 , wherein said actions further comprise: receiving an indication of occurrence of a crash of said first execution entity at a time instance; in response to said indication, providing content of each entry in said stacks first stack to an administrator for debugging purpose, wherein said content provided to said administrator represents status information with respect to all activities not yet completed in said first execution entity until said time instance. 11 . The non-transitory machine readable medium of claim 10 , wherein said first execution entity processes a first physical query, wherein said user query is processed in a second execution entity also executing concurrent with said first execution entity, wherein said actions further comprise: maintaining a parent stack for logging activities related to processing of said user query in said second execution entity; and including a pointer from said first stack to said parent stack. 12 . The non-transitory machine readable medium of claim 11 , wherein said providing further comprising: providing content of each entry in said parent stack corresponding to said second execution entity, wherein said content of said parent stack represents status information with respect to all activities not yet completed in said second execution entity until said time instance. 13 . The non-transitory machine readable medium of claim 12 , wherein each of said first execution entity and said second execution entity is a thread. 14 . A server system comprising: one or more random access memories (RAMs) to store instructions; one or more processing units to retrieve said instructions from said RAMs and execute the retrieved instructions, wherein execution of said instructions causes said server system to perform the actions of: receiving a user query from a client system; forming physical queries from said user query, each physical query for retrieving a portion of data required to form response to said user query; executing each of said physical queries in a corresponding concurrent execution entity of a plurality of execution entities to receive the respective portions of said data; generating a response to said user query based on said respective portions; sending said response to said client system; and logging status of activities in each concurrent execution entity to a log storage. 15 . The server system of claim 14 , wherein said logging comprises: maintaining a respective stack for each concurrent execution entity such that a first stack is maintained for a first concurrent execution entity of said plurality of execution entities; adding a corresponding entry to said first stack upon initiation of each activity in said first concurrent execution entity, whe

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016078050A1 cover?
A server system provided according to an aspect of the present disclosure forms physical queries to process a user query received from a client system. Each physical query is thereafter executed in a corresponding concurrent execution entity (e.g., thread) to retrieve a respective data portion from a corresponding data source. A response to the user query is formed based on the data portions. S…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F16/2308. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Mar 17 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).