babelfish-for-postgresql / babelfish_extensions

Babelfish for PostgreSQL provides the capability for PostgreSQL to work with applications written for Microsoft SQL Server. Babelfish understands the SQL Server wire-protocol and T-SQL, the Microsoft SQL Server query and procedural language, so you don’t have to switch database drivers or rewrite all of your application queries.
https://babelfishpg.org/
Apache License 2.0
274 stars 93 forks source link

Support like for AI collation for Sublink and CoerceViaIO nodes #2640

Closed ahmed-shameem closed 3 months ago

ahmed-shameem commented 4 months ago

Description

While supporting LIKE operator for AI collation, we have done defensive coding where we throw unrecognised node error for the nodes which we have not handled explicitly. We have found such issues where we throw the error for sublink and CoerceViaIO node type. This commit adds the support for like for AI collations for Sublink and CoerceViaIO node type.

Issues Resolved

BABEL-4998 Signed-off-by: Shameem Ahmed shmeeh@amazon.com

Test Scenarios Covered

Check List

By submitting this pull request, I confirm that my contribution is under the terms of the Apache 2.0 and PostgreSQL licenses, and grant any person obtaining a copy of the contribution permission to relicense all or a portion of my contribution to the PostgreSQL License solely to contribute all or a portion of my contribution to the PostgreSQL open source project.

For more information on following Developer Certificate of Origin and signing off your commits, please check here.

coveralls commented 4 months ago

Pull Request Test Coverage Report for Build 9399529266

Details


Changes Missing Coverage Covered Lines Changed/Added Lines %
contrib/babelfishpg_tsql/src/collation.c 6 7 85.71%
<!-- Total: 6 7 85.71% -->
Files with Coverage Reduction New Missed Lines %
contrib/babelfishpg_tsql/src/collation.c 1 84.86%
<!-- Total: 1 -->
Totals Coverage Status
Change from base Build 9374595157: 0.008%
Covered Lines: 41924
Relevant Lines: 57504

💛 - Coveralls