US 12,067,001 B2
Deferred computation of entity states in a software platform
Eric Dalgliesh, New South Wales (AU)
Assigned to ATLASSIAN PTY LTD., Sydney (AU); and ATLASSIAN US, INC., San Francisco, CA (US)
Filed by Atlassian Pty Ltd., Sydney (AU); and Atlassian Inc., San Francisco, CA (US)
Filed on Jun. 30, 2022, as Appl. No. 17/855,602.
Prior Publication US 2024/0004868 A1, Jan. 4, 2024
Int. Cl. G06F 16/00 (2019.01); G06F 16/23 (2019.01); G06F 16/25 (2019.01); G06F 16/953 (2019.01)
CPC G06F 16/2379 (2019.01) [G06F 16/252 (2019.01); G06F 16/953 (2019.01)] 18 Claims
OG exemplary drawing
 
1. A system for buffering asynchronous updates to a set of lower-level data objects that collectively define a document entity of a software platform before serving a structured data representation of a current full computed state of the document entity to a consumer of the current full computed state of the document entity, the system comprising:
a host server comprising:
a memory storing an executable asset; and
a processor operably coupled to the memory and configured to retrieve the executable asset from the memory to instantiate:
an instance of a backend application supporting the software platform and configured to communicably couple over a network to the consumer, the backend application configured to:
receive an update to a lower-level data object associated with the document entity;
in response to receiving the update, cause the update to the lower-level data object to be committed to a backend database of the software platform; and
after committing to the backend database:
 increment a version number associated with the document entity; and
 create a work item comprising an identifier identifying the document entity and the version number and add the work item to a work item queue; and
a worker node instance configured to await expiration of a time interval associated with the consumer, and thereafter:
retrieve the work item from the work item queue;
in accordance with determining that the version number is not the highest version number among all work items in the work item queue that comprise the identifier, discarding the work item and deferring computation of the full computed state of the document entity to a later time;
in accordance with determining that the version number is the highest version number among all work items in the work item queue that comprise the identifier, computing the current full computed state of the document entity as the structured data representation; and
in response to completing computation of the current full computed state of the document entity serving the structured data representation to the consumer.