Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature(StoneDB 8.0): Fix codes aboout JoinType #543

Closed
andyli029 opened this issue Sep 22, 2022 · 0 comments
Closed

feature(StoneDB 8.0): Fix codes aboout JoinType #543

andyli029 opened this issue Sep 22, 2022 · 0 comments
Assignees
Labels
A-feature feature with good idea C-stonedb-8.0 associated with stonedb 8.0

Comments

@andyli029
Copy link
Contributor

andyli029 commented Sep 22, 2022

Is your feature request related to a problem? Please describe.

  1. in tianmu:
    enum class JoinType { JO_INNER, JO_LEFT, JO_RIGHT, JO_FULL };

  2. in mysql5.7, the jointype is in sql/table.h ,used to assigne value to TABLE_LIST::outer_join, outer_join is uint type.

#define JOIN_TYPE_LEFT    1
#define JOIN_TYPE_RIGHT 2

uint outer_join;

  1. in mysql8.0, TABLE_LIST::outer_join data type is bool
    bool outer_join{false};

  2. in tianmu
    JoinType JO_LEFT and JO_RIGHT is used to check if it is a left join and check CondType is ON_LEFT_FILTER ;
    JoinType JO_INNER and JO_FULL is used to check if it's CondType is ON_INNER_FILTER;

enum class CondType {
  WHERE_COND,
  HAVING_COND,
  ON_INNER_FILTER,
  ON_LEFT_FILTER,
  ON_RIGHT_FILTER,
  OR_SUBTREE,
  AND_SUBTREE
};

Describe the solution you'd like

So, juse use mysql8.0 TABLE_LIST::outer_join‘s boolean value to decides join type is(JO_LEFT / JO_RIGHT)or (JO_INNER and JO_FULL)

Describe alternatives you've considered

Additional context

@andyli029 andyli029 added A-feature feature with good idea C-stonedb-8.0 associated with stonedb 8.0 labels Sep 22, 2022
@lujiashun lujiashun changed the title StoneDB 8.0: Fix codes aboout JoinType feature(stonedb8.0): Fix codes aboout JoinType Sep 23, 2022
@lujiashun lujiashun changed the title feature(stonedb8.0): Fix codes aboout JoinType feature(StoneDB 8.0): Fix codes aboout JoinType Sep 23, 2022
lujiashun pushed a commit to lujiashun/stonedb that referenced this issue Sep 23, 2022
[summary]
1. adapt TABLE_LIST::outer_join data type changed from uint32(5.7) to bool(8.0).
lujiashun pushed a commit to lujiashun/stonedb that referenced this issue Sep 27, 2022
[summary]
1. adapt TABLE_LIST::outer_join data type changed from uint32(5.7) to bool(8.0).
lujiashun pushed a commit to lujiashun/stonedb that referenced this issue Sep 28, 2022
[summary]
1. adapt TABLE_LIST::outer_join data type changed from uint32(5.7) to bool(8.0).
mergify bot pushed a commit that referenced this issue Sep 28, 2022
[summary]
1. adapt TABLE_LIST::outer_join data type changed from uint32(5.7) to bool(8.0).
@RingsC RingsC closed this as completed Sep 28, 2022
@RingsC RingsC moved this to Done in StoneDB for MySQL 8.0 Sep 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-feature feature with good idea C-stonedb-8.0 associated with stonedb 8.0
Projects
Development

No branches or pull requests

3 participants