Releases: secretflow/scql
Releases · secretflow/scql
0.9.3b1
Added
- Support for datasource
Doris 2.1.7
. - Support
PERCENT_RANK
window function. - Support various string-related single-party operators, including
UPPER
,LOWER
,SUBSTRING
,TRIM
,CONCAT
and others. - Support
Scalar Subquery
, the subquery in the right is scalar value, e.g. SELECT * FROM ta JOIN tb ON ta.ID = tb.ID WHERE ta.salary > (SELECT AVG(ta.salary) FROM ta). - Support
Compare Subquery
, allows comparison with ANY or ALL of the subquery results, e.g. SELECT * FROM ta JOIN tb ON ta.ID = tb.ID WHERE ta.salary > ANY(SELECT ta.salary FROM ta), However, comparisons using = or != are not supported in the HAVING clause. For instance, HAVING SUM(ta.salary) = ANY(SELECT salary FROM ta) is not supported. - Added FAQ doc by @tyrone-yu in #432
Changed
- Improved
JOIN
andIN
performance in streaming mode. - Implemented a more reliable
secret join algorithm
(only works in SEMI2K protocol) inspired by Scape. - Optimized the column pruning rule for Join, Selection, and Window nodes in the Logical Optimizer to more effectively remove redundant columns.
Fixed
- Restricted access to SCQLEngine metrics using additional paths like "engine_ip:engine_port/metrics/additional/path".
- Prevented creation of tables with the same ref_table name but different db_type
- Fixed job creation error when selecting 'OPRF-PSI' but 'server hint' was missing.
Full Changelog: 0.9.2b1...0.9.3b1
0.9.2b1
What's Changed
Added
- Enhancement: Support
JOIN
afterUNION
operation. - Add SCQL Agent to facilitate running SCQL query tasks in Kuscia, making it easier to integrate into SecretPad.
- [feat] write query result into multi-parties via "select ... into outfile" statement by @ancongxue in #391 co-authored-by @jingshi-ant
- Support datasource
ODPS
via integrating with dataproxy. - Support
order by
by @fucangfy . - Support a lot of single-party operators, such as
ABS
,ASIN
,EXP
,FLOOR
,SQRT
etc by @fucangfy . - Support "postgres" and "postgresql" in kuscia datamesh by @tyrone-yu in #424
Changed
- Improve the
JOIN
andIN
performance via integrating RR22 PSI by @tyrone-yu . - Improve the aggregation with group by performance if
reveal_group_count
enabled by @tyrone-yu.
Fixed
- Fixed an occasional crash issue when canceling query job.
- Fixed
select now()
is not supported issue by @fucangfy . - Fix compile erorr without
-c opt
option by @tongke6 in #389 - fix macos engine ut by @jingshi-ant in #407
- Bump golang.org/x/net from 0.26.0 to 0.33.0 by @tongke6 in #425
- avoid mix usage of uint64_t and size_t by @jingshi-ant in #423
New Contributors
- @ancongxue made their first contribution in #391
Full Changelog: 0.9.1b1...0.9.2b1
0.9.1b1
Added
- Support window function ROW_NUMBER() with PARTITION BY clause and ORDER BY clause.
- Add new CCL constraint REVAL_RANK.
- Add ExplainQuery API with path /intra/query/explain.
- Support INSERT INTO SELECT syntax to allow writing query result back to db (mysql/sqlite/postgres).
- Support trim function.
Changed
- Improved the job watcher to work better in broker clustered mode.
- Breaking: broker db schema has incompatible changes, please check here for details.
Full Changelog: 0.9.0b1...0.9.1b1
0.9.0b1
What's Changed
Added
- Support write outfile to OSS/MINIO via
select into
query. - Support
sin
,cos
,acos
function. - Support
geodist
function. - Broker support using postgres as metadata storage.
Changed
- Reduce the memory peak of large-scale intersection tasks through streaming execution.
- Link tcmalloc to solve the problem of memory increase.
Fixed
- Fix crashes when dumpfile exceeds 2GB string column.
- Reduce the probability of graph checksum inconsistency issues.
Full Changelog: 0.8.1b1...0.9.0b1
Note: Cross-version compatibility is not currently guaranteed, please make sure all parties use the same version.
0.8.1b1
Added
- [feature] Support session-based log isolation functioality in the SCQL Engine.
- [feature] Support consul-based broker registration/discovery services, providing ACL/TLS authentication.
0.8.0b2
0.8.0b1
What's Changed
Added
- [feature] Support obtaining query job progress information via
FetchResult
RPC. - [feature] Support project/query level configs.
- [feature] Support handling NULL for private data: including Arithmetic, Logic, Aggregation, etc., {IS [NOT] NULL, IFNULL, COALESCE} are also supported.
- [feature] Support port isolation for engine link service and control panel service (RunExecutionPlan).
- [enhancement] Add new CCL constraint
PLAINTEXT_AS_JOIN_PAYLOAD
.
Note: Cross-version compatibility is not currently guaranteed, please make sure all parties use the same version.
0.7.0b1
Added
- Added CheckAndUpdate API for self-recovery when status is inconsistent in P2P mode
Fixed
- Fixed the problem that Broker was unable to detect SCQLEngine crashes or being killed by OOM
0.6.0b2
Fixed
- Fixed Uri config for peer engine
- Disabled ccache to avoid conflict when building duckdb
- Fixed concurrency issues
0.6.0b1
Added
- [feature] Support DRY-RUN mode.
- [feature] Add support for RSA key pairs in SCQLBroker.
- [experiment][feature] support running on kuscia and scheduling SCQLEngine dynamic via kuscia job.
- [Enhancement] Improve Broker high availability, support depoly in multi-node cluster deployment.
- [feature] Add cancel query job API, it only works when scql running on kuscia for now.
- [feature] Support reading csv from oss/minio
Changed
- Breaking: Reshape column data type, data type
LONG
is deprecated. - Breaking: Modify table schema in broker storage for P2P mode.