mirror of
https://github.com/apple/foundationdb.git
synced 2025-06-01 10:45:56 +08:00
Fix test failure to BlobGranule due to missing private mutations
The change feed metadata mutations use \xff\x02/feed/ prefix, which was not considered as "metadata mutations", thus not sent to the resolvers. This makes the private mutation generation not possible for change feed if the knob PROXY_USE_RESOLVER_PRIVATE_MUTATIONS is on. Fix by making it a metadata mutation.
This commit is contained in:
parent
4fd414a8ed
commit
7cd5ef711d
@ -357,6 +357,7 @@ private:
|
||||
}
|
||||
toCommit->addTags(allSources);
|
||||
}
|
||||
TraceEvent(SevDebug, "SendingPrivatized_ChangeFeed", dbgid).detail("M", privatized);
|
||||
toCommit->writeTypedMessage(privatized);
|
||||
}
|
||||
}
|
||||
|
@ -72,8 +72,9 @@ inline bool isMetadataMutation(MutationRef const& m) {
|
||||
// FIXME: This is conservative - not everything in system keyspace is necessarily processed by
|
||||
// applyMetadataMutations
|
||||
if (m.type == MutationRef::SetValue) {
|
||||
return m.param1.size() && m.param1[0] == systemKeys.begin[0] &&
|
||||
!m.param1.startsWith(nonMetadataSystemKeys.begin);
|
||||
return (m.param1.size() && m.param1[0] == systemKeys.begin[0] &&
|
||||
!m.param1.startsWith(nonMetadataSystemKeys.begin)) ||
|
||||
m.param1.startsWith(changeFeedPrefix);
|
||||
} else if (m.type == MutationRef::ClearRange) {
|
||||
return m.param2.size() > 1 && m.param2[0] == systemKeys.begin[0] &&
|
||||
!nonMetadataSystemKeys.contains(KeyRangeRef(m.param1, m.param2));
|
||||
|
Loading…
x
Reference in New Issue
Block a user