aboutsummaryrefslogtreecommitdiffstats
path: root/lib/public/DB
Commit message (Collapse)AuthorAgeFilesLines
* fix: Prevent breaking change in IQueryBuilderFerdinand Thiessen2024-10-171-5/+11
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* feat(AppFramework): Add full support for date / time / datetime columnsFerdinand Thiessen2024-10-172-1/+122
| | | | | | | | | | | | | | | | 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>
* fix: fix share reminder job for oracleoracle-share-reminderRobin Appelman2024-09-181-1/+2
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* Merge pull request #47852 from nextcloud/sharding-code-fixesJohn Molakvoæ2024-09-161-2/+2
|\
| * fix: misc code fixes around db shardingsharding-code-fixesRobin Appelman2024-09-091-2/+2
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | fix: Adjust types of IQueryBuilder to properly allow joining with sub-queryFerdinand Thiessen2024-09-101-2/+6
|/ | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* fix: implement sharding compatible cleanup for various bitsRobin Appelman2024-08-281-1/+1
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* feat: implement distributing partitioned queries over multiple shardsRobin Appelman2024-08-282-0/+52
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* feat: track expected output columns in query builderRobin Appelman2024-08-281-0/+8
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* style: update codestyle for coding-standard 1.2.3Daniel Kesselberg2024-08-252-15/+15
| | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* fix(db): Deprecate `IExpressionBuilder::or()` and ↵Joas Schilling2024-07-192-3/+6
| | | | | | `IExpressionBuilder::and()` without parameters Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix(db): Deprecate `getState()` as per upstreamJoas Schilling2024-07-191-0/+2
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix(db): Deprecate using table alias for DELETE and UPDATEJoas Schilling2024-07-191-5/+8
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix(db): Deprecate `getQueryPart()` and `resetQueryPart()` methods that will ↵Joas Schilling2024-07-191-0/+8
| | | | | | be removed with Doctrine/DBAL 4 Signed-off-by: Joas Schilling <coding@schilljs.com>
* feat: allow running QueryBuilder queries on different connectionsRobin Appelman2024-07-151-3/+7
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* feat(db): add mapping for lock wait timeoutDaniel Kesselberg2024-05-291-0/+7
| | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* chore: Add SPDX headerAndy Scherzinger2024-05-2415-302/+42
| | | | Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
* chore: Add missing parameter to docblock tag psalm-taint-sinkCôme Chilliet2024-04-221-1/+1
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* feat(occ): add possibility to edit indicesJohannes Merkel2024-02-271-0/+41
| | | | Signed-off-by: Johannes Merkel <mail@johannesgge.de>
* fix(dbal): Fix types in query builder methods for parametersJoas Schilling2023-10-181-2/+2
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix(dbal): Doctrine\DBAL\Connection::PARAM_* types are deprecatedJoas Schilling2023-10-061-2/+3
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix(dbal): Migrate to Doctrine\DBAL\ParameterTypesJoas Schilling2023-08-231-5/+6
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* fix: Add options to support all used features by coreJoas Schilling2023-07-241-4/+23
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* feat(dispatcher): Add typed event for "db:add-missing-primary-keys"Joas Schilling2023-07-241-0/+60
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* feat(dispatcher): Add typed event for "db:add-missing-columns"Joas Schilling2023-07-242-2/+62
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* feat: Add public event for missing indicesJulius Härtl2023-07-141-0/+59
| | | | Signed-off-by: Julius Härtl <jus@bitgrid.net>
* Fix typos in lib/public subdirectorySimon L2023-05-102-2/+2
| | | | | | | | | | | | | Found via `codespell -q 3 -S l10n -L jus ./lib/public` Signed-off-by: luz paz <luzpaz@github.com> Update lib/public/Accounts/IAccount.php Signed-off-by: luz paz <luzpaz@github.com> Signed-off-by: Simon L <szaimen@e.mail.de> Co-Authored-By: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
* composer run cs:fixCôme Chilliet2023-01-205-5/+0
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* Revert "add case statement to sql function builder"Robin Appelman2022-08-161-12/+0
| | | | | | This reverts commit 2a68819a67045d87a369a8a6413f153b3b2bea5f. Signed-off-by: Robin Appelman <robin@icewind.nl>
* Revert "make expression build return IQueryFunction instead of string"Robin Appelman2022-08-162-36/+36
| | | | | | This reverts commit 813b50ed428a8bc36817d19c84444e96dbe3b668. Signed-off-by: Robin Appelman <robin@icewind.nl>
* add case statement to sql function builderRobin Appelman2022-06-021-0/+12
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* make expression build return IQueryFunction instead of stringRobin Appelman2022-06-022-36/+36
| | | | | | this allows passing the expressions to further expressions without them being escaped as column names Signed-off-by: Robin Appelman <robin@icewind.nl>
* Adjust docs to the same as the implementationJoas Schilling2022-05-231-1/+1
| | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* Fix psalm issues related to the user backendCarl Schwan2022-05-201-1/+1
| | | | | | | | | | | | | - Reflect the actual return value returned by the implementation in the the interface. E.g. IUser|bool -> IUser|false - Remove $hasLoggedIn parameter from private countUser implementation. Replace the two call with the equivalent countSeenUser - getBackend is nuallable, add this to the interface - Use backend interface to make psalm happy about call to undefined methods. Also helps with getting rid at some point of the old implementActions Signed-off-by: Carl Schwan <carl@carlschwan.eu>
* tell mysql to ignore the sort index for search queriesRobin Appelman2022-04-221-1/+1
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* Add a metadata service to store file metadataCarl Schwan2022-04-132-0/+11
| | | | Signed-off-by: Carl Schwan <carl@carlschwan.eu>
* Add octetLength and charLength to function builder, and testsCôme Chilliet2022-03-241-0/+18
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* Do chuncked job deletionCarl Schwan2022-03-171-0/+5
| | | | | | | | | | | | | | | This is helpful in cases where we are deleting tons jobs at the same time in a gallera cluster. This doesn't happen often but this can create issues. Test plan: 1. Use https://github.com/nextcloud/quota_warning/pull/88 2. Change max to 1 3. Enabled/Disable quota_warning app and see jobs getting sucessfully added and removed Signed-off-by: Carl Schwan <carl@carlschwan.eu>
* Add a few more non-extendable interfaceCarl Schwan2022-03-053-1/+27
| | | | Signed-off-by: Carl Schwan <carl@carlschwan.eu>
* Merge pull request #30379 from nextcloud/feature/add-comments-reactionsJoas Schilling2022-01-211-2/+2
|\ | | | | Add comments reactions
| * Remove order from groupConcat as it is not working everywhereJoas Schilling2022-01-211-2/+1
| | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
| * Fix groupConcat and ordering on OracleVitor Mattos2022-01-211-1/+2
| | | | | | | | Signed-off-by: Vitor Mattos <vitor@php.rio>
| * Prevent query error when use subqueryVitor Mattos2022-01-211-2/+2
| | | | | | | | Signed-off-by: Vitor Mattos <vitor@php.rio>
* | Merge pull request #30471 from nextcloud/enh/cast-char-mysqlJoas Schilling2022-01-201-0/+1
|\ \ | |/ |/| Explicitly cast char in the query builder
| * Explicitly cast char in the query builderJulius Härtl2022-01-041-0/+1
| | | | | | | | Signed-off-by: Julius Härtl <jus@bitgrid.net>
* | Accept multipe args on concatVitor Mattos2022-01-061-3/+3
| | | | | | | | Signed-off-by: Vitor Mattos <vitor@php.rio>
* | Use quote functionJoas Schilling2022-01-041-1/+1
| | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* | Add a test with integerJoas Schilling2022-01-041-1/+1
| | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
* | Add unit testVitor Mattos2022-01-031-2/+1
| | | | | | | | Signed-off-by: Vitor Mattos <vitor@php.rio>
* | Add unit test and orderBy parameterVitor Mattos2022-01-031-1/+2
| | | | | | | | Signed-off-by: Vitor Mattos <vitor@php.rio>