Skip to content

rm tag and add bvt case#23672

Merged
mergify[bot] merged 6 commits intomatrixorigin:mainfrom
Ariznawlll:rm_many_tag
Feb 6, 2026
Merged

rm tag and add bvt case#23672
mergify[bot] merged 6 commits intomatrixorigin:mainfrom
Ariznawlll:rm_many_tag

Conversation

@Ariznawlll
Copy link
Contributor

@Ariznawlll Ariznawlll commented Feb 4, 2026

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:

rm bvt tag and add bvt test

issue #
#3185
#3523
#4511
#4538
#4797
#4952
#5895
#5901
#5955
#7875
#7889
#7906
#15087
#10748
#23669

What this PR does / why we need it:

rm bvt tag and add bvt test


PR Type

Tests


Description


Diagram Walkthrough

flowchart LR
  A["BVT Tags<br/>in Test Files"] -- "Remove @bvt:issue<br/>and @skip:issue tags" --> B["Cleaned Test Files"]
  C["Old Result Format<br/>Tab-separated"] -- "Update to new format<br/>with type metadata" --> D["Standardized Results<br/>with ➤ and 𝄀 markers"]
  E["Unknown Results<br/>Marked as issue"] -- "Replace with actual<br/>expected values" --> F["Complete Test Results"]
  G["Disabled Test Cases"] -- "Enable and fix<br/>test data" --> H["Active Test Cases"]
  B --> I["Enhanced Test Suite"]
  D --> I
  F --> I
  H --> I
Loading

File Walkthrough

Relevant files
Tests
24 files
func_aggr_max.result
Update test result format with type metadata and formatting

test/distributed/cases/function/func_aggr_max.result

  • Updated test result output format to include column type metadata
    (e.g., [4,32,0] for INT type information)
  • Changed column separator from tab to pipe character (¦) with special
    formatting markers ( and 𝄀)
  • Modified one numeric result from
    9999999999999999999999999999999999.9999999999999 to
    10000000000000000000000000000000000.000 due to precision handling
  • Marked one result as [unknown result because it is related to
    issue#3344] for a complex query
+215/-222
func_substr.result
Standardize test result output format with type information

test/distributed/cases/function/func_substr.result

  • Updated all query result output to use new format with column type
    metadata in brackets
  • Changed column separator from tab to pipe character (¦) with
    formatting markers ( and 𝄀)
  • Applied consistent formatting across all substring, padding, and
    trimming function test results
+384/-384
distinct.result
Update DISTINCT test results with new output format           

test/distributed/cases/distinct/distinct.result

  • Updated all DISTINCT query results to use new output format with
    column type metadata
  • Changed column separators from tabs to pipe characters with formatting
    markers
  • Fixed one query result that previously showed error to now display
    actual results with type information
+109/-107
auto_increment.result
Replace unknown result markers with actual test expectations

test/distributed/cases/auto_increment/auto_increment.result

  • Removed [unknown result because it is related to issue#10834] and
    [unknown result because it is related to issue#10903] markers from
    multiple test cases
  • Added actual expected results for auto_increment tests that were
    previously marked as unknown
  • Updated CREATE TABLE output format to show CREATE TEMPORARY TABLE and
    reformatted schema display
  • Changed error message format from tae data: duplicate to Duplicate
    entry '100' for key 'a'
+63/-95 
auto_increment.sql
Remove BVT issue tags and add ignore directive                     

test/distributed/cases/auto_increment/auto_increment.sql

  • Removed @bvt:issue#7889 tag from auto_increment10 test case
  • Added @ignore:0 directive before select last_insert_id() statement
  • Removed trailing @bvt:issue tag marker
+1/-22   
atomicity_1.sql
Remove BVT tags and fix test data value                                   

test/distributed/cases/optimistic/atomicity_1.sql

  • Removed @bvt:issue#16438 tag from atomic_table_3a creation
  • Changed UPDATE statement value from col1=400 to col1=40
  • Removed trailing @bvt:issue tag marker
+1/-5     
system_table_cases_2.sql
Remove BVT tags and simplify system table test query         

test/distributed/cases/table/system_table_cases_2.sql

  • Removed @bvt:issue#5895 tag from UNION ALL query
  • Changed query from selecting all columns to selecting count(*) from
    statement_info
  • Added @ignore:0 directive before the query
  • Removed trailing @bvt:issue tag marker
+2/-5     
various_test.sql
Remove BVT skip and issue tags from temporary table tests

test/distributed/cases/table/temporary_table/various_test.sql

  • Removed @skip:issue#7889 tag from the beginning of the file
  • Removed @bvt:issue#7875 tag from load data section
  • Removed trailing @bvt:issue tag marker at end of file
  • Fixed file ending to properly terminate with newline
+1/-4     
like_operator.result
Enhanced LIKE operator test cases and result formatting   

test/distributed/cases/operator/like_operator.result

  • Updated test result output format with new metadata annotations (➤
    symbols and column type information)
  • Added 18 new test cases for LIKE operator with special characters (+,
    ., *, ?, parentheses)
  • Added 2 test cases marked as unknown results related to issue#23669
  • Reformatted all existing query results with consistent column
    alignment and metadata
+232/-192
decimal.result
Mark decimal test results as unknown for known issues       

test/distributed/cases/dtype/decimal.result

+48/-99 
system_table_cases_2.result
Standardize system table test result formatting                   

test/distributed/cases/table/system_table_cases_2.result

  • Updated COUNT(*) function result formatting with metadata annotations
  • Changed UNION query from selecting all columns to selecting count(*)
    only
  • Updated all COUNT() variations with consistent column type metadata
    format
+85/-85 
password.result
Reformat password security test results with metadata       

test/distributed/cases/security/password.result

  • Updated SHOW VARIABLES output with new metadata formatting (➤ symbols
    and column info)
  • Updated SELECT user_name results with consistent column alignment
  • Updated SLEEP() function results with metadata annotations
  • Reformatted all table output with pipe separators and column type
    information
+75/-75 
atomicity_1.result
Update atomicity test results with constraint violations and issue
markers

test/distributed/cases/optimistic/atomicity_1.result

+47/-42 
insert_with_function.result
Add unsigned integer overflow test and reformat insert function
results

test/distributed/cases/dml/insert/insert_with_function.result

  • Updated SELECT result formatting with metadata annotations (column
    type info)
  • Added new test case for inserting negative values into unsigned
    integer columns with expected data truncation error
  • Reformatted all table outputs with pipe separators and column metadata
+29/-27 
create_table_like.result
Fix temporary table creation and decimal type formatting 

test/distributed/cases/ddl/create_table_like.result

  • Added constraint violation error for null value in unique index column
  • Updated CREATE TABLE output to show CREATE TEMPORARY TABLE for
    temporary tables
  • Changed DECIMAL display format from DECIMAL(38) to DECIMAL(38,0) for
    consistency
  • Removed extra blank lines in output
[link]   
various_test.result
Restore missing test data output for temporary table operations

test/distributed/cases/table/temporary_table/various_test.result

  • Added actual data output for SELECT statements that were previously
    blank
  • Restored column headers and 7 rows of integer data for load/unload
    operations
  • Removed extra blank lines between statements
+24/-11 
func_aggr_max.test
Update date literal formatting and remove BVT tags             

test/distributed/cases/function/func_aggr_max.test

  • Changed date literal format from unquoted integers (20000101) to
    quoted strings ("20000101")
  • Removed @bvt:issue#3523 and @bvt:issue tag comments
  • Maintained test logic while updating data type handling
+4/-6     
like_operator.sql
Add comprehensive LIKE operator test cases for special characters

test/distributed/cases/operator/like_operator.sql

  • Added 18 new test cases for LIKE operator with special characters and
    patterns
  • Added issue marker comments for test cases related to issue#23669
  • Included tests for literal matching of +, ., *, ?, and parentheses
    characters
+18/-0   
create_table_like.sql
Remove BVT issue tags from create table like tests             

test/distributed/cases/ddl/create_table_like.sql

  • Removed @bvt:issue#7889 and @bvt:issue tag comments
  • Replaced BVT tags with blank lines
+2/-2     
insert_with_function.sql
Enable unsigned integer overflow test case                             

test/distributed/cases/dml/insert/insert_with_function.sql

  • Uncommented INSERT statement for negative values into unsigned integer
    columns
  • Removed @bvt:issue#4952 and @bvt:issue tag comments
  • Enabled test case that was previously disabled
+1/-3     
on_duplicate_key.sql
Reposition BVT issue marker in duplicate key test               

test/distributed/cases/dml/insert/on_duplicate_key.sql

  • Moved @bvt:issue#4423 comment to appear before the INSERT statement
    instead of after
  • Kept the test case enabled with issue marker
+1/-1     
text.test
Remove BVT tags and add table cleanup statement                   

test/distributed/cases/dtype/text.test

  • Removed @bvt:issue#4538 and @bvt:issue tag comments
  • Added drop table t1; statement to clean up after table creation test
+1/-2     
various_test2.result
Improve duplicate key error message specificity                   

test/distributed/cases/table/temporary_table/various_test2.result

  • Updated error message from generic tae data: duplicate to specific
    Duplicate entry '1' for key 'a'
  • Improved error message clarity for duplicate key constraint violation
+1/-1     
text.result
Update text type default value test output                             

test/distributed/cases/dtype/text.result

  • Changed error message from Type text don't support default value to
    drop table t1;
  • Updated expected output for text type default value test
+1/-1     
Additional files
11 files
test_tpch_query_cache.sql +0/-2     
distinct.sql +0/-2     
decimal.test +0/-2     
text_1.result +0/-3     
text_1.sql +0/-2     
func_if.test +0/-2     
func_substr.sql +0/-2     
password.sql +0/-2     
subquery-with-in.sql +0/-2     
various_test2.sql +0/-1     
time_window.sql +0/-4     

@Ariznawlll Ariznawlll requested a review from heni02 as a code owner February 4, 2026 06:11
@CLAassistant
Copy link

CLAassistant commented Feb 4, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


Ariznawl@163.com seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

@matrix-meow matrix-meow added the size/XXL Denotes a PR that changes 2000+ lines label Feb 4, 2026
@mergify mergify bot added the kind/bug Something isn't working label Feb 4, 2026
@qodo-code-review
Copy link

qodo-code-review bot commented Feb 4, 2026

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
🟡
🎫 #5955
🔴 Prevent a panic / nil-pointer dereference when inserting multiple rows into a table with a
UNIQUE key where one inserted unique-key value is NULL.
Ensure the INSERT succeeds and behavior matches MySQL for UNIQUE indexes with NULL values
(i.e., NULL allowed and not treated as a duplicate).
🟡
🎫 #4241
🔴 Implement faster custom Decimal64/Decimal128 arithmetic in C to improve performance versus
the current decNumber library.
Reduce the performance gap so decimal64/128 operations are closer to 5-10x slower than
double (instead of 50-100x).
🟡
🎫 #4952
Reject inserts into UNSIGNED integer columns when the value is out of range (instead of
silently altering the value, e.g., removing the minus sign).
Match expected MySQL-compatible behavior for out-of-range UNSIGNED inserts.
🟡
🎫 #7875
Prevent panic when running LOAD DATA into a temporary table.
Ensure LOAD DATA succeeds (or fails gracefully) without internal errors related to unknown
attrs (e.g., mo__meta_loc).
🟡
🎫 #4797
Fix incorrect behavior/error related to using an alias in GROUP BY (alias group by error).
🟡
🎫 #3280
🔴 Support implicit conversion (and equality comparison) between DOUBLE and DECIMAL so
statements like delete ... where a = 24.0000 work without "will be implemented in future"
errors.
🟡
🎫 #3364
Fix DECIMAL truncation/validation behavior so inserts that should be accepted (or
rejected) are handled correctly and consistently, including hex literal inputs like
0xFFFFFFFFFFFFFE.
Avoid incorrect "Incorrect DECIMAL128 value" truncation errors for valid inputs (per
expected behavior).
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status: Passed

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

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:
Error output exposure: The PR modifies security-related password test artifacts but the diff is not available
here to verify that no sensitive/internal error details are exposed in expected outputs.

Referred Code
-- @session:id=0&user=dump&password=111
-- Test cases for Group 0

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:
Sensitive data in logs: The PR updates password test result files but the diff is not shown, so it cannot be
verified that no secrets (passwords/tokens) appear in the captured outputs.

Referred Code
create user user1_group0 identified by '1234';
drop user if exists user1_group0;

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:
Security test changes: Because the diff for modified security-related SQL files is not included, it cannot be
confirmed that added/updated test statements do not introduce unsafe patterns (e.g.,
plaintext secrets or insecure handling) even in test-only contexts.

Referred Code
-- @session:id=0&user=dump&password=111
-- Test cases for Group 0

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 Feb 4, 2026

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
Possible issue
add missing metadata prefix

Add the missing output format markers (, type metadata, and 𝄀) to the numeric
result line to ensure consistent test output formatting.

test/distributed/cases/function/func_aggr_max.result [57]

-10000000000000000000000000000000000.000
+➤ 10000000000000000000000000000000000.000[3,38,3]  𝄀
  • Apply / Chat
Suggestion importance[1-10]: 7

__

Why: The suggestion correctly identifies that a result line is missing the new formatting introduced in the PR, and applying the change makes the test output consistent.

Medium
Remove incorrect LIKE operator test

Remove the incorrect test case SELECT "a+b" LIKE "a\+b"; as the pattern a\+b
would not match the string a+b in standard SQL.

test/distributed/cases/operator/like_operator.sql [21-25]

 SELECT "a+b" LIKE "a\+b";
 -- @bvt:issue#23669
 SELECT "a\+b" LIKE "a\\+b";
-SELECT "a+b" LIKE "a\\+b";
 -- @bvt:issue
  • Apply / Chat
Suggestion importance[1-10]: 5

__

Why: The suggestion correctly identifies a logically flawed test case for the LIKE operator, improving the quality and correctness of the test suite.

Low
Use integer literal for INT column

Replace the string literal '00' with the integer 0 in the INSERT statement to
match the INT type of the f1 column.

test/distributed/cases/function/func_aggr_max.result [455]

-insert into t1 values('00',2000,"20000101","2000-01-01 00:00:01");
+insert into t1 values(0,2000,"20000101","2000-01-01 00:00:01");
  • Apply / Chat
Suggestion importance[1-10]: 4

__

Why: The suggestion correctly points out that using a string literal '00' for an INT column relies on implicit casting, and changing it to an integer literal 0 improves type safety and portability.

Low
General
add missing row terminator

Append the end-of-row marker 𝄀 to the result line to conform to the new test
output format.

test/distributed/cases/function/func_substr.result [28]

-¦
+¦  𝄀
  • Apply / Chat
Suggestion importance[1-10]: 7

__

Why: The suggestion correctly identifies that a result line with an empty second column is missing the end-of-row marker 𝄀, and adding it ensures the test output format is consistent.

Medium
  • Update

@mergify
Copy link
Contributor

mergify bot commented Feb 6, 2026

Merge Queue Status

✅ The pull request has been merged at 59844bc

This pull request spent 56 minutes 9 seconds in the queue, including 55 minutes 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 59dbc55 into matrixorigin:main Feb 6, 2026
23 of 24 checks passed
@mergify mergify bot removed the queued label Feb 6, 2026
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 Review effort 4/5 size/XXL Denotes a PR that changes 2000+ lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants