Skip to content

Conversation

@XuPeng-SH
Copy link
Contributor

@XuPeng-SH XuPeng-SH commented Dec 7, 2025

User description

What type of PR is this?

  • API-change
  • BUG
  • Improvement
  • Documentation
  • Feature
  • Test and CI
  • Code Refactoring

Which issue(s) this PR fixes:

issue #23222 #23221

What this PR does / why we need it:

  1. remove|optimize logging
  2. fix some UT

PR Type

Bug fix, Enhancement, Tests, Other


Description

  • Refactor logging system: Replace string-based logging with structured semantic message keys across multiple packages for better log searchability and filtering

  • Optimize SQL logging: Abbreviate long SQL strings in logs using commonutil.Abbreviate() to limit log size and improve readability

  • Disable internal operation logging: Add WithDisableLog() option to SQL execution calls for internal DDL, catalog, schema validation, and vector index operations

  • Consolidate utility functions: Move duplicate utility functions (Min, SubStringFromBegin, copyBytes, Abbreviate, CloneBytes) to common package and update all references

  • Standardize SQL formatting: Convert SQL keywords to uppercase (SELECT, UPDATE, DELETE, INSERT, DROP, etc.) across multiple files

  • Fix error handling: Correct variable shadowing in error handling, fix CPU profile return value, and improve error message formatting

  • Fix configuration: Correct configStatsGatherInterval default value from 15000 to 150000 milliseconds

  • Add comprehensive tests: New test files for logtail consumer, error constructors, byte cloning, string abbreviation, and partition state operations

  • Remove unused code: Delete unused imports, functions, and debug logging statements

  • Improve test synchronization: Enhance test clarity with better channel naming and buffering in multi-CN bug tests


Diagram Walkthrough

flowchart LR
  A["Logging Refactoring<br/>String-based → Semantic Keys"] --> B["Structured Logging<br/>with zap fields"]
  C["SQL Logging<br/>Long strings"] --> D["Abbreviated SQL<br/>commonutil.Abbreviate"]
  E["Duplicate Utilities<br/>Min, copyBytes, etc."] --> F["Common Package<br/>Consolidated functions"]
  G["Internal Operations<br/>DDL, Catalog, etc."] --> H["Disable Logging<br/>WithDisableLog option"]
  I["SQL Keywords<br/>Lowercase"] --> J["Standardized Format<br/>Uppercase keywords"]
  K["Bug Fixes<br/>Error handling, config"] --> L["Improved Reliability<br/>Correct behavior"]
  M["Test Coverage<br/>New test files"] --> N["Better Quality<br/>Comprehensive tests"]
Loading

File Walkthrough

Relevant files
Enhancement
15 files
ddl.go
Optimize logging and standardize SQL formatting in DDL operations

pkg/sql/compile/ddl.go

  • Replace c.runSql() calls with c.runSqlWithOptions() to disable logging
    for internal DDL operations
  • Standardize SQL keywords to uppercase (UPDATE, DELETE, INSERT, SELECT,
    DROP, etc.)
  • Abbreviate long SQL strings in error logs using
    commonutil.Abbreviate() to limit log size
  • Refactor error logging messages to use structured logging with
    semantic message keys
  • Remove unnecessary conditional checks before deleting index records
+78/-59 
logtail_consumer.go
Refactor logging to use structured semantic message keys 

pkg/vm/engine/disttae/logtail_consumer.go

  • Replace string-based logging with structured logging using semantic
    message keys (e.g., logtail.consumer.stopped)
  • Convert logutil.Infof(), logutil.Errorf(), logutil.Warnf() calls to
    use logutil.Info(), logutil.Error(), logutil.Warn() with zap fields
  • Simplify getLogTailServiceAddr() function logic and improve efficiency
  • Remove debug-level logging statement and unused logTag variable
    references
  • Add structured fields for better log searchability and filtering
+124/-68
engine.go
Clean up logging and remove unused imports in engine         

pkg/vm/engine/disttae/engine.go

  • Remove unused import github.com/matrixorigin/matrixone/pkg/util/stack
  • Refactor logging calls to use semantic message keys and structured
    fields
  • Remove debug logging in Delete() function that was conditional on
    database name
  • Improve error message formatting in GetRelationById() function
  • Standardize log field names to use hyphens (e.g., table-id instead of
    tableId)
+61/-37 
mo_table_stats.go
Standardize logging format and semantic message keys         

pkg/vm/engine/disttae/mo_table_stats.go

  • Change log header from MO-TABLE-STATS-TASK to mo.table.stats.task for
    consistency
  • Refactor logging calls to use semantic action keys instead of
    descriptive strings
  • Standardize log field names to use hyphens and shorter names (e.g.,
    action, takes, state)
  • Improve log message consistency across multiple functions
+80/-55 
pub_sub.go
Disable logging for internal pub/sub catalog operations   

pkg/sql/compile/pub_sub.go

  • Add WithDisableLog() option to SQL execution calls for internal
    catalog operations
  • Reformat SQL queries to use uppercase keywords and multi-line
    formatting for readability
  • Use runSqlWithResultAndOptions() and runSqlWithAccountIdAndOptions()
    methods
  • Improve SQL query structure with proper indentation and line breaks
+75/-16 
build_show.go
Standardize SQL keywords and fix defer ordering                   

pkg/sql/plan/build_show.go

  • Standardize SQL keywords to uppercase (SELECT, AS, FROM, WHERE, LEFT
    JOIN, CASE, WHEN, THEN, ELSE, END)
  • Reorder defer newStmt.Free() to execute after error check in
    returnByRewriteSQL()
  • Improve SQL query formatting consistency
+6/-6     
scope.go
Abbreviate SQL logging and standardize keywords                   

pkg/sql/compile/scope.go

  • Add import for commonutil package
  • Replace SQL string logging with abbreviated version using
    commonutil.Abbreviate()
  • Standardize SQL keywords to uppercase (DELETE, FROM, WHERE)
+4/-3     
upgrade_strategy.go
Disable logging for internal schema validation queries     

pkg/bootstrap/versions/upgrade_strategy.go

  • Add WithDisableLog() option to SQL execution calls in
    CheckTableColumn(), CheckViewDefinition(), and CheckTableDefinition()
  • Suppress logging for internal schema validation queries
+3/-3     
sqlexec.go
Disable logging for internal vector index operations         

pkg/vectorindex/sqlexec/sqlexec.go

  • Add WithStatementOption(executor.StatementOption{}.WithDisableLog())
    to SQL execution options in RunSql() and RunStreamingSql() functions
  • Suppress logging for internal vector index operations
+8/-4     
partition_state.go
Standardize partition state logging message keys                 

pkg/vm/engine/disttae/logtailreplay/partition_state.go

  • Change log message keys from uppercase with hyphens (e.g., PS-CREATED)
    to lowercase with dots (e.g., partition.state.created)
  • Standardize logging format across partition state operations (GC,
    truncate, etc.)
+4/-4     
compile.go
Abbreviate SQL logging and disable internal operation logs

pkg/sql/compile/compile.go

  • Add import for commonutil package
  • Replace SQL string logging with abbreviated version using
    commonutil.Abbreviate()
  • Add WithDisableLog() option to internal FK detection SQL execution
    calls
+4/-3     
fuzzyCheck.go
Disable logging for background fuzzy check SQL                     

pkg/sql/compile/fuzzyCheck.go

  • Added import for executor package
  • Changed runSqlWithResult call to runSqlWithResultAndOptions with
    DisableLog() option to suppress logging for background SQL checks
+2/-1     
bytes.go
Add byte slice cloning utility functions                                 

pkg/common/util/bytes.go

  • New utility file with CloneBytesIf function for conditional byte slice
    copying
  • Added CloneBytes function for unconditional byte slice copying
+41/-0   
string.go
Add string abbreviation utility function                                 

pkg/common/util/string.go

  • New utility file with Abbreviate function to truncate strings with
    ellipsis
  • Supports special length values: -1 for full string, 0 for empty
    string, positive for truncation
+38/-0   
error_no_ctx.go
Refactor error creation with format string support             

pkg/common/moerr/error_no_ctx.go

  • Added import for errutil package
  • Refactored NewTxnStaleNoCtx to NewTxnStaleNoCtxf with format string
    and variadic arguments
  • Added context wrapping with errutil.ContextWithNoReport to suppress
    error reporting
+8/-2     
Refactoring
20 files
error.go
Refactor error constructors for consistency and efficiency

pkg/common/moerr/error.go

  • Refactor error constructor functions to call newError() directly
    instead of intermediate functions
  • Improve consistency in error message formatting by extracting
    fmt.Sprintf() results to variables
  • Add errutil.ContextWithNoReport() wrapper for NewUnsupportedDML() to
    prevent error reporting
  • Remove unused NewDataTruncated() function (replaced by
    NewDataTruncatedf())
+57/-33 
mysql_cmd_executor.go
Consolidate utility function imports and usage                     

pkg/frontend/mysql_cmd_executor.go

  • Rename import alias from util to commonutil for clarity
  • Replace SubStringFromBegin() calls with commonutil.Abbreviate() for
    consistent string truncation
  • Replace util.UnsafeBytesToString() with
    commonutil.UnsafeBytesToString()
  • Replace util.EncodeUUIDHex() with commonutil.EncodeUUIDHex()
+11/-11 
util.go
Remove duplicate utility functions and consolidate imports

pkg/frontend/util.go

  • Remove Min() function (use built-in or external alternative)
  • Remove Timeout struct and related methods (unused)
  • Remove SubStringFromBegin() function (replaced by
    commonutil.Abbreviate())
  • Remove copyBytes() function (replaced by commonutil.CloneBytesIf())
  • Update import alias to commonutil for consistency
  • Refactor logStatementStringStatus() function signature for clarity
+19/-92 
output.go
Replace local copyBytes with common utility function         

pkg/frontend/output.go

  • Add import for commonutil package
  • Replace copyBytes() calls with commonutil.CloneBytesIf() for byte
    array handling
  • Standardize byte cloning logic across multiple functions
+7/-6     
mysql_protocol_test.go
Use built-in min function instead of custom Min                   

pkg/frontend/mysql_protocol_test.go

  • Replace Min() function call with min() built-in function
+1/-1     
catalog.go
Refactor logging with semantic message keys                           

pkg/vm/engine/disttae/cache/catalog.go

  • Removed unused time import
  • Refactored log messages to use structured logging with semantic
    message keys (catalog.cache.update.start.end,
    catalog.cache.update.start)
  • Improved log formatting with proper indentation and trailing commas
+8/-8     
txn_table.go
Optimize SQL logging and remove debug statements                 

pkg/vm/engine/disttae/txn_table.go

  • Wrapped SQL string with commonUtil.Abbreviate(sql, 500) to truncate
    long SQL in logs
  • Commented out debug logging block for mo_columns partition state
  • Updated log message keys to semantic format
    (table.get.snapshot.state.succeed, table.get.snapshot.state.failed)
+11/-12 
compile2.go
Truncate SQL in logs using common utility                               

pkg/sql/compile/compile2.go

  • Added import for commonutil package
  • Wrapped SQL strings with commonutil.Abbreviate(c.sql, 500) in error
    and info logs
  • Improved log statement formatting with proper indentation
+11/-3   
util.go
Replace custom copyBytes with vector CloneBytesAt method 

pkg/cdc/util.go

  • Replaced copyBytes(vec.GetBytesAt(rowIndex)) with
    vec.CloneBytesAt(rowIndex) for JSON type
  • Replaced copyBytes(vec.GetBytesAt(rowIndex)) with
    vec.CloneBytesAt(rowIndex) for string/binary types
+2/-12   
batch_processor.go
Refactor logging with semantic message keys                           

pkg/util/export/batch_processor.go

  • Updated log message keys to semantic format (logger.aggr.start,
    logger.aggr.handle.count, logger.aggr.bgctx.done,
    logger.aggr.ctx.done, logger.aggr.exit)
  • Removed zap.Time("end", end) field from aggregation log
  • Renamed log field from records to count
+6/-7     
data_branch.go
Optimize vector byte operations and comparisons                   

pkg/frontend/data_branch.go

  • Replaced copyBytes(vec.GetBytesAt(...), false) with direct
    vec.GetBytesAt(...) for JSON comparison
  • Changed JSON comparison from types.CompareValue to
    bytejson.CompareByteJson
  • Replaced copyBytes calls with direct bytes.Compare for string/binary
    type comparison
+7/-6     
server.go
Refactor profile logging with semantic keys                           

pkg/cnservice/server.go

  • Refactored error logging from logutil.Errorf to structured
    logutil.Error with semantic keys
  • Updated log message keys to semantic format
    (profile.save.runtime.failed, profile.writer.close.failed,
    profile.save.get.ok, profile.save.failed)
  • Improved log formatting with proper indentation
+19/-4   
sql_executor.go
Truncate SQL in logs using common utility                               

pkg/sql/compile/sql_executor.go

  • Added import for commonutil package
  • Wrapped SQL strings with commonutil.Abbreviate(sql, 500) in error and
    info logs
  • Removed inline SQL truncation logic in favor of utility function
+3/-6     
server_query.go
Use common utility for byte cloning                                           

pkg/cnservice/server_query.go

  • Added import for commonUtil package
  • Removed local copyBytes function definition
  • Updated copyTxnMeta to use commonUtil.CloneBytes instead of local
    copyBytes
+2/-7     
blocks_iter.go
Remove logging and use error formatting function                 

pkg/vm/engine/disttae/logtailreplay/blocks_iter.go

  • Removed unused fmt import
  • Removed unused logutil import
  • Replaced logutil.Infof call and manual error message formatting with
    moerr.NewTxnStaleNoCtxf function call
+5/-6     
func_mo.go
Truncate SQL in subscription logging                                         

pkg/sql/plan/function/func_mo.go

  • Added import for commonutil package
  • Wrapped SQL string with commonutil.Abbreviate(sql, 500) in
    subscription logging
+2/-1     
table_scanner.go
Truncate SQL in cleanup logging                                                   

pkg/cdc/table_scanner.go

  • Added import for commonutil package
  • Wrapped SQL string with commonutil.Abbreviate(sql, 500) in cleanup
    logging
+2/-1     
cron_task.go
Refactor storage usage logging with semantic keys               

pkg/util/metric/mometric/cron_task.go

  • Refactored log message to use semantic key storage_usage.new_account
  • Updated field names to use hyphens (account_idname, sizeMB
    size-mb, snapshotSizeMBsnapshot-mb, createdTimecreated-time)
  • Improved log formatting with proper indentation
+7/-3     
mysql_buffer.go
Use built-in min function instead of custom Min                   

pkg/frontend/mysql_buffer.go

  • Changed function call from Min to min (lowercase) for built-in minimum
    function
+1/-1     
partition.go
Refactor partition truncate logging key                                   

pkg/vm/engine/disttae/logtailreplay/partition.go

  • Updated log message key from PS-Truncate to semantic format
    partition.state.truncate
+1/-1     
Tests
8 files
logtail_consumer_test.go
Add comprehensive unit tests for logtail consumer               

pkg/vm/engine/disttae/logtail_consumer_test.go

  • Add new test file with comprehensive test cases for routine controller
    send methods
  • Test initialization of routineController with object pools
  • Verify command creation and channel operations for
    subscribe/unsubscribe responses
  • Test table logtail and time update command creation
  • Add tests for command action creation and basic properties
+232/-0 
multi_cn_bug_test.go
Improve test synchronization and error handling clarity   

pkg/queryservice/multi_cn_bug_test.go

  • Rename channel variable from connectionErrorOccurred to
    connectionErrorProcessed for clarity
  • Change channel from unbuffered to buffered (size 1) to avoid blocking
  • Improve comments explaining event-based synchronization and error
    handling
  • Add handling for case where RequestMultipleCn completes before
    connection error is processed
  • Clarify timing of error processing in the main loop
+23/-13 
bytes_test.go
Add unit tests for CloneBytesIf utility function                 

pkg/common/util/bytes_test.go

  • Add new test file for CloneBytesIf() function
  • Test cases for empty and non-empty byte slices with both needCopy=true
    and needCopy=false
  • Verify slice independence when copying and reference equality when not
    copying
  • Test modification isolation between original and copied slices
+88/-0   
error_test.go
Add comprehensive error constructor test coverage               

pkg/common/moerr/error_test.go

  • Add new test function Test_ForCoverage() to test various error
    constructor functions
  • Test error creation and validation for multiple error types
    (constraint violation, transaction errors, dragonboat errors, TAE
    errors)
  • Improve code coverage for error handling functions
+60/-0   
util_test.go
Update tests to use common utility functions                         

pkg/frontend/util_test.go

  • Added import for commonutil package
  • Renamed test function from Test_MinMax to Test_Max and removed Min
    test cases
  • Removed Test_timeout function entirely
  • Updated Test_substringFromBegin to use commonutil.Abbreviate instead
    of local SubStringFromBegin
+3/-15   
string_test.go
Add comprehensive tests for Abbreviate function                   

pkg/common/util/string_test.go

  • New test file for Abbreviate function with comprehensive test cases
  • Tests cover normal truncation, edge cases (empty string, exact length,
    negative lengths), and long strings
+53/-0   
util_test.go
Update test to use common utility function                             

pkg/cdc/util_test.go

  • Added import for commonutil package
  • Updated Test_copyBytes to use commonutil.CloneBytes instead of local
    copyBytes function
+2/-1     
blocks_iter_test.go
Add test for partition state new blocks iterator                 

pkg/vm/engine/disttae/logtailreplay/blocks_iter_test.go

  • Added new test function TestPartitionState_NewBlocksIter to verify
    error handling when snapshot is before partition state start time
+7/-0     
Bug fix
3 files
debug.go
Optimize logging and improve CPU profile error handling   

cmd/mo-service/debug.go

  • Refactored log message to use semantic key save.profiles.loop.started
    with structured fields
  • Removed redundant log statements for profile save start/end
  • Added error handling for CPU profile generation when already in use
  • Fixed return value in genCpuProfile to return nil instead of err on
    success
+16/-5   
table_space.go
Fix error handling and remove debug logging                           

pkg/vm/engine/tae/txn/txnimpl/table_space.go

  • Fixed variable naming in error handling: errerr2 to avoid shadowing
  • Commented out debug log statement for CreateObject operation
+4/-4     
config.go
Fix stats gather interval configuration                                   

pkg/util/metric/config.go

  • Fixed configStatsGatherInterval default value from 15000 to 150000
    milliseconds (15 seconds)
+1/-1     
Formatting
2 files
util.go
Format function signature                                                               

pkg/vm/engine/disttae/util.go

  • Improved code formatting of execReadSql function signature with proper
    indentation
+6/-1     
matcher.go
Standardize SQL keyword to uppercase                                         

pkg/sql/plan/tools/matcher.go

  • Changed SQL keyword from lowercase select to uppercase SELECT in
    parseSql function
+1/-1     
Additional files
3 files
show_account.go +0/-2     
stats_log_writer.go +0/-37   
stats_log_writer_test.go +0/-202 

@qodo-code-review
Copy link

qodo-code-review bot commented Dec 7, 2025

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status:
Raw SQL strings: New code continues to construct SQL with string formatting (e.g., UPDATE/DELETE
statements) which may be safe in context but lacks visible parameterization, requiring
verification that inputs are trusted or sanitized.

Referred Code
updatePitrSql := fmt.Sprintf("UPDATE `%s`.`%s` SET `%s` = %d, `%s` = %d WHERE `%s` = %d AND `%s` = '%s' AND `%s` = %d AND `%s` = %s",
	catalog.MO_CATALOG, catalog.MO_PITR,
	catalog.MO_PITR_STATUS, 0,
	catalog.MO_PITR_CHANGED_TIME, now,

	catalog.MO_PITR_ACCOUNT_ID, accountId,

Learn more about managing compliance generic rules or creating your own custom rules

  • Update
Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@qodo-code-review
Copy link

qodo-code-review bot commented Dec 7, 2025

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
Possible issue
Use defer to prevent resource leaks

Use defer objH.Close() to ensure the object handle is always closed, preventing
potential resource leaks in case of a panic.

pkg/vm/engine/tae/txn/txnimpl/table_space.go [172-179]

 			objH, err2 := space.table.CreateObject(space.isTombstone)
 			if err2 != nil {
 				return err2
 			}
+			defer objH.Close()
 			appender = space.tableHandle.SetAppender(objH.Fingerprint())
 			// logutil.Info("CreateObject", zap.String("objH", appender.GetID().ObjectString()), zap.String("txn", node.GetTxn().String()))
-			objH.Close()

[To ensure code accuracy, apply this suggestion manually]

Suggestion importance[1-10]: 7

__

Why: The suggestion correctly points out a potential resource leak by using defer objH.Close() to ensure the handle is closed even if a panic occurs.

Medium
General
Improve goroutine synchronization with channel

Replace the buffered channel connectionErrorProcessed with an unbuffered channel
and use close() to signal the event, providing a more robust and idempotent
synchronization mechanism.

pkg/queryservice/multi_cn_bug_test.go [561-563]

-		// Event-based synchronization: signal when connection error is processed by main loop
-		// Use a buffered channel to avoid blocking if signal is sent before we wait
-		connectionErrorProcessed := make(chan struct{}, 1)
+		// Event-based synchronization: signal when connection error is processed by main loop.
+		// Closing the channel broadcasts the event to all waiting goroutines and is idempotent.
+		connectionErrorProcessed := make(chan struct{})
  • Apply / Chat
Suggestion importance[1-10]: 4

__

Why: The suggestion offers a valid alternative for event signaling by closing a channel, which can be more robust for broadcasting. However, the existing buffered channel of size 1 is sufficient and correct for this specific test's logic, where only one signal is expected.

Low
Simplify function logic for better readability

Simplify the Abbreviate function by using more direct conditional checks to
improve readability and conciseness.

pkg/common/util/string.go [24-38]

 func Abbreviate(str string, length int) string {
-	if length == 0 || length < -1 {
+	if length <= 0 && length != -1 {
 		return ""
 	}
 
-	if length == -1 {
+	if length == -1 || len(str) <= length {
 		return str
 	}
 
-	l := min(len(str), length)
-	if l != len(str) {
-		return str[:l] + "..."
-	}
-	return str[:l]
+	return str[:length] + "..."
 }
  • Apply / Chat
Suggestion importance[1-10]: 4

__

Why: The suggestion correctly refactors the Abbreviate function to be more concise and readable by simplifying the conditional logic.

Low
Simplify function by removing redundant check

Simplify the CloneBytes function by removing the redundant if len(src) > 0
check, as the logic works correctly for zero-length slices without it.

pkg/common/util/bytes.go [33-41]

 // new copy of the slice
 func CloneBytes(src []byte) []byte {
-	if len(src) > 0 {
-		ret := make([]byte, len(src))
-		copy(ret, src)
-		return ret
-	}
-	return make([]byte, 0)
+	ret := make([]byte, len(src))
+	copy(ret, src)
+	return ret
 }
  • Apply / Chat
Suggestion importance[1-10]: 3

__

Why: The suggestion correctly identifies a redundant check and proposes a more concise and idiomatic implementation for the CloneBytes function.

Low
  • Update

@mergify mergify bot added the queued label Dec 8, 2025
@mergify
Copy link
Contributor

mergify bot commented Dec 8, 2025

Merge Queue Status

✅ The pull request has been merged at afb6780

This pull request spent 56 minutes 16 seconds in the queue, including 56 minutes 7 seconds running CI.
The checks were run in-place.

Required conditions to merge
  • #approved-reviews-by >= 1 [🛡 GitHub branch protection]
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • branch-protection-review-decision = APPROVED [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Compose CI / multi cn e2e bvt test docker compose(PESSIMISTIC)
    • check-neutral = Matrixone Compose CI / multi cn e2e bvt test docker compose(PESSIMISTIC)
    • check-skipped = Matrixone Compose CI / multi cn e2e bvt test docker compose(PESSIMISTIC)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Standlone CI / Multi-CN e2e BVT Test on Linux/x64(LAUNCH, PROXY)
    • check-neutral = Matrixone Standlone CI / Multi-CN e2e BVT Test on Linux/x64(LAUNCH, PROXY)
    • check-skipped = Matrixone Standlone CI / Multi-CN e2e BVT Test on Linux/x64(LAUNCH, PROXY)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH, PESSIMISTIC)
    • check-neutral = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH, PESSIMISTIC)
    • check-skipped = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH, PESSIMISTIC)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone CI / SCA Test on Ubuntu/x86
    • check-neutral = Matrixone CI / SCA Test on Ubuntu/x86
    • check-skipped = Matrixone CI / SCA Test on Ubuntu/x86
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone CI / UT Test on Ubuntu/x86
    • check-neutral = Matrixone CI / UT Test on Ubuntu/x86
    • check-skipped = Matrixone CI / UT Test on Ubuntu/x86
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Compose CI / multi cn e2e bvt test docker compose(Optimistic/PUSH)
    • check-neutral = Matrixone Compose CI / multi cn e2e bvt test docker compose(Optimistic/PUSH)
    • check-skipped = Matrixone Compose CI / multi cn e2e bvt test docker compose(Optimistic/PUSH)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH,Optimistic)
    • check-neutral = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH,Optimistic)
    • check-skipped = Matrixone Standlone CI / e2e BVT Test on Linux/x64(LAUNCH,Optimistic)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Upgrade CI / Compatibility Test With Target on Linux/x64(LAUNCH)
    • check-neutral = Matrixone Upgrade CI / Compatibility Test With Target on Linux/x64(LAUNCH)
    • check-skipped = Matrixone Upgrade CI / Compatibility Test With Target on Linux/x64(LAUNCH)
  • any of [🛡 GitHub branch protection]:
    • check-success = Matrixone Utils CI / Coverage
    • check-neutral = Matrixone Utils CI / Coverage
    • check-skipped = Matrixone Utils CI / Coverage

@mergify mergify bot merged commit 5cdd930 into matrixorigin:main Dec 8, 2025
19 checks passed
@mergify mergify bot removed the queued label Dec 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind/bug Something isn't working kind/refactor Code refactor Review effort 3/5 size/XL Denotes a PR that changes [1000, 1999] lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants