Commit graph

131 commits

Author SHA1 Message Date
Robin Appelman
ac209cea52
add count() as shortcut for count('*') in FunctionBuilder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-11-13 11:30:32 +01:00
Robin Appelman
0e9feeb090
return from QueryBuilder instead of IQueryBuilder
this make the type hints work properly with querybuilder subclasses

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-11-13 11:30:27 +01:00
Robin Appelman
8ef5a366ec
add MAX and MIN to functionbuilder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-09-06 12:28:17 +02:00
Arthur Schiwon
d0409548c6
instead of upsert, fallback to default query on PgSQL <= 9.4
because there is no upsert yet

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-08-14 09:05:11 +02:00
Christoph Wurst
3174012adf Add event dispatcher to OCP
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-06-25 10:02:27 +02:00
Roeland Jago Douma
d11caf1a3a
No need for platform hacks anymore
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-05-14 12:24:43 +02:00
Joas Schilling
b3e6cbc4c5
Remove the custom prefix from the table name length when checking on the default primary index
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-04-30 12:08:52 +02:00
Joas Schilling
f906913177
Allow to use Subqueries in from
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-04-16 15:42:21 +02:00
Joas Schilling
f557e1e214
Indeces, columns and sequences don't have the table prefix
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-28 14:51:11 +01:00
Morris Jobke
f889beae7e
Fix PHPDoc
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-21 17:05:57 +01:00
Ole Ostergaard
0d778fcc4e Code cleanup.
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +01:00
Ole Ostergaard
d62da82bf9 Add supression of SqlInjectionChecker.
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +01:00
Ole Ostergaard
c9b6487393 Add PostgreSQL specific implementation for includeIgnoreConflict.
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +01:00
Ole Ostergaard
a48ea8cffa Add insertIgnoreConflict to Adapter and use it for for executing the file locking.
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +01:00
Robin Appelman
bfd539017f
add casting to string for postgresql query builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-14 14:19:10 +01:00
Joas Schilling
c09fa1ee65
Only check the Oracle schema conditions if the app supports it
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-17 13:52:08 +01:00
Joas Schilling
f265657bc6
Only check changed items
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-17 13:52:08 +01:00
Morris Jobke
fd8eeccb15
Merge pull request #11942 from nextcloud/techdebt/noid/use-count-function
Use the defined func()->count() instead of manual counting
2018-11-12 17:43:56 +01:00
Morris Jobke
5273639d0e
Add deprecation message ofr insertIfNotExist
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-09 12:13:30 +01:00
Morris Jobke
230e93f575
Catch UniqueConstraintViolationException inside insertIfNotExist
This is the most common case for the usage of this method.

See also https://github.com/nextcloud/server/issues/12369 and the linked tickets.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-09 10:38:20 +01: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 +01:00
Daniel Kesselberg
0ee191bf44
Use const for dbname and dbtableprefix defaults
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-09-23 18:15:57 +02:00
Joas Schilling
f5c63d7a6e
Disable Oracle enforcement for now until the following issues are solved:
* Only apps should be checked which say they support oracle
* Only check newly added items, to allow forward migration from an existing database structure

Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-08-06 17:34:40 +02:00
Joas Schilling
ef5074adaa
Fix primary key handling on postgres
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:22 +02:00
Joas Schilling
008c8dde1a
Ignore custom prefixes which are longer
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:22 +02:00
Joas Schilling
5e0bfe5c16
Ignore automatic generated sequences
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +02:00
Joas Schilling
960961148e
Fix calculation of default name
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +02:00
Joas Schilling
8a45cb1d20
Prevent too long identifier names
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +02:00
Joas Schilling
891de38080
Only create the schema when moving between databases
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-19 15:32:36 +02:00
Joas Schilling
011fe9e0f9
MySQL 8.0+ and MariaDB 10.3+ are large prefix and barracuda by default
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-09 15:37:22 +02:00
Robin Appelman
3047ef31bd
Add count to function builder
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-14 14:32:22 +02:00
Morris Jobke
624d191ef6
Fix wrong hint about missing indexes
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-06-13 11:56:43 +02:00
Morris Jobke
393d9aae74
Add a hint that some indexes are not added yet
* gives the admin a chance to discover the missing indexes and improve the performance of the instance without digging through the manual
* nicely integrated in the setup checks where this kind of hints belong to
* also adds an option to integrate this from an app based on events
* fix style of setting warnings

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-06-06 16:55:01 +02:00
Morris Jobke
367b1be15c
Merge pull request #9425 from nextcloud/db-reconnect-timeout
Check connection status and attempt to reconnect each each minute
2018-06-04 10:40:12 +02:00
Robin Appelman
b40629ac8c
Add human readable description to migration steps
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-30 21:28:05 +02:00
Robin Appelman
335619f6a4
Check connection status and attempt to reconnect each each minute
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-08 19:25:58 +02:00
Joas Schilling
78ee3abb78
Move regex to a function and add tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-19 12:49:36 +02:00
Joas Schilling
8f7a0af951
Allow IPv6 database hosts
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-18 14:48:21 +02: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 +02:00
Roeland Jago Douma
ab04f3cb19
Fix Array to String conversion in QueryBuilder
Fixes #9080

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-05 09:08:32 +02:00
Roeland Jago Douma
46c195b58b
Made IExpressionBuilder varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:35:09 +01:00
Roeland Jago Douma
0009358c17
Made orHaving varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:32:31 +01:00
Roeland Jago Douma
408c2103db
Made addHaving varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:31:33 +01:00
Roeland Jago Douma
2c585afea1
Make having varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:31:04 +01:00
Roeland Jago Douma
c6eba3c925
Made addGroupBy varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:30:14 +01:00
Roeland Jago Douma
afbad7e15e
Made groupBy varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:29:36 +01:00
Roeland Jago Douma
d6b93e6620
Made orWhere varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:28:27 +01:00
Roeland Jago Douma
07cb6aaeff
Made andWhere varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:27:43 +01:00
Roeland Jago Douma
222dbb7bc9
Made where varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:27:11 +01:00
Roeland Jago Douma
2976b39102
Made AddSelect varadic
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:25:32 +01:00