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

Bugfix/skip unsupported relational tests #26

Conversation

Rodriguespn
Copy link
Collaborator

@Rodriguespn Rodriguespn commented Sep 20, 2024

Skip relational tests that include nested selects with aggregations

Rodriguespn and others added 30 commits August 23, 2024 12:22
'INTERSECT ALL' is not supported by SingleStore
* rm new columns, will add back in alter PR

* rm bson, index references
* rm new columns, will add back in alter PR

* rm bson, index references
Nested Scalar Subselects in Project List: "The query cannot be executed. SingleStore does not support this type of query: nested scalar subselects in project list."

Subselect in Aggregate Functions (duplicates.test and test):

"Feature 'Subselect in aggregate functions' is not supported by SingleStore. Near '(select json_agg(JSON_BUILD_OBJECT(...)) at line 1, character ...'."
@Rodriguespn Rodriguespn force-pushed the bugfix/remove-unsupported-relational-tests branch from 2fd85dd to 7a06748 Compare September 20, 2024 15:50
@Rodriguespn Rodriguespn marked this pull request as ready for review September 20, 2024 15:50
@Rodriguespn Rodriguespn changed the title Bugfix/remove unsupported relational tests Bugfix/skip unsupported relational tests Sep 20, 2024
@Rodriguespn Rodriguespn merged commit 51500b4 into feature/singlestore-integration-tests Sep 25, 2024
1 of 7 checks passed
apeng-singlestore added a commit that referenced this pull request Sep 30, 2024
* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* removed nested transaction tests

* changed timestamps precision to 6 and other minor IT tests fixes

* fixed "set operations (union) from query builder with subquery" test

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Fix except tests

* Removed additional intersectall tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* fixed "set operations (union) from query builder with subquery" test

* changed timestamps precision to 6 and other minor IT tests fixes

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Fix except tests

* removed nested transaction tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Removed additional intersectall tests

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* fix linting

* removed isolation level since S2 only supports READ COMMITTED isolation level

* rm mode

* SingleStore2 -> SingleStoreDriver

* fix tsc

* rm unused dialect func

* lint fix

* fix type test

* fix integration tests

* update brocli version

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* merge all commits

* create singlestore replicas tests

* change mysql protocol to singlestore on integration tests connection string remove .only

* Delete test-docker.js

* Delete init.sql

* Removed comment

* removed singlestoreproxy references

* new singlestore relational and duplicated IT tests

* add planetscale mode to allow for tests with schema

* Removed + skipped unsupported tests

Nested Scalar Subselects in Project List: "The query cannot be executed. SingleStore does not support this type of query: nested scalar subselects in project list."

Subselect in Aggregate Functions (duplicates.test and test):

"Feature 'Subselect in aggregate functions' is not supported by SingleStore. Near '(select json_agg(JSON_BUILD_OBJECT(...)) at line 1, character ...'."

* Updated remaining non-skipped tests to be order agnostic

* fixed two additional tests to be order agnostic

* skipping not supported relational it tests

* skipped unsupported tests

* remove 'mode' from relational it tests

* Delete skip-failing-tests.js

---------

Co-authored-by: apeng-singlestore <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Alex Blokh <[email protected]>
Rodriguespn added a commit that referenced this pull request Oct 1, 2024
* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* removed nested transaction tests

* changed timestamps precision to 6 and other minor IT tests fixes

* fixed "set operations (union) from query builder with subquery" test

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Fix except tests

* Removed additional intersectall tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* fixed "set operations (union) from query builder with subquery" test

* changed timestamps precision to 6 and other minor IT tests fixes

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Fix except tests

* removed nested transaction tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Removed additional intersectall tests

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* fix linting

* removed isolation level since S2 only supports READ COMMITTED isolation level

* rm mode

* SingleStore2 -> SingleStoreDriver

* fix tsc

* rm unused dialect func

* lint fix

* fix type test

* fix integration tests

* update brocli version

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* merge all commits

* create singlestore replicas tests

* change mysql protocol to singlestore on integration tests connection string remove .only

* Delete test-docker.js

* Delete init.sql

* Removed comment

* removed singlestoreproxy references

* new singlestore relational and duplicated IT tests

* add planetscale mode to allow for tests with schema

* Removed + skipped unsupported tests

Nested Scalar Subselects in Project List: "The query cannot be executed. SingleStore does not support this type of query: nested scalar subselects in project list."

Subselect in Aggregate Functions (duplicates.test and test):

"Feature 'Subselect in aggregate functions' is not supported by SingleStore. Near '(select json_agg(JSON_BUILD_OBJECT(...)) at line 1, character ...'."

* Updated remaining non-skipped tests to be order agnostic

* fixed two additional tests to be order agnostic

* skipping not supported relational it tests

* skipped unsupported tests

* remove 'mode' from relational it tests

* Delete skip-failing-tests.js

---------

Co-authored-by: apeng-singlestore <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Alex Blokh <[email protected]>
Rodriguespn added a commit that referenced this pull request Oct 1, 2024
* created singlestore-core and singlestore driver

* change 'json_array' to 'json_to_array'

* add bson type

* Renamed mysql to singlestore in singlestore-core

* test actions

* add uuid column

* add guid

* add override tag to `build`

* more actions tests

* release to github

* add vector data type, operator experessions

* nits

* nits

* add geographypoint type

* Push to NPM instead

* Corrected version

* Removed foreign keys

* Disallow INTERSECT ALL and EXCEPT ALL; Allow MINUS

* Removed more stuff of foreign keys

* Build fork when pushing to main

* Changed name of version var

* fixed action

* Added detach

* Renamed driver

* Fixed detach

* Added attach

* Differentiate rowstore and columnstore on creation and block btree indexes on columnstore

* Formatted files

* Make index types difference clearer

* Apparently ATTACH does not support prepared statements, so we give the database name in raw format

* Added ATTACH AT TIME

* Added ATTACH AS

* Trying another approach for type checking index input

* initial geography implementation

* Reverth all columnstore and rowstore work

* add types to index, fix? geography

* fix polygon

* Remove check

* improve geography type narrowing

* error -> drizzleerror

* add branching

* CREATE and DROP MILESTONE

* combine buildAttachQuery and buildBranchQuery

* OPTIMIZE TABLE

* nits to OPTIMIZE TABLE

* more nits

* even more nits

* more nits to OPTIMIZE TABLE

* stringify BSON column

* new blob column type

* Try another approach for table type related typecheck

* Fixed build

* Even more nits to OPTIMIZE TABLE

* Revert table changes

* Add defaultCurrentTimestamp and fsp to defaultNow

* Separated tables into columnstore and rowstore

* Fix build

* Fix build v2

* fix geography data type

* fix geography type v2

* lint/fmt

* nits with datetime

* improve geography code readability

* lint/fmt datetime

* improve readability in geography mapToDriverValue

* Undo changes to differentiate tables

* Fix build

* Fix datetime merge error

* fix polygon generator

* fix relational query?

* revert

* fixed revert of 46e8864

* Fix relational queries for S2

* stuff

* Full text

* nits with fulltext index

* MATCH AGAINST

* nits

* more nits

* nits with MATCH AGAINST

* nits of MATCH AGAINST

* Sort key

* Fixed sortKey

* fix lint issues and add lint:fix command

* add singlestore dialect to drizzle-kit

* create new singlestore-schemas.test.ts file

* adapt validations.test.ts to singlestore dialect

* replicate generate tables and general singlestore migrations test

* replicate generate tables and general singlestore migrations test

* lint fix on drizzle-kit files

* vector elementType optional

* created singlestore-proxy from mysql-proxy

* define intersectAll and excludeAll sql functions for SingleStore

* add type-tests for SingleStore dialect

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Test implementation

* Type-level implementation

* Added functional runtimes for node-pg, aws-data-api-pg [custom drizzle config WIP]

* Resolved bun type related build issues

* Implemented extra drivers

* Complete runtime implementations [TO BE TESTED]

* Prototype implementation

* switched bun to dynamic imports

* Removed static imports, removed promise wrapper

* Returned async imports due to conflicts

* More comnprehensive import errors

* Changed error messge

* Improved params destructurization

* Functional prototype of SQLite $count

* Added pg, mysql; Added tests, type tests for $count

* Added missing runtime tests

* LibSQL improvements

Added:
- handling alteting columns in libsql
- new json statement for recreation table for sqlite and libsql
- push updated for sqlite and libsql
- tests

* - updated tests
- added handling create reference and create column for sqlite and libsql

* - handled foreign keys for recreate table
- handled alter column with unique keys
- made more tests
- updated recreate sql statements order

* changed package json to prev state

* updated tests

* - moved 'turso' driver to dialect
- rewrote tests

* fixed dialects in introspect musql, psql, sqlite
updated packages

* updated tests and removed pragma from push in libsql

* removed console.log

* updated pull config
update migrate function in drizzle-orm

* removed driver

* updated sqlite connection to libsql

* Added alternate config for better-sqlite3, bun:sqlite; Renamed bun-sqlite to bun:sqlite; Fixed schema inferrence issue (no schema would resrresult in `unknown`, expected: `Record<string, never>`)

* Added monomigrator

* Changed style of monodriver, monomigrator function args

* Fixed overload order for better autocomplete

* Removed garbage

* Added missing  postgres.js to monomigrator

* Fixed missing defaults in templates

* Improved types, matched supported instances of monodriver and monomigrator, fixed pg withReplicas type's schema inferrence, fixed lack of [entityKind] on some instances, fixed migrators not accepting string as a config

* Fixed invalid [entityKind] call

* Added `:memory:` autocomplete

* Removed leftover code from overloads, added `assertUnreachable`

* Exposed db drivers from monodriver

* Fixed test tables using already existing names

* Fixed faulty test cases; Fixed lack of count type conversion in mysql; added all method functionality to pg proxy driver; added websocket instance to monodriver neon serverless config

* Switched mysql count to execute

* Added cast to embedded

* Switched to `.execute` for mysql, pg; reverted pg proxy session changes; fixed misplaced mysql tests; removed unused args

* Moved type conversion drom db to ORM; improved types

* Moved pg, mysql counts to sessions to resolve return shape conflicts

* Fixed neon-http, planetscale; removed leftover lines; switched sqlite to session-based count

* changed console.log outputs for connection to Sqlite
returned removed console.log in mysql push

* Add draft for beta release

* Add release notes for orm and kit

* Update release notes

* add singlestore dialect to drizzle-kit

* create new singlestore-schemas.test.ts file

* lint fix on drizzle-kit files

* adding missing driver declaration in drizzle-orm

* squashing integration tests commits

* keeping DrizzleConfig Mode type

* add jira ticket to singlestore-common.ts

* Bugfix/skip unsupported relational tests (#26)

* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* removed nested transaction tests

* changed timestamps precision to 6 and other minor IT tests fixes

* fixed "set operations (union) from query builder with subquery" test

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Fix except tests

* Removed additional intersectall tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Remove new column types (#11)

* rm new columns, will add back in alter PR

* rm bson, index references

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* created singlestore-proxy from mysql-proxy

* singlestore integration tests

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* fix most of singlestore.test.ts integration tests

* rewrite init.sql for each docker container

* fix 'having' singlstore-prefixed.test.ts  integration tests

* fixed "set operations (union) from query builder with subquery" test

* changed timestamps precision to 6 and other minor IT tests fixes

* lint

* fix "'set operations (union all) from query builder'" test

* fix union all and intersect as function tests

* fix set operations (intersect) from query builder and as function tests

* Fix except tests

* removed nested transaction tests

* Fixed mixed and mixed all tests

* remove .only

* timestamp timezone test fix

* fix select from subquery sql it test

* Remove intersect all tests

'INTERSECT ALL' is not supported by SingleStore

* Removed additional intersectall tests

* Fix timestamp timezone test

* fix build query insert with onDuplicate

* fix UTC config for datetime: remove datetime as string as it is unsupported

* fixed onupdate tests

need to find exact match on update as singlestore doesn't guarantee order

* Fixed returningid test

batch insert autoincrements serial columns in singlestore, so updated test code to reflect that

* remove .only

* Fixed flaky mixed all test

Added two possible outputs because order is not guaranteed

* removed except all tests

* Removed additional exceptall tests

* Readded sqlite except tests

* fix linting

* remove unnecessary 'desc' import

* Cleaned up logic for mixed all test

* Fixed docker container flakiness

* remove .only

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* removed transaction isolationlevel tests as singlestore only has one isolationlevel: https://docs.singlestore.com/cloud/getting-started-with-singlestore-helios/about-singlestore-helios/singlestore-helios-faqs/durability/

* fix linting

* removed isolation level since S2 only supports READ COMMITTED isolation level

* rm mode

* SingleStore2 -> SingleStoreDriver

* fix tsc

* rm unused dialect func

* lint fix

* fix type test

* fix integration tests

* update brocli version

* Added singlestore docker image to integration tests

* singlestore custom integration tests pass

* merge all commits

* create singlestore replicas tests

* change mysql protocol to singlestore on integration tests connection string remove .only

* Delete test-docker.js

* Delete init.sql

* Removed comment

* removed singlestoreproxy references

* new singlestore relational and duplicated IT tests

* add planetscale mode to allow for tests with schema

* Removed + skipped unsupported tests

Nested Scalar Subselects in Project List: "The query cannot be executed. SingleStore does not support this type of query: nested scalar subselects in project list."

Subselect in Aggregate Functions (duplicates.test and test):

"Feature 'Subselect in aggregate functions' is not supported by SingleStore. Near '(select json_agg(JSON_BUILD_OBJECT(...)) at line 1, character ...'."

* Updated remaining non-skipped tests to be order agnostic

* fixed two additional tests to be order agnostic

* skipping not supported relational it tests

* skipped unsupported tests

* remove 'mode' from relational it tests

* Delete skip-failing-tests.js

---------

Co-authored-by: apeng-singlestore <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Alex Blokh <[email protected]>

* lint fix

* integration-tests/tests/prisma directory is  no longer in the drizzle repository

* rebase drizzle main with PR's main

---------

Co-authored-by: Diogo Rodrigues <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Tiago Castro <[email protected]>
Co-authored-by: Mitchell Adair <[email protected]>
Co-authored-by: Sukairo-02 <[email protected]>
Co-authored-by: Aleksandr Sherman <[email protected]>
Co-authored-by: AndriiSherman <[email protected]>
Co-authored-by: apeng-singlestore <[email protected]>
Co-authored-by: Alex Blokh <[email protected]>
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.

4 participants