Early thread return with secondary event writes

US9965538B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9965538-B2
Application numberUS-201615001095-A
CountryUS
Kind codeB2
Filing dateJan 19, 2016
Priority dateJan 19, 2016
Publication dateMay 8, 2018
Grant dateMay 8, 2018

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 log manager causing events to be written to the primary and the secondary computing systems for high availability, and returning threads quickly. Rather than cause every event write to be immediately written to the secondary computing system, the log management component is triggered to write to the secondary computing system upon detecting event write requests of event writes of a particular event type. In response to detecting such an event write, the log management component gathers a group of event writes corresponding to that particular event write, and dispatches the event writes as a group. The particular thread that initiated the particular event write of the particular event type is returned after dispatching the event write group, but before or without confirmation of the particular event write group has been written to the secondary computing system.

First claim

Opening claim text (preview).

What is claimed is: 1. A primary computing system comprising: one or more event writing components that request logging of events; and a log management component that causes events, that the writing component(s) request be logged, to be written on the primary computing system, the log management component also causing at least some of the events to be written to a secondary computing system by performing the following: an act of detecting event write requests of event writes of a particular event type; in response to detecting at least one event write request corresponding to a particular event write of the particular event type, an act of dispatching a group of event writes corresponding to the particular event write to the secondary computing system; and an act of causing a particular thread that initiated the particular event write of the particular event type to be returned after dispatching the group of events, but before or without confirmation of the particular event write being written to the secondary computing system. 2. A method for writing events to a primary computing system and a secondary computing system, the method comprising: an act of receiving a plurality of event write requests from one or more event writing components; in response to each of the at least some of the plurality of event write requests corresponding to a plurality of event writes, an act of writing the corresponding event writes on a primary computing system; an act of causing at least some of the plurality of event writes to also be written to a secondary computing system, the act of causing comprising the following: an act of detecting event write requests of event writes of a particular event type; in response to detecting at least one event write request corresponding to a particular event write of the particular event type, an act of dispatching a group of event writes corresponding to the particular event write to the secondary computing system; and an act of causing a particular thread that initiated the particular event write of the particular event type to be returned after dispatching the group of events, but before or without confirmation of the particular event write being written to the secondary computing system. 3. The method in accordance with claim 2 , the particular event write being a transaction commit event write, the group of event writes corresponding to the transaction commit event write comprising at least some of a plurality of event writes that belong to the same transaction as the transaction commit event write. 4. The method in accordance with claim 3 , the group of event writes corresponding to the transaction commit event write also including at least one other event write that was initiated by the same thread as the thread that initiated the transaction commit event write. 5. The method in accordance with claim 2 , the group of event writes corresponding to the particular event write also including at least one other event write that was initiated by the same thread as the thread that initiated the particular event write. 6. The method in accordance with claim 2 , the event write request being a first event write request, the particular event write being a first event write, the group of event writes being a first group of event writes, the particular thread being a first thread, the act of causing at least some of the plurality of event writes to also be written to the secondary computing system further comprising: in response to detecting a second event write request corresponding to a second event write of the particular event type, an act of dispatching a second group of event writes corresponding to the second event write to the secondary computing system; and an act of causing a second thread that initiated the second event write of the particular event type to be returned before or without confirmation of the second event write being written to the secondary computing system. 7. The method in accordance with claim 2 , the particular event write being a transaction commit event write, the group of event writes corresponding to the transaction commit event write comprising all of a plurality of event writes that belong to the same transaction as the transaction commit event write. 8. The method in accordance with claim 7 , the group of event writes corresponding to the transaction commit event write also comprising at least one other event write that was initiated by the same thread as the thread that initiated the transaction commit event write. 9. The method in accordance with claim 2 , the secondary computing system having a hardware receiver that is capable of receiving the dispatched a group of event writes without receiving a preparation instruction from the primary computing system. 10. The method in accordance with claim 2 , the secondary computing system having a software receiver that is to first be in a prepared state prior to being capable of receiving the dispatched a group of event writes. 11. The method in accordance with claim 10 , the act of causing at least some of the plurality of event writes to also be written to a secondary computing system further comprising the following prior to the act of dispatching the group of event writes corresponding to the particular event write to the secondary computing system: an act of confirming that the software receiver of the secondary computing system is in the prepared state. 12. The method in accordance with claim 11 , the act of causing at least some of the plurality of event writes to also be written to a secondary computing system further comprising the following prior to the act of confirming that the software receiver of the secondary computing system is in the prepared state: an act of dispatching a preparation instruction to the secondary computing system, the preparation instruction structured to be interpretable by the secondary computing system to trigger the software receiver to be in the prepared state. 13. The method in accordance with claim 2 , the act of dispatching a group of event writes corresponding to the particular event write to the secondary computing system comprising: an act of making the group of event writes accessible by the secondary computing system without further intermediation of the primary computing system. 14. The method in accordance with claim 2 , the act of causing a particular thread that initiated the particular event write of the particular event type to be returned occurring after the particular event write is written to the primary computing system in a manner that the event write would still be logged if even after a crash of the primary computing system. 15. The method in accordance with claim 2 , the act of writing the corresponding event writes on a primary computing system comprising: an act of durably logging the corresponding event writes. 16. The method in accordance with claim 2 , the act of writing the corresponding event writes on a primary computing system comprising: an act of writing the event writes to persistent main memory in a manner that even if a crash were to occur before the events are persistent in a log, the event writes would still be persisted in the log after the crash. 17. A computer program product comprising one or more computer-readable storage media having thereon computer-executable instructions that are structured such that, when executed by one or more processors of a computing system, cause the computing system to be adapted to perform the following as a plurality of event writes are received from one o

Assignees

Inventors

Classifications

  • maintaining the standby controller/processing unit updated (initialisation or re-synchronisation thereof G06F11/1658 and subgroups) · CPC title

  • Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title

  • Physics · mapped topic

  • in transactions (updating of structured data in databases G06F16/23) · CPC title

  • Transaction processing · CPC title

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 US9965538B2 cover?
A log manager causing events to be written to the primary and the secondary computing systems for high availability, and returning threads quickly. Rather than cause every event write to be immediately written to the secondary computing system, the log management component is triggered to write to the secondary computing system upon detecting event write requests of event writes of a particular…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/2094. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 08 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).