Processing large xml files by splitting and hierarchical ordering
US-2015363414-A1 · Dec 17, 2015 · US
US11275659B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11275659-B2 |
| Application number | US-201916273889-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 12, 2019 |
| Priority date | Feb 12, 2019 |
| Publication date | Mar 15, 2022 |
| Grant date | Mar 15, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system includes a memory and a processor in communication with the memory. The processor builds a preliminary history list of a plurality of commits including intermediary commits and a target commit, instantiates a target file list of files modified by the target commit, and instantiates an intermediary file list for each intermediary commit. Additionally, the processor classifies each intermediary commit as an intersecting commit or an empty commit. Responsive to classifying a respective intermediary commit as an empty commit, the processor removes the respective intermediary commit from the preliminary history list to create a candidate history list. Responsive to classifying a respective intermediary commit as an intersecting commit, the processor retains the respective intermediary commit in the candidate history list. Additionally, the processor joins the respective intermediary file list with the target file list and creates a finalized history list.
Opening claim text (preview).
The invention is claimed as follows: 1. A method comprising: building a preliminary history list of a plurality of commits including one or more intermediary commits and a target commit; instantiating a target file list of one or more files modified by the target commit; instantiating an intermediary file list for each intermediary commit; classifying each intermediary commit as one of an intersecting commit and an empty commit; responsive to classifying a respective intermediary commit as an empty commit, removing the respective intermediary commit from the preliminary history list to create a candidate history list; responsive to classifying a respective intermediary commit as an intersecting commit, retaining the respective intermediary commit in the candidate history list and joining the respective intermediary file list with the target file list; and creating a finalized history list by: traversing the candidate history list from an oldest commit to a newest commit; selecting a candidate commit from the commits in the candidate history list; removing the candidate commit from the history list and create a copy history list; traversing the copy history list and detect whether a failure occurs; responsive to a failure occurring, retain the candidate commit in the candidate history list to create the finalized history list; and responsive to a successful traversal of the copy history list, removing the candidate commit from the candidate history list. 2. The method of claim 1 , further comprising resolving merge conflicts for each commit in the history list. 3. The method of claim 2 , wherein resolving merge conflicts includes applying a patch and saving a reference to the patch commit hash. 4. The method of claim 1 , wherein the intermediary file list is a list of each file modified by a respective intermediary commit. 5. The method of claim 1 , further comprising applying a patch prior to creating the copy history list. 6. The method of claim 1 , further comprising saving a hash of a reference commit prior to building a preliminary history list. 7. The method of claim 1 , further comprising: traversing the candidate history list from an oldest commit to a newest commit; selecting a candidate commit from the commits in the candidate history list; removing the candidate commit from the candidate history list and create a copy history list; traversing the copy history list; cherry-picking the target commit and detect whether a failure occurs; and responsive to a failure occurring, resetting to a reference commit and cherry-picking a candidate commit from the candidate history list. 8. A system comprising: a memory; and a processor in communication with the memory and configured to: build a preliminary history list of a plurality of commits including one or more intermediary commits and a target commit, instantiate a target file list of one or more files modified by the target commit, instantiate an intermediary file list for each intermediary commit, classify each intermediary commit as one of an intersecting commit and an empty commit, responsive to classifying a respective intermediary commit as an empty commit, remove the respective intermediary commit from the preliminary history list to create a candidate history list, responsive to classifying a respective intermediary commit as an intersecting commit, retain the respective intermediary commit in the candidate history list, join the respective intermediary file list with the target file list, and create a finalized history list by: traversing the candidate history list from an oldest commit to a newest commit; selecting a candidate commit from the commits in the candidate history list; removing the candidate commit from the candidate history list and create a copy history list; traversing the copy history list and detect whether a failure occurs; responsive to a failure occurring, retain the candidate commit in the candidate history list to create the finalized history list; and responsive to a successful traversal of the copy history list, removing the candidate commit from the candidate history list in the finalized history list. 9. The system of claim 8 , wherein the processor is further configured to resolve a merge conflict for at least one commit in the preliminary history list. 10. The system of claim 9 , wherein the processor is configured to apply a patch to resolve the merge conflict prior to creating the finalized history list. 11. The system of claim 8 , wherein the intermediary file list is a list of each file modified by a respective intermediary commit. 12. The system of claim 8 , wherein the processor is further configured to apply a patch prior to creating the copy history list. 13. The system of claim 8 , wherein the processor is further configured to save a hash of a reference commit prior to building a preliminary history list. 14. The system of claim 13 , wherein the processor is configured to: traverse the candidate history list from an oldest commit to a newest commit, select a candidate commit from the commits in the candidate history list, remove the candidate commit from the candidate history list and create a copy history list, traverse the copy history list, cherry-pick the target commit and detect whether a failure occurs, and responsive to a failure occurring, reset to the reference commit and cherry-pick a candidate commit from the candidate history list. 15. The system of claim 14 , wherein the processor is configured to apply a patch while traversing the copy history list. 16. A non-transitory computer readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising: building a preliminary history list of a plurality of commits including one or more intermediary commits and a target commit; creating a candidate history list with a first subset of intermediary commits from the preliminary history list by: instantiating a target file list of one or more files modified by the target commit; instantiating an intermediary file list for each intermediary commit; classifying each intermediary commit as one of an intersecting commit and an empty commit; responsive to classifying a respective intermediary commit as an empty commit, removing the respective intermediary commit from the preliminary history list to create the candidate history list; and responsive to classifying a respective intermediary commit as an intersecting commit, retaining the respective intermediary commit in the candidate history list; creating a finalized history list with a second subset of intermediary commits from the candidate history list by: traversing the candidate history list from an oldest commit to a newest commit; selecting a candidate commit from the commits in the candidate history list; removing the candidate commit from the history list and create a copy history list; traversing the copy history list and detect whether a failure occurs; responsive to a failure occurring, retain the candidate commit in the candidate history list to create the finalized history list; and responsive to a successful traversal of the copy history list, removing the candidate commit from the candidate history list; and executing an updated release branch with commits from the finalized history list, wherein the finalized history list includes the target commit, and wherein the finalized history list includes less commits than the preliminary history list. 17. Th
in transactions (updating of structured data in databases G06F16/23) · CPC title
Version control (security arrangements therefor G06F21/57); Configuration management · CPC title
Classification techniques · CPC title
by performing operations on the source code, e.g. via a compiler · CPC title
Software maintenance or management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.