Skip to content

Conversation

KKould
Copy link
Member

@KKould KKould commented Nov 9, 2024

What problem does this PR solve?

feat:

  • impl multiple primary keys
  • Update supports Set using expressions

fix:

  • primary key value position when declaring multiple primary keys(update & insert & delete)
  • decimal type conversion
  • the Eq expression of PushPredicateIntoScan must satisfy all index columns before it can be used
  • PrimaryKey index supplementary composite index type
  • Tuple deserialize may fail due to a large difference in the number of projection columns and table schema

chore:

  • remove ValueRef to reduce Arc usage
  • LogicType::Tuple type contains subtype information

Code changes

  • Has Rust code change
  • Has CI related scripts change

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Note for reviewer

fix:
- primary key value position when declaring multiple primary keys(update & insert & delete)
- decimal type conversion
- the `Eq` expression of `PushPredicateIntoScan` must satisfy all index columns before it can be used
- `PrimaryKey` index supplementary composite index type
- `Tuple` deserialize may fail due to a large difference in the number of projection columns and table schema
@KKould KKould self-assigned this Nov 9, 2024
@KKould KKould added bug Something isn't working enhancement New feature or request labels Nov 9, 2024
@KKould KKould mentioned this pull request Nov 9, 2024
48 tasks
@KKould KKould merged commit 104c230 into main Nov 10, 2024
6 checks passed
@KKould KKould deleted the feat/multiple_primary_keys branch November 10, 2024 08:46
@KKould KKould added this to the SQL 2016 milestone Jul 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant