Skip to content

Commit 8ee1f63

Browse files
committed
prepare 0.51.0-public
1 parent 39f2ec1 commit 8ee1f63

File tree

4 files changed

+158
-1
lines changed

4 files changed

+158
-1
lines changed

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,27 @@
11
# Changelog
2+
## [0.51.0-public] - 2024-12-05
3+
### Features
4+
- **MapReduce** Supports multi pipeline output.
5+
- **VolumeBuilder** Added the `accelerate` method to speed up the download process using dragonfly when the external volume is too large.
6+
- **Table** Introduced `TableType OBJECT_TABLE` and the method `isObjectTable` to verify it.
7+
- **Project** The `list` method now includes a filter condition `enableDr` to filter projects based on whether data disaster recovery is enabled.
8+
- **Cluster** New fields added: `clusterRole`, `jobDataPath`, and `zoneId`.
9+
10+
### Changes
11+
- **TableBatchReadSession** The `predicate` class variable is now set to transient.
12+
- **Attribute** added escaping logic and will no longer double quote.
13+
- **SQLTask** Restored the `SQLTask.run(Odps odps, String project, String sql, String taskName, Map<String, String> hints, Map<String, String> aliases, int priority)` method removed in version 0.49.0 to resolve potential interface conflicts when users' MR jobs depend on older versions of the SDK.
14+
15+
### Fixes
16+
- **Table.changeOwner** Fixed SQL spelling error.
17+
- **Instance.getTaskSummary** Removed unreasonable debug logging introduced since version 0.50.2.
18+
- **TruncTime** Uses backticks to quote `columnName` during table creation/toString.
19+
> **Note:** This version also includes all changes from "0.51.0-public.rc0" and "0.51.0-public.rc1".
20+
21+
## [0.50.6-public] - 2024-11-27
22+
### Features
23+
- **Logview** Added support for Logview V2, which ensures data security. It can be created using `new Logview(odps, 2)`, and SQLExecutor specifies the version through the `logviewVersion` method.
24+
225
## [0.51.0-public.rc1] - 2024-11-22
326
### Features and Changes
427
- **Column** `ColumnBuilder` adds a new `withGenerateExpression` method for constructing auto-partition columns

CHANGELOG_CN.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,27 @@
11
# 更新日志
2+
## [0.51.0-public] - 2024-12-05
3+
4+
### 功能
5+
- **MapReduce** 支持多重管道输出 (multi pipeline output)。
6+
- **VolumeBuilder** 新增 `accelerate` 方法,用于在 external volume 过大时,使用 dragonfly 加速下载过程。
7+
- **Table** 新增 `TableType OBJECT_TABLE` 和判断方法 `isObjectTable`
8+
- **Project** `list` 方法增加过滤条件 `enableDr`,用于过滤项目是否开启存储容灾。
9+
- **Cluster** 新增字段 `clusterRole``jobDataPath``zoneId`
10+
11+
### 变更
12+
- **TableBatchReadSession** 类变量 `predicate` 现在设置为 transient。
13+
- **Attribute** 增加转义逻辑,并不再会 double quote。
14+
- **SQLTask** 恢复了在 0.49.0 版本移除的 `SQLTask.run(Odps odps, String project, String sql, String taskName, Map<String, String> hints, Map<String, String> aliases, int priority)` 方法,以解决用户的 MR 作业依赖老版本 SDK 时可能发生的接口冲突问题。
15+
16+
### 修复
17+
- **Table.changeOwner** 修复 SQL 拼写错误。
18+
- **Instance.getTaskSummary** 移除自 0.50.2 版本开始的不合理打印的 debug 日志。
19+
- **TruncTime** 在建表/toString 时,使用反引号对 `columnName` 进行 quote。
20+
> **注意:** 此版本还包括“0.51.0-public.rc0”和“0.51.0-public.rc1”的所有更改。
21+
22+
## [0.50.6-public] - 2024-11-27
23+
- **Logview** 新增对 Logview V2 的支持,V2 版本保障了数据安全。可以通过 `new Logview(odps, 2)` 创建,SQLExecutor 通过 `logviewVersion` 方法指定。
24+
225
## [0.51.0-public.rc1] - 2024-11-22
326
### 功能与变更
427
- **Column** `ColumnBuilder` 新增 `withGenerateExpression` 方法,用于构造 auto-partition 列

docs/docs/changelog.md

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,117 @@ sidebar_position: 6
44
---
55

66
# 更新日志
7+
## [0.51.0-public] - 2024-12-05
8+
9+
### 功能
10+
- **MapReduce** 支持多重管道输出 (multi pipeline output)。
11+
- **VolumeBuilder** 新增 `accelerate` 方法,用于在 external volume 过大时,使用 dragonfly 加速下载过程。
12+
- **Table** 新增 `TableType OBJECT_TABLE` 和判断方法 `isObjectTable`
13+
- **Project** `list` 方法增加过滤条件 `enableDr`,用于过滤项目是否开启存储容灾。
14+
- **Cluster** 新增字段 `clusterRole``jobDataPath``zoneId`
15+
16+
### 变更
17+
- **TableBatchReadSession** 类变量 `predicate` 现在设置为 transient。
18+
- **Attribute** 增加转义逻辑,并不再会 double quote。
19+
- **SQLTask** 恢复了在 0.49.0 版本移除的 `SQLTask.run(Odps odps, String project, String sql, String taskName, Map<String, String> hints, Map<String, String> aliases, int priority)` 方法,以解决用户的 MR 作业依赖老版本 SDK 时可能发生的接口冲突问题。
20+
21+
### 修复
22+
- **Table.changeOwner** 修复 SQL 拼写错误。
23+
- **Instance.getTaskSummary** 移除自 0.50.2 版本开始的不合理打印的 debug 日志。
24+
- **TruncTime** 在建表/toString 时,使用反引号对 `columnName` 进行 quote。
25+
> **注意:** 此版本还包括“0.51.0-public.rc0”和“0.51.0-public.rc1”的所有更改。
26+
27+
## [0.50.6-public] - 2024-11-27
28+
- **Logview** 新增对 Logview V2 的支持,V2 版本保障了数据安全。可以通过 `new Logview(odps, 2)` 创建,SQLExecutor 通过 `logviewVersion` 方法指定。
29+
30+
## [0.51.0-public.rc1] - 2024-11-22
31+
### 功能与变更
32+
- **Column** `ColumnBuilder` 新增 `withGenerateExpression` 方法,用于构造 auto-partition 列
33+
- **TableSchema**
34+
- 新增 `generatePartitionSpec` 方法,用于从`Record`中生成分区信息
35+
- `setPartitionColumns` 方法现在接收`List<Column>`,而不是`ArrayList<Column>`
36+
- **TableCreator**
37+
- 新增对`GenerateExpression`的支持,新增方法`autoPartitionBy`,现在可以创建 AutoPartition 表了
38+
- 新增对`ClusterInfo`的支持,现在可以创建 Hash/Range Cluster 表了
39+
- 新增指定 `TableFormat`,现在可以指定创建`APPEND`,`TRANSACTION`,`DELTA`,`EXTERNAL`,`VIEW`格式的表
40+
- 新增`selectStatement`参数,用于`create table as``create view as` 场景
41+
- 新增`getSql`方法,用于获取创建表的 SQL 语句
42+
- 现在会对所有的 `Comment` 参数进行 quote,以支持包含特殊字符的 `Comment` 参数
43+
- 将 DataHub 相关的建表参数(`hubLifecycle`, `shardNum`) 整合为 `DataHubInfo`
44+
- 重命名`withJars`方法为`withResources`,以表示不仅可以使用JAR类型资源
45+
- 重命名`withBucketNum`方法为`withDeltaTableBucketNum`,以表示该方法仅用于 Delta Table
46+
- 修改了 `withHints``withAlias``withTblProperties``withSerdeProperties` 方法的逻辑,现在会覆盖之前设置的值,而不是合并
47+
- 移除了`createExternal`方法,现在使用`create`方法即可
48+
- **Table**
49+
- 新增 `getSchemaVersion` 方法,用户获取当前表结构的版本,用户每次进行 SchemaEvolution 都会更新版本号,目前该字段仅用于在创建 StreamTunnel 时指定
50+
- 新增 `setLifeCycle``changeOwner``changeComment``touch``changeClusterInfo``rename``addColumns``dropColumns`方法,以支持对表结构进行修改
51+
- **StreamTunnel** 修改初始化逻辑,当指定 `allowSchemaMismatch``false` 时,会自动重试直到使用最新版本的表结构(超时时间为5min)
52+
53+
### 修复
54+
- **GenerationExpression** 修复了当建表时`TruncTime`为大写,reload table 会抛出异常的问题
55+
- **TypeInfoParser** 能够正确处理 `Struct` 类型,字段被反引号quote的 `TypeInfo`
56+
57+
## [0.51.0-public.rc0] - 2024-11-18
58+
59+
### 功能
60+
- **GenerateExpression** 增加对分区列的生成列表达式功能的支持,和第一个生成列表达式`TruncTime`,使用方式请参考[Example]()
61+
- **UpsertStream** 支持写入主键为 `TIMESTAMP_NTZ` 类型的值
62+
- **Table** 新增对 cdc 相关数据的查询,`getCdcSize()``getCdcRecordNum()``getCdcLatestVersion()``getCdcLatestTimestamp()`
63+
- **SQLExecutor** MCQA 2.0 作业支持获取 InstanceProgress 信息
64+
65+
### 变更
66+
- **Quote** 对 Struct 类型的 TypeInfo,和其他拼装 SQL 的方法,使用反引号对名字进行 quote
67+
- **AutoClosable** 为了提醒用户正确关闭资源,对下列资源类,增加了相应的 `close()` 方法,以提醒用户正确关闭资源。
68+
- `odps-sdk-core` 包下的 `UpsertStream`
69+
- `odps-sdk-impl` 包下的 `LocalOutputStreamSet``ReduceDriver.ReduceContextImpl``MapDriver.DirectMapContextImpl``LocalRecordWriter`
70+
- `odps-sdk-udf` 包下的 `VectorizedOutputer``VectorizedExtractor``RecordWriter``RecordReader``Outputer``Extractor`
71+
72+
## [0.50.5-public] - 2024-11-13
73+
74+
### 功能
75+
76+
- **TableAPI**
77+
为可以安全重试的网络请求类型的报错增加了相应的重试逻辑,从而提高了接口的稳定性。在 `RestOptions`
78+
中增加了 `retryWaitTimeInSeconds` 配置项,用于设置重试等待时间。
79+
- **SQLTask** 新增了 `run` 方法的重载,支持传入 `mcqaConnHeader` 参数,以便提交 MCQA 2.0 作业。
80+
- **SQLExecutor** 支持通过指定 `hints` 中的 `odps.task.wlm.quota` 来设置提交 MCQA 2.0 作业时的
81+
interactive quota。
82+
- **RestClient** 新增了 `retryWaitTime` 参数,以及相应的 getter 和 setter 方法,以配置网络请求的重试等待时间。
83+
- **Configuration** 新增了 `socketRetryTimes` 参数以及相应的 getter 和 setter 方法,用于配置 Tunnel
84+
网络请求的重试等待时间。如果未设置,则使用 `RestClient` 中的配置,否则使用此配置。
85+
86+
### 变更
87+
88+
- **Instances** 移除了 `get`
89+
的重载方法 `get(String projectName, String id, String quotaName, String regionId)`
90+
,该方法在 `0.50.2-public` 版本中新增,用于获取 MCQA 2.0 实例。现在,用户在使用 `get` 方法时无须区分作业是否为
91+
MCQA 2.0 作业,因此移除该方法可以直接使用 `get(String projectName, String id)` 方法来获取实例。
92+
93+
### 修复
94+
95+
- **Table.read()** 修复了在数据预览时,配置的网络相关参数(如超时时间、重试逻辑)无法正确生效的问题。
96+
- **Streams** 修复了 `create` 方法中,如果指定了 `version` 会报错的问题。同时增加了 `version`
97+
的默认值(1),表示表的初始版本。
98+
99+
## [0.50.4-public] - 2024-10-29
100+
101+
### 功能
102+
103+
- **PartitionSpec** 新增`(String, boolean)`
104+
构造方法,通过布尔参数指定是否对分区值进行trim操作,以满足某些场景(如使用char类型作为分区字段)用户不希望trim的需求。
105+
106+
### 变更
107+
108+
- **Instance** 在调用stop方法时,抛出的OdpsException将不再被二次包装。
109+
110+
### 修复
111+
112+
- **SQLExecutor**
113+
- 修复了在MCQA 1.0模式下,用户指定`fallbackPolicy.isFallback4AttachError`时未正确生效的问题。
114+
- 修复了在MCQA 2.0模式下,作业失败时`cancel`方法抛出异常的问题。
115+
- 修复了在MCQA 2.0模式下,当isSelect判断错误时,通过instanceTunnel取结果报错的问题。
116+
- **Table** 修复了`getPartitionSpecs`方法会trim分区值,导致无法获取存在的分区的问题。
117+
7118
## [0.50.3-public] - 2024-10-23
8119
### 功能
9120
- **SQLExecutor** 在 MCQA 1.0 模式下,允许增加自定义回退策略,新增类`FallbackPolicy.UserDefinedFallbackPolicy`

docs/docs/quick-start.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ MaxCompute的Java SDK为开发者提供了丰富的Java编程语言接口,允
1616
<dependency>
1717
<groupId>com.aliyun.odps</groupId>
1818
<artifactId>odps-sdk-core</artifactId>
19-
<version>0.50.3-public</version>
19+
<version>0.51.0-public</version>
2020
</dependency>
2121
```
2222
请确保您使用的是[Maven Central Repository](https://mvnrepository.com/artifact/com.aliyun.odps/odps-sdk-core)[阿里云Maven仓库](https://developer.aliyun.com/mvn/)中可用的最新稳定版本。

0 commit comments

Comments
 (0)