github-actions[bot] commented on code in PR #66092:
URL: https://github.com/apache/doris/pull/66092#discussion_r3655791286
##########
gensrc/proto/cloud.proto:
##########
@@ -1046,6 +1046,9 @@ message CommitTxnResponse {
repeated int64 versions = 5;
repeated TableStatsPB table_stats = 6;
optional int64 version_update_time_ms = 7;
+ // The lazy commit has only completed its first phase. FE must not notify
BE to make
+ // temporary rowsets visible until BE observes the final metadata from
meta-service.
+ optional bool is_lazy_commit_incomplete = 8;
Review Comment:
[P1] Make the safety signal fail closed across version skew
This optional field leaves both rolling-upgrade pairings on the unsafe path.
An old FE ignores field 8 when a new meta-service returns `OK` after phase two
fails, while a new FE reads the field as `false` from an old meta-service; the
new Java test's cleared-field branch exercises that latter behavior. With BE
promotion enabled, either pairing still sends
`MAKE_CLOUD_COMMITTED_RS_VISIBLE`, reaching duplicate-key or MoW cache
promotion before meta-service metadata is final—the race this patch is meant to
fix. Please negotiate response support in the request and ensure legacy callers
cannot receive an ordinary `OK` incomplete response (or add an equivalent
code-enforced upgrade gate), make a capable FE treat legacy absence as unsafe,
and cover both mixed-version cases in tests.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]