Document the quirks of merge sequence
Test: no need
Change-Id: I6f802580e686737b24db2f4fe0b985225157d001
diff --git a/payload_generator/merge_sequence_generator.cc b/payload_generator/merge_sequence_generator.cc
index 7f5032b..6cbb57b 100644
--- a/payload_generator/merge_sequence_generator.cc
+++ b/payload_generator/merge_sequence_generator.cc
@@ -269,6 +269,11 @@
}
}
+ // Technically, we can use std::unordered_set or just a std::vector. but
+ // std::set gives the benefit where operations are sorted by dst blocks. This
+ // will ensure that operations that do not have dependency constraints appear
+ // in increasing block order. Such order would help snapuserd batch merges and
+ // improve boot time, but isn't strictly needed for correctness.
std::set<CowMergeOperation> free_operations;
for (const auto& op : operations_) {
if (incoming_edges.find(op) == incoming_edges.end()) {