Julius Härtl
2fdb9184fa
fix: Allow using replica config with split databases
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-03-26 09:25:44 +01:00
Ferdinand Thiessen
2525e73caa
fix(DB): Sanitize host parameter for postgres databases when IPv6 address is passed
...
Doctrine is using `pg_connect` with the `host` parameter, this does not allow IPv6 addresses in URI notation.
So we need to extract the IP address and pass it directly
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-03-25 20:25:17 +01:00
Thomas Citharel
2a0815401e
feat(db): set Doctrine to use nest transactions with savepoints
...
Using nested transactions without savepoints is actually deprecated by Doctrine:
https://www.doctrine-project.org/projects/doctrine-dbal/en/current/reference/transactions.html#transaction-nesting
Without savepoints, a nested transaction can be rollbacked but not
handled properly in the "real" transaction, leading to the following
error:
Transaction commit failed because the transaction has been marked for rollback only.
Ref
https://github.com/nextcloud/server/pull/36528#issuecomment-1639913965
(and possibly) https://github.com/nextcloud/server/issues/38902#issuecomment-1598075391
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2024-02-27 14:27:11 +01:00
Christoph Wurst
d52ebaa7cd
Merge pull request #43297 from nextcloud/fix/db/dirty-read-cool-off
...
fix(db): Let dirty writes cool off
2024-02-19 10:53:05 +01:00
Christoph Wurst
1f46e4b854
fix(db): Let dirty writes cool off
...
We can assume that after a few seconds a read will be clean again.
This is helpful for false warnings in long running processes.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-02-19 10:13:24 +01:00
Christoph Wurst
cf17a20835
fix(db): Give dirty read exception a message
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-02-15 09:14:47 +01:00
Christoph Wurst
aef28e191a
fix(db): Unify long transaction log/exception message
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-02-13 08:17:49 +01:00
Simon L
8fd2289058
Merge pull request #43357 from nextcloud/enh/41253/fix-occ-upgrade
...
fix(migration): Make naming constraint fail softer on updates
2024-02-08 18:27:39 +01:00
Louis Chemineau
898df41de9
Revert "Merge branch 'master' of github.com:nextcloud/server"
...
This reverts commit d9d60238c7 , reversing
changes made to ba3fdb0cdc .
2024-02-08 15:31:19 +01:00
Joas Schilling
487c33f479
fix(migration): Make naming constraint fail softer on updates
...
Only on installation we want to break hard, so that all developers notice
the bugs when installing the app on any database or CI, and can work on
fixing their migrations before releasing a version incompatible with Postgres.
In case of updates we might be running on production instances and the
administrators being faced with the error would not know how to resolve it
anyway. This can also happen with instances, that had the issue before the
current update, so we don't want to make their life more complicated
than needed.
Signed-off-by: Joas Schilling <coding@schilljs.com>
2024-02-07 20:45:51 +01:00
Christoph Wurst
97152de9bf
fix(db): Execute dirty reads on the primary node
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-01-30 12:17:39 +01:00
Christoph Wurst
911ab393c0
feat(db): Make dirty query logging available in production
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-01-30 10:31:03 +01:00
Christoph Wurst
033a654389
Merge pull request #42929 from nextcloud/fix/db/transacted-read-not-dirty
...
fix(db): Do not log transacted reads as dirty read
2024-01-23 09:34:20 +01:00
Christoph Wurst
ab0d7c007d
fix(db): Remove very verbose dirty query logs
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-01-18 18:33:07 +01:00
Christoph Wurst
f54b08c224
fix(db): Do not log transacted reads as dirty read
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2024-01-18 13:37:36 +01:00
Julius Härtl
296096e069
fix: Add reconnect check in case of timeouts on the db side
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-01-12 14:38:01 +01:00
Julius Härtl
c17c42a0b2
feat: First attempt to track dirty tables after writes and switch back to replicas if reads go to other tables
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
debug: error log
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-01-12 11:02:50 +01:00
Julius Härtl
3e60092b7d
feat: Add logging for transaction time
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-01-12 11:02:50 +01:00
Julius Härtl
86dc766276
Cast datetime columns in sqlite before comparing
...
Move the logic to prepare a column to the parent ExpressionBuilder so
that it can be reused for OCI and sqlite
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-12-29 10:36:59 +01:00
Julius Härtl
79c4986354
enh: Implement PrimaryReadReplicaConnection
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-12-16 20:27:37 +01:00
Côme Chilliet
1b547c7db8
Migrate missing primary key database check to new API
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-11-27 15:23:52 +01:00
Côme Chilliet
ad88c04f2d
Migrate missing index database check to new API
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-11-27 15:23:52 +01:00
Côme Chilliet
2cb1c0f2dc
Migrate missing column database check to new API
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-11-27 15:23:52 +01:00
Joas Schilling
aa5f037af7
chore: apply changes from Nextcloud coding standards 1.1.1
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2023-11-23 10:36:13 +01:00
Arthur Schiwon
93505b2cdd
fix(workflowengine): use andWhere() not second where()
...
- an unconditional where() condition is added right before
- fixes also wrongly named methods in the Exception message
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-11-13 14:47:47 +01:00
Joas Schilling
6f39d82031
fix(install): Make installing more verbose
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-11-03 15:44:46 +01:00
Joas Schilling
15a7aa51c5
fix(dbal): Fix types in query builder methods for parameters
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-18 07:09:08 +02:00
Joas Schilling
570159e610
fix(DB): Update comment to state why we still use the max 4k limit
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:27 +02:00
Joas Schilling
ccb01b19a0
fix(sqlite): Remove some old SQLite cheats
...
- Doctrine correctly forces integer for autoincrement by now
- Doctrine correctly maintains integer types by now
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:27 +02:00
Joas Schilling
f8ee6c4769
fix(oracle): Move away from internal and deprecated SchemaDiff API
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:26 +02:00
Joas Schilling
919207873e
fix(dbal): Move migrator away from deprecated calls
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:26 +02:00
Joas Schilling
160298c556
fix(mysql): Remove custom MySQL workaround from 2015
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:25 +02:00
Joas Schilling
b202b139dd
fix(postgres): Remove old Postgres 9.4 workaround
...
Postgres 10 is the minimum in the meantime
and doctrine/dbal fixed this in 2.6.0 already
ref https://github.com/doctrine/dbal/pull/2614
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:25 +02:00
Joas Schilling
ad839dbb0a
fix(sqlite): Remove no longer required autoincrement fix
...
- I installed current master and exported the schema as SQL
- Then I went to this branch, removed the content of the run() method (so made it no-op)
- I installed again and exported the schema as SQL
- The files are exactly the same, so whatever we tried to fix was fixed since 2015 in doctrine dbal
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-10-06 15:29:25 +02:00
Hamid Dehnavi
ea06cf2f39
Convert isset ternary to null coalescing operator
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 17:44:19 +03:30
Christoph Wurst
6b90ab1953
refactor: Use DBAL's executeQuery instead of query (deprecated)
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-09-27 10:43:42 +02:00
Robin Appelman
ef87ff1848
Merge pull request #39216 from shdehnavi/replace_substr_calls_in_lib_private
...
Refactor "substr" calls in lib/private to improve code readability
2023-09-21 16:34:27 +02:00
Anna Larch
56419d94f8
enh(db): provide database providers via API
...
To avoid leaking internals (OC), wrap the getDatabasePlatform and provide the
associated constants
fixes https://github.com/nextcloud/server/issues/30877
Signed-off-by: Anna Larch <anna@nextcloud.com>
2023-09-19 11:56:44 +02:00
Côme Chilliet
5c78adb20d
Fix Exception catching in OC\DB\Adapter
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-09-05 09:20:26 +02:00
Carl Schwan
e966cfbc4b
Cleanup plsam issues in DB/ContactsManager and Console
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2023-09-05 09:20:26 +02:00
Andrew Summers
1395a53602
Refactor OC\Server::getSecureRandom
...
Signed-off-by: Andrew Summers <18727110+summersab@users.noreply.github.com>
2023-08-29 21:32:40 -05:00
Joas Schilling
0bf738d8cb
feat(db): Ensure that index names are unique across the database
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-07-20 14:27:26 +02:00
Hamid Dehnavi
d0b20534b9
Refactor "substr" calls to improve code readability
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-07-07 04:54:20 +03:30
Christoph Wurst
14719110b9
chore: Replace \OC::$server->query with \OCP\Server::get in /lib
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2023-07-06 15:21:22 +02:00
dartcafe
2211721c2b
fixed quotes
...
Signed-off-by: dartcafe <github@dartcafe.de>
2023-06-20 18:35:10 +02:00
dartcafe
ed294f6e43
add type #38909
...
Signed-off-by: dartcafe <github@dartcafe.de>
2023-06-20 18:35:10 +02:00
Faraz Samapoor
e7cc7653b8
Refactors "strpos" calls in lib/private to improve code readability.
...
Signed-off-by: Faraz Samapoor <fsamapoor@gmail.com>
2023-05-15 15:17:19 +03:30
Julius Härtl
3bdd770129
fix: Check for wrapped retriable exceptions
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-02 19:42:11 +02:00
Côme Chilliet
426c0341ff
Use typed version of IConfig::getSystemValue as much as possible
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-05 12:50:08 +02:00
Arthur Schiwon
997c2a2a79
fix DBAL exception handling in setValues
...
This seems to be a left over after abstracting DBAL. Nowadays,
IQueryBuilder::executeStatement() only throws a \OCP\DB\Exception, where
previously original DBAL exceptions where thrown. These are now wrapped,
the orignal classes are now mapped to a reason.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2023-03-31 17:01:17 +02:00
Ferdinand Thiessen
a9af58fd1a
fix(DB): Remove not supported column comments when using SQLite
...
Signed-off-by: Ferdinand Thiessen <rpm@fthiessen.de>
2023-02-22 01:07:26 +01:00
Robin Appelman
426b3429f7
log start time of queries for profiler
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-02-14 15:16:15 +01:00
Joas Schilling
ecad09b38a
Merge pull request #36261 from nextcloud/techdebt/noid/warn-devs-about-potential-bugs
...
fix(querybuilder): Log a warning if where() is called again on a quer…
2023-01-23 18:47:25 +01:00
Côme Chilliet
f5c361cf44
composer run cs:fix
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +01:00
Joas Schilling
7f0a54c558
fix(querybuilder): Log a warning if where() is called again on a query builder object
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2023-01-20 07:41:19 +01:00
Côme Chilliet
8a16e7e8a1
Fix more psalm issues in OC\DB
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-21 11:30:20 +01:00
Côme Chilliet
378630f8a0
Fix psalm issues following doctrine/dbal bump
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-11-21 10:56:15 +01:00
Roeland Jago Douma
d151999fc8
typehint migrationservice closures
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2022-10-09 21:31:27 +02:00
Retidurc Silvernight
2269f35842
Change option name again to be more like the other options
...
Signed-off-by: Retidurc Silvernight <retidurc@silvernight.social>
2022-09-23 09:48:02 +02:00
Retidurc Silvernight
0de8729d7b
Change config option to db.persistent
...
Signed-off-by: Retidurc Silvernight <retidurc@silvernight.social>
2022-09-23 09:48:01 +02:00
Retidurc Silvernight
90f3379dfc
Expose Doctrine settings in Netxcloud settings
...
Signed-off-by: Retidurc Silvernight <retidurc@silvernight.social>
2022-09-23 09:47:56 +02:00
Côme Chilliet
4ac81733bd
Declare strict types in all new Event classes
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-25 16:15:49 +02:00
Côme Chilliet
a2a7150d6d
Migrate Repair events to OCP\EventDispatcher\Event
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-25 16:15:48 +02:00
Côme Chilliet
a83a8f0dde
Migrate Migrator::executeSql to OCP\EventDispatcher\Event
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-25 16:13:47 +02:00
Côme Chilliet
4ba30d40cf
Switch to string keys for argument of GenericEvent for OC\DB\Migrator
...
It seems checkTable is actually never dispatched?
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-08-25 16:13:46 +02: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 +02:00
Robin Appelman
9b52663a81
Revert "make expression build return IQueryFunction instead of string"
...
This reverts commit 813b50ed42 .
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-08-16 12:07:09 +02:00
luz paz
368f83095d
Fix typos in lib/private subdirectory
...
Found via `codespell -q 3 -S l10n -L jus ./lib/private`
Signed-off-by: luz paz <luzpaz@github.com>
2022-07-27 08:52:17 -04:00
Côme Chilliet
c598e3cafa
composer run cs:fix
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-06-21 16:36:25 +02:00
Côme Chilliet
1bd5222224
Fix PHP 8.2 warnings about undeclared properties
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-06-21 16:17:52 +02: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 +02:00
Robin Appelman
813b50ed42
make expression build return IQueryFunction instead of string
...
this allows passing the expressions to further expressions without them being escaped as column names
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-06-02 15:52:08 +02:00
Carl Schwan
9ec0cb0a90
Fix psalm issues related to the user backend
...
- 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>
2022-05-20 17:14:58 +02:00
Robin Appelman
a4e120c203
tell mysql to ignore the sort index for search queries
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-22 13:42:33 +02:00
Joas Schilling
df36ed4d1a
Log missing primary key until we make it a requirement
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-04-08 10:47:24 +02:00
Joas Schilling
10b2319aa0
Add missing doc changes
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-04-07 15:50:33 +02:00
Joas Schilling
82c33be744
Fix typos and empty tabs
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-04-07 12:42:52 +02:00
John Molakvoæ
0257315c34
Improve error logging on migration failure
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2022-04-07 11:49:20 +02:00
John Molakvoæ
e20d5fa7fc
Ensure schema change before checking OracleConstraints
...
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2022-04-07 11:18:14 +02:00
Robin Appelman
1537c3d23b
record backtrace when profiling db requests
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-04-04 18:12:30 +02:00
Carl Schwan
135bdb3d58
Merge pull request #30823 from nextcloud/work/profiler
...
Built-in profiler
This adds the required API for collecting information about requests. This information
can then be displayed with the new 'profiler' app.
2022-04-04 12:56:37 +02:00
Carl Schwan
7d272c54d0
Add a built-in profiler inside Nextcloud
...
The webui is provided by a seperate application named profiler
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-04-04 10:28:26 +02:00
Côme Chilliet
dd357d7f9b
Merge pull request #31679 from nextcloud/bugfix/noid/ensure-string-columns-to-be-maximum-of-4000
...
Ensure string column limit of 4.000 characters
2022-03-31 11:37:43 +02: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 +02:00
Côme Chilliet
7407a324d9
Fix LENGTH function name across databases
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-28 00:01:17 +02:00
Joas Schilling
129bae62d4
Ensure string column limit of 4.000 characters
...
https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/datatype-limits.html#GUID-963C79C9-9303-49FE-8F2D-C8AAF04D3095
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-25 12:44:51 +01:00
Côme Chilliet
25af856ed2
Use OCTET_LENGTH which is more common than LENGTHB
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 20:35:02 +00: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 +00:00
Côme Chilliet
f1febfe696
Fix log level for exception in QueryBuilder
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 16:21:28 +01:00
Côme Chilliet
ea23523c70
Adapt more code to migration to LoggerInterface
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 16:21:25 +01:00
Côme Chilliet
6be7aa112f
Migrate from ILogger to LoggerInterface in lib/private
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 16:21:25 +01:00
Joas Schilling
0acd4b5f82
Merge pull request #31235 from nextcloud/techdebt/noid/extract-request-id
...
Extract request id handling to dedicated class so it can be injected without DB dependency
2022-03-22 12:08:45 +01:00
Joas Schilling
3bed983a9c
Disable for now again until more apps are fixed
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-21 12:14:19 +01:00
Joas Schilling
32ede5489e
Limit missing primary key fail to new tables
...
This will work on CI so devs notice it when they install the app for testing,
and at the same time existing faulty tables don't break the upgrade to 24
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-21 12:14:19 +01:00
Joas Schilling
b35253a4c3
Enforce primary keys as they are required to be performant in MySQL clusters
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-10 10:24:05 +01:00
Julius Härtl
83717a7800
Add event logging for db and redis connection
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-02-28 11:24:41 +01:00
Louis Chemineau
405c5eb813
Add --dry-run option for db:add-missing-* cmd
...
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-02-24 16:42:08 +01:00
Joas Schilling
1c138d3ae2
Allow to prefix the Query log with the request id
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-02-23 11:01:58 +01:00
Joas Schilling
76541170bb
Allow specify a config prefix for another database connection
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-02-03 17:16:03 +01:00
Joas Schilling
fccb98c8b6
Merge pull request #30379 from nextcloud/feature/add-comments-reactions
...
Add comments reactions
2022-01-21 15:08:12 +01:00
Joas Schilling
d850dc0220
Remove order from groupConcat as it is not working everywhere
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-21 08:39:39 -03:00
Vitor Mattos
f071b4dfbb
Fix groupConcat and ordering on Oracle
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-21 08:39:39 -03:00
Vitor Mattos
afe5b6dd8a
Prevent query error when use subquery
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-21 08:37:06 -03:00
Joas Schilling
de9fe8fcc1
Merge pull request #30471 from nextcloud/enh/cast-char-mysql
...
Explicitly cast char in the query builder
2022-01-20 14:32:56 +01:00
John Molakvoæ
eb3cf6c5ec
Merge pull request #30129 from nextcloud/mdb10.6-pipeline
2022-01-19 09:25:46 +01:00
Carl Schwan
89d109a4d9
Merge pull request #30508 from nextcloud/fix/psaml-bin
...
Fix psalm not running
2022-01-13 09:51:04 +01:00
Carl Schwan
6312c0df69
Check style update
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-13 00:19:07 +01:00
Vitor Mattos
f732cf1b04
Unit tests
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-07 09:54:41 +01:00
Vitor Mattos
814924a787
Accept multipe args on concat
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-06 08:12:10 -03:00
Joas Schilling
eebed2c434
Fix psalm complaint
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 17:32:07 +01:00
Julius Härtl
a169ca306e
Explicitly cast char in the query builder
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2022-01-04 16:53:00 +01:00
Joas Schilling
005e717fe6
Use quote function
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 13:59:54 +01:00
Joas Schilling
ecc92067bf
Try escaping Oracle single quotes
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 13:36:55 +01:00
Joas Schilling
46ad6fa3c7
Add a test with integer
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-04 09:15:17 +01:00
Joas Schilling
e3e73a12ef
Fix oracle LISTAGG
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-03 21:43:53 -03:00
Vitor Mattos
fb6a9f308d
Add unit test
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-03 21:41:38 -03:00
Vitor Mattos
7b9fea85b6
Add unit test and orderBy parameter
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-03 12:45:00 -03:00
Vitor Mattos
79b3df00f8
Add group_concat aggregator function
...
Signed-off-by: Vitor Mattos <vitor@php.rio>
2022-01-03 07:48:11 -03:00
Carl Schwan
52760a95d9
Check if directoy is writable instead of possibly missing file
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-12-20 15:36:52 +01:00
acsfer
06b77fd666
Attempt to fix CI
2021-12-07 11:58:30 +01:00
Joas Schilling
168c673755
Allow to log DB, redis and LDAP requests into files
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-01 22:33:41 +01:00
Côme Chilliet
18a91f02fa
Fix default value for $type in OC\DB\QueryBuilder\ExpressionBuilder\ExpressionBuilder::literal
...
This fixes PHP errors about passing null to PDO::quote second parameter.
We may want to change IExpressionBuilder as well?
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:29:02 +01:00
Joas Schilling
5bb49feef8
Allow NULL as well for limit, not integer only
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-15 18:51:28 +01: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 +02:00
Robin Appelman
695326534c
disable path prefix index on postgresql for now
...
having the index work properly for the queries we need it for requires some additional options which dbal does not support at the momement.
to prevent making it harder to add the correct index later on we don't create the index for now on postgresql
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-08 18:39:22 +02:00
Arthur Schiwon
ce283c12b6
make it possible to override the default collation
...
- allows admins to configure it for edge cases like accent sensitivity
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-01 11:57:47 +02:00
Joas Schilling
aae16c21e6
Allow casting query functions as well
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-07 14:20:24 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd
Update php licenses
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Christoph Wurst
865661ed75
Rename IQueryBuilder::executeUpdate to IQueryBuilder::executeStatement
...
Because executeUpdate wasn't a great name. And in DBAL they also use
executeStatement more consistently now.
Ref https://github.com/doctrine/dbal/issues/4607
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-05 10:31:54 +02:00
Christoph Wurst
2ab8268128
Do not check Oracle column constraints in unrelated migrations
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-04-19 13:05:34 +02:00
Joas Schilling
f9d4fa2d38
Rename the method to match what it does
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:18 +02:00
Joas Schilling
3696ef5b96
Don't allow Notnull for boolean columns
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:17 +02:00
Joas Schilling
133a6f4fe4
Document the constraints we test against
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:17 +02:00
Joas Schilling
c98cab137c
Fix exception messages spacing
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:10 +02:00
Morris Jobke
ab48d5e8cb
Cleanup unneeded code around database.xml
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-03-24 22:15:44 +01:00
Morris Jobke
37feee4e87
Merge pull request #24384 from nextcloud/cleanup/remove-old-migration-check
...
Remove dead code from checking core/apps before upgrades
2021-03-17 21:29:19 +01:00
Julius Härtl
a2f3077ee8
Skip db migration simulation for core schema changes
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-03-17 21:08:22 +01:00
Morris Jobke
459e0b311b
Merge pull request #25924 from nextcloud/bugfix/noid/only-mark-migrations-as-installed-after-executing-them-in-case-the-developer-broke-them
...
Only mark migrations as installed after execution
2021-03-17 20:29:28 +01:00
Roeland Jago Douma
85e48d796c
Merge pull request #25929 from nextcloud/techdept/psalm/25839/redundantcasts
...
Remove Redundantcasts
2021-03-05 08:42:54 +01:00
Roeland Jago Douma
d7f7d3bc51
Type CompositeExpression and ICompositeExpression
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 21:47:44 +01:00
Roeland Jago Douma
c3f1eb4f7f
Remove Redundantcasts
...
For #25839
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 14:44:04 +01:00
Roeland Jago Douma
76a6328d10
Add executeQuery and executeUpdate
...
Names shamelessly copied from Doctrine itself.
Internally it is still using the same flow. But I added some checks
around it.
This should make static analysis a bit more happy. Which in turn makes
me more happy.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 14:03:31 +01:00
Joas Schilling
1e5fea0460
Only mark migrations as installed after execution
...
The problem is that if a developer creates a structural error in their migration file,
they will already be marked as executed and an not be rerun.
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-04 08:49:42 +01:00
Joas Schilling
a6246be34c
Merge pull request #25656 from nextcloud/enh/type/expressionbuilder
...
Type the experssionbuilders
2021-03-03 11:37:16 +01:00
Joas Schilling
11858a3d66
Merge pull request #25816 from nextcloud/iquerybuilder-join-conditions
...
allow non string join conditions in query builder
2021-03-03 11:34:56 +01:00
Roeland Jago Douma
4bdf9f5849
Type the experssionbuilders
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 10:44:09 +01:00
Robin Appelman
47dd8e54b5
allow non string join conditions in query builder
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-03 10:43:15 +01:00
Daniel Kesselberg
bc91eb7c64
Filter tables with other table prefix
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-03-02 21:09:33 +01: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 +01:00
Joas Schilling
1de3b8b0ec
When it kicks in
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-18 10:14:12 +01:00