Robin Appelman
0a77ba99a2
feat: support migrating an instance to sharding
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-02-25 17:52:40 +07:00
Ferdinand Thiessen
db94e10af0
fix: Prevent breaking change in IQueryBuilder
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:44 +07:00
Ferdinand Thiessen
ee02e3246d
feat(AppFramework): Add full support for date / time / datetime columns
...
This adds support for all Doctrine supported types, for the column types only the immutable variants needed to be added.
But especially those types are the important ones, as our **Entity** class works by detecting changes through setters.
Meaning if it is mutable, changes like `$entity->date->modfiy()` can not be detected, so the immutable types make more sense here.
Similar the parameter types needed to be added.
`Enity` and `QBMapper` needed to be adjusted so they support (auto map) those types, required when insert or update an entity.
Also added more tests, especially to make sure the mapper really serializes the values correctly.
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-10-17 18:31:42 +07:00
John Molakvoæ
ff0cab5956
Merge pull request #47852 from nextcloud/sharding-code-fixes
2024-09-16 11:39:58 +07:00
Christoph Wurst
49dd79eabb
refactor: Add void return type to PHPUnit test methods
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-09-15 22:32:31 +07:00
Robin Appelman
da59fd4389
fix: misc code fixes around db sharding
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-09-09 16:59:59 +07:00
Arthur Schiwon
b71c539b5c
test(phpunit): skip sharding tests on 32bit
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-08-29 20:18:35 +07:00
Louis Chemineau
2574cbfa61
chore: Apply php:cs recommendations
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-08-28 10:44:18 +07:00
Robin Appelman
62f8b6517f
feat: implement distributing partitioned queries over multiple shards
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:21:19 +07:00
Robin Appelman
f5b3486744
feat: add option to automatically partition queries by specific tables
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:18:53 +07:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +07:00
Joas Schilling
eeb6ddb176
fix(db): Deprecate `IExpressionBuilder::or()` and `IExpressionBuilder::and()` without parameters
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:16 +07:00
Robin Appelman
9de6190ec4
feat: allow running QueryBuilder queries on different connections
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-15 22:41:04 +07:00
Andy Scherzinger
1f7e2ba599
chore: Add SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-13 17:41:36 +07:00
Joas Schilling
b04f6d57b4
fix(tests): Make PostgreSQL unit tests less flacky by ordering
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-01-25 06:47:39 +07:00
Maxence Lange
f7d0c74b10
lazy AppConfig
...
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
2024-01-15 15:45:13 +07:00
Julius Härtl
e50cb0a30f
tests(DB): Add test for date time comparisons in query builder
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-12-29 10:36:59 +07:00
Julius Härtl
c246edece6
tests(oci): Test where statement on longtext column
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
test: try with just passing the type to eq which should also cast
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-01-31 11:57:54 +07:00
Robin Appelman
6e0123a1d0
Revert "add case statement to sql function builder"
...
This reverts commit 2a68819a67 .
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-16 12:07:13 +07:00
Robin Appelman
2a68819a67
add case statement to sql function builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-02 15:52:12 +07:00
Côme Chilliet
765999f454
Merge pull request #31609 from nextcloud/fix/migrate-away-from-ilogger
...
Migrate from ILogger to LoggerInterface in lib/private
2022-03-29 09:39:38 +07:00
Côme Chilliet
bfd09a0669
Avoid select with no FROM clause for Oracle in tests
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 20:35:02 +07:00
Côme Chilliet
efebbacca4
Add octetLength and charLength to function builder, and tests
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 20:35:02 +07:00
Côme Chilliet
61f7f13bd8
Migrate from ILogger to LoggerInterface where needed in the tests
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 16:21:26 +07:00
Vitor Mattos
b6d9e0542d
Fix column size to work with Oracle. Add unit tests
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-21 08:37:06 +07:00
Vitor Mattos
afe5b6dd8a
Prevent query error when use subquery
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-21 08:37:06 +07:00
Carl Schwan
89d109a4d9
Merge pull request #30508 from nextcloud/fix/psaml-bin
...
Fix psalm not running
2022-01-13 09:51:04 +07:00
Carl Schwan
6312c0df69
Check style update
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 00:19:07 +07:00
Vitor Mattos
f732cf1b04
Unit tests
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-07 09:54:41 +07:00
Joas Schilling
46ad6fa3c7
Add a test with integer
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 09:15:17 +07:00
Joas Schilling
43fa2d5c8c
Test with real data
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-03 21:43:51 +07:00
Vitor Mattos
fb6a9f308d
Add unit test
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-03 21:41:38 +07:00
Vitor Mattos
7b9fea85b6
Add unit test and orderBy parameter
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-03 12:45:00 +07:00
Christoph Wurst
130ab63ca1
Bump doctrine/dbal from 3.0.0 to 3.1.3
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-22 09:03:45 +07:00
Joas Schilling
11d21e5f5c
Add a unit test to check for casting a IQueryFunction
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-07 14:19:24 +07:00
dependabot-preview[bot]
eb502c02ff
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
...
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard ) from 0.3.0 to 0.5.0.
- [Release notes](https://github.com/nextcloud/coding-standard/releases )
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nextcloud/coding-standard/compare/v0.3.0...v0.5.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +07:00
Arthur Schiwon
f9484d15cb
DB: warn on parameter number constraints
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-11 13:43:34 +07:00
Christoph Wurst
8b64e92b92
Bump doctrine/dbal from 2.12.0 to 3.0.0
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 11:45:19 +07:00
Robin Appelman
a61a757b85
allow selecting multiple columns with SELECT DISTINCT
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-11-16 15:45:17 +07:00
Joas Schilling
8027dcbc6f
Don't leave cursors open when tests fail
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-09 12:28:17 +07:00
Morris Jobke
234b510652
Change PHPDoc type hint from PHPUnit_Framework_MockObject_MockObject to \PHPUnit\Framework\MockObject\MockObject
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-12 13:55:19 +07:00
Joas Schilling
c68718f90c
Remove dropped " ON " when join has no condition
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-06-08 08:03:35 +07:00
Roeland Jago Douma
76b78edd40
Merge pull request #17833 from nextcloud/propagator-no-negative-sizes
...
dont set folder size to negative values during propagation
2019-12-04 11:49:26 +07:00
Roeland Jago Douma
3a7cf40aaa
Mode to modern phpunit
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 15:27:18 +07:00
Roeland Jago Douma
c007ca624f
Make phpunit8 compatible
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-27 13:34:41 +07:00
Robin Appelman
9e450d727a
add LEAST and GREATER to db function builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-11-26 12:05:30 +07:00
Robin Appelman
8ef5a366ec
add MAX and MIN to functionbuilder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-09-06 12:28:17 +07:00
Joas Schilling
bb352fb667
Use the defined func()->count() instead of manual counting
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-08 15:44:45 +07:00
Robin Appelman
3047ef31bd
Add count to function builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-14 14:32:22 +07:00
Robin Appelman
89a9d35d90
dont keep shared database locks when running cli scripts
...
For cli scripts we don't have the assumption that the universe will be cleaned up soon
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-04-11 19:21:45 +07:00