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

Batch op in ls #104

Closed
wants to merge 240 commits into from
Closed

Batch op in ls #104

wants to merge 240 commits into from

Conversation

eemjwu
Copy link
Contributor

@eemjwu eemjwu commented Mar 1, 2024

Summary

add Mutation execute With LSBatch Op

Solution Description

in class ObTableClientLSBatchOpsImpl add "void addOperation(Mutation mutation)" to support a variety of operations do batch operation with ls

JLY2015 and others added 30 commits January 18, 2022 12:28
fix: update default java.version from 1.6 to 1.8
fix: update default java.version from 1.6 to 1.8
…ase#9)

Bumps [netty-all](https://github.com/netty/netty) from 4.1.13.Final to 4.1.42.Final.
- [Release notes](https://github.com/netty/netty/releases)
- [Commits](netty/netty@netty-4.1.13.Final...netty-4.1.42.Final)

---
updated-dependencies:
- dependency-name: io.netty:netty-all
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md)
- [Commits](junit-team/junit4@r4.12...r4.13.1)

---
updated-dependencies:
- dependency-name: junit:junit
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…se#7)

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 5.1.30 to 8.0.16.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](mysql/mysql-connector-j@5.1.30...8.0.16)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
oceanbase#6)

Bumps [spring-core](https://github.com/spring-projects/spring-framework) from 4.3.4.RELEASE to 4.3.21.RELEASE.
- [Release notes](https://github.com/spring-projects/spring-framework/releases)
- [Commits](spring-projects/spring-framework@v4.3.4.RELEASE...v4.3.21.RELEASE)

---
updated-dependencies:
- dependency-name: org.springframework:spring-core
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fix: update mysql-connector-java version to 5.1.49 and fastjson version to 1.2.79
bugfix: query async next need init before using resultSet
        Title: feat: table api client adapt to odp 

Task Description
table api client adapt to odp

Solution Description
odp-obkv design doc: https://yuque.antfin.com/docs/share/5e7ddc27-66d3-4063-b83d-175c797fb5b6?#XdNbq
odp-obkv  instruction for use: https://yuque.antfin.com/ob/odp/hlgtk5

Passed Regressions
passed all unit tests except stream query

Other Info
cherry-pick from https://code.alipay.com/alipay-data/oceanbase-table-client/pull_requests/147

leftover problem: stream query will throw `java.lang.IllegalArgumentException: Unknown Rpc command code value ,0` when calling next()
        Link: https://code.alibaba-inc.com/oceanbase/obkv-table-client-java/codereview/10262762
        Title: add trace log 

Task Description
add richer log print and classify log into four classes

`BOOT`: print during initialization
`RUNTIME`: print exception stack mainly
`MONITOR`: record the time cost of the request
`DEFAULT`: print route-related info


Solution Description

Passed Regressions
passed all unit tests except stream query

Other Info
cherry-pick from https://code.alipay.com/alipay-data/oceanbase-table-client/pull_requests/126
        Link: https://code.alibaba-inc.com/oceanbase/obkv-table-client-java/codereview/10371947
        Title: TableAPI Support QueryAndMutate 

TableAPI Support QueryAndMutate and QueryWithFilter.

Provide interface buildQueryFilterString() and appendQueryFilterString() for user to generate filter string, user now could use filter string to get the data from database with filter.

Also provide interface obTableQueryAndAppend() / obTableQueryAndIncrement() / obTableQueryAndDelete() / obTableQueryAndUpdate() for user to query then mutate.
        Link: https://code.alibaba-inc.com/oceanbase/obkv-table-client-java/codereview/10383906
        Title: Feat: refactor interface of filter 

## Link
https://yuque.antfin.com/docs/share/d480cb13-dd1c-49f1-8a3a-d90757df5434?

## brief
Create new class named 
1. obTableFilter
2. obTableValueFilter
3. obTableFilterList

### obTableFilter
```
public enum obTableFilter {
    public toString();
};
```

### obTableValueFilter
```
public class obTableValueFilter extends obTableFilter {
    private obCompareOp op;
    private String key;
    private String value;

    public obTableValueFilter(obCompareOp op, String key, String value);
    public obTableValueFilter(obCompareOp op, String key, int value);
    public obTableValueFilter(obCompareOp op, String key, long value);
    public void set(obCompareOp op, String key, String value);
    public void set(obCompareOp op, String key, int value);
    public void set(obCompareOp op, String key, long value);

    public String toString();
}
```

### obTableFilterList
```
public class obTableFilterList extends obTableFilter {
    public enum operator {
        AND, OR;
    };
    private operator op;
    private List<obTableFilter> filters;

    public obTableFilterList();
    public obTableFilterList(operator op);
    public obTableFilterList(operator op, obTableFilter... filter);

    // addFilter 用于添加 filter
    public addFilter(obTableFilter... filter):

    public String toString();
}
```
        Link: https://code.alibaba-inc.com/oceanbase/obkv-table-client-java/codereview/10523411
        Title: fix trace id and remove odp full username check 

Issue Description
1. the trace id format is not correct, which causes failure to login in some situations
2. cannot use username but full user name directly in odp mode


Fix Description
1. modify trace id accord the observer(323) rpc header format
2. remove full user name check in odp mode

Workaround

Upgrade Compatibility

Other Info
        Link: https://code.alibaba-inc.com/oceanbase/obkv-table-client-java/codereview/10507546
IHEII and others added 25 commits January 2, 2024 11:50
* support global index for obkv

* add test case: table with ttl column and global index

* fix: odp mode no need to get indextable name

* add rpc header flag: is_kv_request

* modify ci.sql, specify timestable column accuracy

* fix for reviews
* [Fix] refresh when truncate table

* [Chore] format

* [Fix] review
* [Fix] sub partition in query

* [Fix] reivew

* [Fix] reivew
* [Fix] time scale

* [Chore] format
* [Feat] dict column name

* [Feat] support isSamePropertiesNames in LS operation

* [Fix] payload size

* [Feat] auto isSamePropertiesNames

* [Fix] LSOp

* [Fix] review

* [Chore] format
@IHEII IHEII closed this May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.