US 12,450,302 B2
Systems and methods for paginating search results retrieved from multiple databases
Alexander Martin Gisby, Sydney (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 US, Inc., San Francisco, CA (US)
Filed on Dec. 29, 2022, as Appl. No. 18/091,257.
Prior Publication US 2024/0220559 A1, Jul. 4, 2024
Int. Cl. G06F 16/9538 (2019.01); G06F 16/9535 (2019.01)
CPC G06F 16/9538 (2019.01) [G06F 16/9535 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
receiving a search request from a client application;
extracting a first queryable entity and a second queryable entity from the search request;
identifying, based on the first queryable entity, a first database having a first database structure;
executing a first search on the first database to obtain a first set of search results from the first database;
identifying, based on the second queryable entity, a second database having a second database structure different from the first database structure;
executing a second search on the second database to obtain a second set of search results from the second database;
selecting a first subset of search results from the first set of search results;
generating a first cursor object in accordance with the first database structure based on a number of search results selected in the first subset of search results;
selecting a second subset of search results from the second set of search results;
generating a second cursor object in accordance with the second database structure based on a number of search results selected in the second subset of search results;
combining the first and second subsets of search results into a first page of search results;
combining the first and second cursor objects into a combined cursor object, thereby storing the combined cursor object with respect to the search request; and
returning the first page of search results and combined cursor object to the client application.