Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add unique IDs to edges #1866

Merged
merged 1 commit into from
Dec 3, 2020
Merged

Conversation

jhasse
Copy link
Collaborator

@jhasse jhasse commented Oct 30, 2020

This is the first commit from #1210 by @colincross cherry-picked on master. I think unique edge IDs are a good idea not only for serialized build output, but for coming up with different build orders, too. Also memory address order isn't reliable.

Edges are nominally ordered by order in the build manifest, but in
fact are ordered by memory address.  In most cases the memory address
will be monontonically increasing.  Since serialized build output will
need unique IDs, add a monotonically increasing ID to edges, and use
that for sorting instead of memory address.
@jhasse jhasse mentioned this pull request Oct 30, 2020
@jhasse jhasse added this to the 1.11.0 milestone Oct 30, 2020
@jhasse jhasse merged commit 629f926 into ninja-build:master Dec 3, 2020
@jhasse jhasse deleted the unique-edge-ids branch December 4, 2020 12:15
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request Mar 21, 2022
Primarily for a deterministic and predictable build order:
ninja-build/ninja#1866

That PR hasn't landed in any official release yet.
kinke added a commit to symmetryinvestments/ldc that referenced this pull request May 16, 2022
ninja-build/ninja#2019, rebased onto latest
master (including ninja-build/ninja#1866 for
a deterministic and predictable build order, which hasn't landed in
any official release yet).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants