John Molakvoæ
ff0cab5956
Merge pull request #47852 from nextcloud/sharding-code-fixes
2024-09-16 11:39:58 +02:00
Ferdinand Thiessen
027fc052e7
fix: Adjust types of IQueryBuilder to properly allow joining with sub-query
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-09-10 17:51:27 +02: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 +02:00
Anna Larch
8af7ecb257
chore: adjust code to adhere to coding standard
...
Signed-off-by: Anna Larch <anna@nextcloud.com>
2024-09-05 21:23:38 +02:00
John Molakvoæ
7efd244956
Merge pull request #47675 from nextcloud/adapterQueryOpti
2024-09-04 09:15:52 +02:00
Julius Härtl
7f0d0cf03c
Merge pull request #47640 from nextcloud/fix/migrator-replica
...
fix: Run migration sql as statement so that the primary db node is used
2024-09-02 10:46:24 +02:00
Git'Fellow
8e6e7976d2
fix: psalm
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-09-02 10:19:25 +02:00
Git'Fellow
388f2973b9
fix: psalm
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-09-02 10:08:08 +02:00
Git'Fellow
dfcf3132dd
chore(db): Make the query more simpler to read
...
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2024-09-02 09:57:48 +02:00
Julius Härtl
c3fa25a16e
fix: Run migration sql as statement so that the primary db node is used
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-08-30 15:45:50 +02:00
Arthur Schiwon
edaa4d1432
fix(DB): do not assume sharding is always enabled
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-08-29 19:55:10 +02:00
Arthur Schiwon
381e922085
fix(DB): set sharding parameters only when intended
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2024-08-29 19:12:44 +02:00
Andy Scherzinger
d404998157
Merge pull request #47515 from nextcloud/bugfix/noid/fix-migration-sorting
...
fix(migration): Correctly sort migrations by version number
2024-08-28 20:46:24 +02:00
Louis Chemineau
2574cbfa61
chore: Apply php:cs recommendations
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2024-08-28 10:44:18 +02:00
Robin Appelman
b21a399d1a
fix: implement sharding compatible cleanup for various bits
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:27:14 +02:00
Robin Appelman
fc05a67f19
fix: only allow pre-defined shards
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:21:19 +02: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 +02: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 +02:00
Robin Appelman
c09ec95255
feat: track expected output columns in query builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-28 10:18:52 +02:00
Joas Schilling
46c853146b
fix(migration): Correctly sort migrations by version number
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-08-27 16:25:10 +02:00
Christoph Wurst
bdcfe5b8a9
fix(db): Increase log level for very slow transactions
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-08-27 10:12:14 +02: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 +02:00
Robin Appelman
658d2f7ea1
feat: expose escapeLikeParameter trough query builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-08-23 15:12:10 +02:00
Robin Appelman
5654799cb4
fix: fix passing additional db connection parameters in factory
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-31 18:53:42 +02:00
Stephan Orbaugh
65941811b3
Merge pull request #44788 from nextcloud/db-error-logging
...
feat: add additional logging for database errors
2024-07-25 09:09:57 +02:00
Robin Appelman
7fbb981877
feat: add additional logging for database errors
...
including the stack trace of the current database transaction
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-24 15:35:07 +02:00
Robin Appelman
16c184e2cb
fix: cast to bigint on postgresql
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-23 14:41:13 +02:00
Joas Schilling
b656edc47c
fix(db): Fix md5 for oracle >= 20
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 14:13:56 +02:00
Joas Schilling
e1e4ee4d67
fix(db): Manually track if where() is called when not empty to avoid recursion
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:16 +02: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 +02:00
Joas Schilling
e45465781f
fix(db): Deprecate getState() as per upstream
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:15 +02:00
Joas Schilling
829f2b9bc7
fix(db): Promote the use of getDatabaseProvider to reduce the impage of removed upstream platforms
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:14 +02:00
Joas Schilling
bd383627a7
fix(db): Deprecate using table alias for DELETE and UPDATE
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:13 +02:00
Joas Schilling
c84580d53a
fix(db): Doctrine\DBAL\Connection::executeUpdate() is deprecated
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:12 +02:00
Joas Schilling
11e84b8968
fix(db): Fix internal calls to doctrine's fetch() methods
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:12 +02:00
Joas Schilling
a4c1d7291f
fix(db): Use createSchemaManager() method as getSchemaManager() is deprecated
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:11 +02:00
Joas Schilling
f92352eda4
fix(db): Deprecate getQueryPart() and resetQueryPart() methods that will be removed with Doctrine/DBAL 4
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-07-19 11:21:10 +02: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 +02:00
Robin Appelman
f94b0c3f55
Merge pull request #46397 from nextcloud/extended-query-builder-base
...
feat: add base class for extending the query builder
2024-07-15 14:53:22 +02:00
Robin Appelman
c82d382a20
feat: add base class for extending the query builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-12 17:01:39 +02:00
Robin Appelman
d81d59e9c3
feat: allow inspecting the parts of the composite expression builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-12 17:01:36 +02:00
Robin Appelman
4f01486da0
feat: add commands for exporting current and expected database schema
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-07-02 13:45:12 +02:00
Benjamin Gaussorgues
b7243681dd
feat(dbal): add proper insert ignore conflict method for SQLite
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-25 16:21:01 +02:00
Benjamin Gaussorgues
1e19566aa4
feat(dbal): add proper insert ignore conflict method for MySQL
...
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2024-06-25 11:28:37 +02:00
Daniel Kesselberg
cac6443cbb
feat(db): remove workaround for pqsql 9.4 and older
...
The workaround was required because "ON CONFLICT DO NOTHING" was added with pqsql 9.5.
PostgreSQL 9.4 is eol since 2020-02-13 and thus everyone should use a version with upsert support nowadays.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-06-03 12:47:31 +02:00
John Molakvoæ
258bb03cf5
Merge branch 'master' into refactor/OC-Server-getSecureRandom
...
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-05-30 14:24:22 +02:00
Daniel Kesselberg
3fb0aa40cd
feat(db): add mapping for lock wait timeout
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-05-29 11:10:43 +02:00
Christoph Wurst
3bfba2042c
fix(db): Prevent two connections for single node databases
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-05-28 10:38:36 +02:00
Thomas Citharel
b0f5c759a8
Merge pull request #39589 from nextcloud/enh/set-nest-transactions-with-savepoints
...
set Doctrine to use nest transactions with savepoints
2024-05-27 16:53:53 +02:00
Josh
48b47f7903
fix(db): Log loong transaction times at debug level
...
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-05-25 09:07:43 -04:00