Joas Schilling
133a6f4fe4
Document the constraints we test against
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:17 +07:00
Joas Schilling
c98cab137c
Fix exception messages spacing
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:10 +07:00
Morris Jobke
ab48d5e8cb
Cleanup unneeded code around database.xml
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-03-24 22:15:44 +07: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 +07: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 +07: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 +07:00
Roeland Jago Douma
85e48d796c
Merge pull request #25929 from nextcloud/techdept/psalm/25839/redundantcasts
...
Remove Redundantcasts
2021-03-05 08:42:54 +07:00
Roeland Jago Douma
d7f7d3bc51
Type CompositeExpression and ICompositeExpression
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 21:47:44 +07:00
Roeland Jago Douma
c3f1eb4f7f
Remove Redundantcasts
...
For #25839
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 14:44:04 +07: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 +07: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 +07:00
Joas Schilling
a6246be34c
Merge pull request #25656 from nextcloud/enh/type/expressionbuilder
...
Type the experssionbuilders
2021-03-03 11:37:16 +07: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 +07:00
Roeland Jago Douma
4bdf9f5849
Type the experssionbuilders
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 10:44:09 +07: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 +07:00
Daniel Kesselberg
bc91eb7c64
Filter tables with other table prefix
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-03-02 21:09:33 +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
Joas Schilling
1de3b8b0ec
When it kicks in
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-18 10:14:12 +07:00
Robin Appelman
111fa47f10
remove ReconnectWrapper
...
dbal now handles it's own reconnections: https://github.com/doctrine/dbal/blob/3.0.x/UPGRADE.md#the-pingableconnection-interface-is-removed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-02-09 16:40:09 +07:00
Daniel Kesselberg
fe378200fa
Check for generic errors at last.
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-02-02 18:28:49 +07:00
Christoph Wurst
b9287f9780
Merge pull request #25091 from nextcloud/enhancement/ocp-db-exception-abstraction
...
Add our own DB exception abstraction
2021-01-14 12:27:23 +07:00
blizzz
f9ab7575e7
Merge pull request #25036 from nextcloud/fix/noid/limitied-allowed-items-db-in_2
...
respect DB restrictions on number of arguments in statements and queries
2021-01-14 11:36:42 +07:00
Christoph Wurst
2c9cdc1cdb
Add our own DB exception abstraction
...
Right now our API exports the Doctrine/dbal exception. As we've seen
with the dbal 3 upgrade, the leakage of 3rdparty types is problematic as
a dependency update means lots of work in apps, due to the direct
dependency of what Nextcloud ships. This breaks this dependency so that
apps only need to depend on our public API. That API can then be vendor
(db lib) agnostic and we can work around future deprecations/removals in
dbal more easily.
Right now the type of exception thrown is transported as "reason". For
the more popular types of errors we can extend the new exception class
and allow apps to catch specific errors only. Right now they have to
catch-check-rethrow. This is not ideal, but better than the dependnecy
on dbal.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-12 16:38:23 +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
Joas Schilling
3cdfe7b0f4
Don't try a transaction for the migrator on MySQL
...
As per https://dev.mysql.com/doc/refman/8.0/en/implicit-commit.html
CREATE TABLE statements automatically commit always. The only reason
this worked in the past was that PHPs PDO connection didn't check the
actual state on commit, but only checked their internal state.
But in PHP8 this was fixed:
https://github.com/php/php-src/blob/PHP-8.0/UPGRADING#L446-L450
So now commit() fails because the internal PDO connection implicitly
commited already.
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-08 16:25:40 +07:00
Morris Jobke
dc00c8ac31
Remove "primary" option from schema builder argument $options as it is not used anymore and triggers an exception
...
See 138eb85234 (diff-300f55366adb50a32a40882ebdc95c163b141f64cba5f45f20bda04a907b3eb3L82)
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-08 11:45:19 +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
Christoph Wurst
9ce3ea3368
Update license headers
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-30 14:07:05 +07:00
Roeland Jago Douma
adc4f1a811
Merge pull request #22916 from J0WI/unifiy-links-to-php.net
...
Unify links to php.net
2020-12-22 09:53:31 +07:00
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +07:00
Joas Schilling
39bee7948d
Merge pull request #24631 from nextcloud/bugfix/noid/prevent-select-asterix-and-specifics
...
Prevent * and other things in the same query for Oracle
2020-12-14 14:31:15 +07:00
Joas Schilling
5828f3c4f9
Prevent * and other things in the same query for Oracle
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-14 09:35:50 +07:00
Julius Härtl
36ffad5ba7
Make sure the migrations table schema is always checked
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Revert "Make sure the migrations table schema is always checked"
This reverts commit 258955ef738a52d9da2ac2fe59466e6093d7e9bc.
Set current vendor during upgrade and perform migrations table change if needed
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-09 15:24:03 +07:00
Joas Schilling
c1f28f8d35
Make debugging migration exceptions easier
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-12-07 19:35:01 +07:00
Vincent Petry
a50bcdabcc
Prevent log_query to mess up regular execution flow
...
When the "log_query" debug config parameter is set, SQL queries are
logged. However, if an error occurs when converting the values to
string, it will abort the request.
This fix catches the error and continues instead.
Also added handler for DateTime value which is already known to cause
aborts here.
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2020-12-02 14:10:35 +07:00
Morris Jobke
691409cdec
Merge pull request #24062 from nextcloud/revert-24060-revert-24039-faster-installation
...
Revert "Revert "Installation goes brrrr""
2020-11-20 15:02:51 +07:00
Morris Jobke
1b613c84e9
Merge pull request #24007 from nextcloud/select-distinct-multiple
...
allow selecting multiple columns with SELECT DISTINCT
2020-11-19 22:39:01 +07:00
Joas Schilling
a8cb8e21c1
Add types to function builder
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-16 19:46:24 +07:00
Joas Schilling
9a3ce2f71f
Don't drop the table anymore when we create it again
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-16 19:34:38 +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
d7b5d4cb58
Revert "Revert "Installation goes brrrr""
2020-11-11 20:12:13 +07:00
Christoph Wurst
d36155620c
Revert "Installation goes brrrr"
2020-11-11 17:40:12 +07:00
Joas Schilling
77713ab454
Don't create a schema to check if the migrations table exists
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-11 11:45:00 +07:00
Joas Schilling
dde0e73c6b
Reduce the number of schemas we generate when we just run all migrations anyway
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-11 11:45:00 +07:00
Joas Schilling
d5df033ede
Create primary keys on all tables and add a command to create the afterwards
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +07:00
Joas Schilling
fbda2d1d25
Don't try to update on NotNullConstraintViolationException, only on unique or foreign key
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:27 +07:00
Joas Schilling
1aa9c9164d
Fix comparing the empty string for global credentials
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-10 15:36:26 +07:00
Roeland Jago Douma
a5fa9604ba
Merge pull request #23923 from nextcloud/bugfix/oci/fix-greatest-order-for-oracle
...
Fix greatest/least order for oracle
2020-11-07 16:55:13 +07:00
Joas Schilling
d9e471771a
Update parameters
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-07 14:06:03 +07:00
Joas Schilling
cb8bef1f37
Fix iLike() falsely turning escaped % and _ into wildcards
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 16:22:13 +07:00
Joas Schilling
3aaf2fabb1
Make sure Oracle always casts everything in the best way
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 12:13:22 +07:00
Joas Schilling
cfc35fa49a
Fix casting to integer on Oracle
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-11-06 08:38:08 +07:00
Julius Härtl
f49630f48c
Replace prefix in executeUpdate
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-11-03 11:03:02 +07:00
Roeland Jago Douma
fe46149560
Psalm fixes
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-30 19:27:53 +07:00
Roeland Jago Douma
28be188fbc
Update internal connection class
...
executeUpdate is deprecated in favor of executeStatement.
We overwrote the old one hence the prefix was no longer replaced.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-30 19:27:53 +07:00
Morris Jobke
f12e7e0e95
Fetch the logger and system config once for all query builder instances
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-10-29 22:35:06 +07:00
Morris Jobke
c1fd22b025
Merge pull request #23144 from nextcloud/enh/noid/update-param-for-psalm
...
Less psalm warnings
2020-10-06 22:07:58 +07:00
Christoph Wurst
d9015a8c94
Format code to a single space around binary operators
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-05 20:25:24 +07:00
Daniel Kesselberg
0e3ddf1b27
Add explicit typecast for $value.
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-03 17:15:14 +07:00
Daniel Kesselberg
64b10f61df
Update signature for set
...
also ILiteral and IQueryFunction are valid.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-02 19:15:34 +07:00
Daniel Kesselberg
8fdb74bdd5
Update signature for in/notIn
...
$y is always passed to quoteColumnName hence ILiteral|IParameter|IQueryFunction are supported.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-02 19:09:28 +07:00
Daniel Kesselberg
d14c971ad6
Update signature for like/notLike/in/notIn
...
$x is always passed to quoteColumnName hence ILiteral|IParameter|IQueryFunction are supported.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-10-02 18:59:53 +07:00
Joas Schilling
3212c074b9
Log the number of queries built and executed
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-09-25 14:55:53 +07:00
J0WI
68ce17e59b
Unify links to php.net
...
Update all links to https://www.php.net/
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2020-09-17 17:40:04 +07:00
Morris Jobke
99c9423766
Remove @suppress SqlInjectionChecker
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-09-16 15:53:56 +07:00
Joas Schilling
50230847ce
Warn about adding NotNull columns with nullable default
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-09-07 13:14:49 +07:00
Christoph Wurst
2a054e6c04
Update the license headers for Nextcloud 20
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-08-24 14:54:25 +07:00
Morris Jobke
fedf9c69d9
Use matching parameter names form interfaces and implementations
...
Found by Psalm 3.14.1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-19 18:16:35 +07:00
Morris Jobke
d7f66c36ac
Fix "misplaced variables" warning of Psalm in PHPDoc statements
...
Ref #21787
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-17 17:46:57 +07:00
Daniel Kesselberg
10ac844448
Update documentation for QueryBuilder::set
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-08-14 19:55:01 +07:00
Daniel Kesselberg
87dd760a89
Replace TYPE with TYPES
...
As TYPE::* is deprecated.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-06-30 23:46:22 +07:00
Christoph Wurst
cb057829f7
Update license headers for 19
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +07:00
Roeland Jago Douma
cbcf072b23
Revert "Make sure MySQL is not saying 'this' = 'this ' is true"
2020-04-15 23:49:16 +07:00
Joas Schilling
16e9bf2309
Make sure MySQL is not saying 'this' = 'this ' is true
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-04-15 09:14:12 +07:00
Christoph Wurst
28f8eb5dba
Add visibility to all constants
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +07:00
Christoph Wurst
1584c9ae9c
Add visibility to all methods and position of static keyword
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:51:06 +07:00
Christoph Wurst
caff1023ea
Format control structures, classes, methods and function
...
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.
This also removes and empty lines from method/function bodies at the
beginning and end.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +07:00
Christoph Wurst
14c996d982
Use elseif instead of else if
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +07:00
Christoph Wurst
44577e4345
Remove trailing and in between spaces
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:07:47 +07:00
Christoph Wurst
afbd9c4e6e
Unify function spacing to PSR2 recommendation
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +07:00
Christoph Wurst
41b5e5923a
Use exactly one empty line after the namespace declaration
...
For PSR2
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +07:00
Christoph Wurst
2fbad1ed72
Fix (array) indent style to always use one tab
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 10:16:08 +07:00
Christoph Wurst
85e369cddb
Fix multiline comments
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-08 22:24:54 +07:00
Joas Schilling
bc6a5ef5c4
Merge pull request #19890 from nextcloud/enh/comments-reference-id
...
Add optional comments reference_id
2020-04-02 11:34:21 +07:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +07:00
Joas Schilling
720dc4e93d
Add optional column oc_comments.reference_id
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-31 10:51:15 +07:00
Christoph Wurst
463b388589
Merge pull request #20170 from nextcloud/techdebt/remove-unused-imports
...
Remove unused imports
2020-03-27 17:14:08 +07:00
Christoph Wurst
b80ebc9674
Use the short array syntax, everywhere
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-26 16:34:56 +07:00
Christoph Wurst
74936c49ea
Remove unused imports
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +07:00
Christoph Wurst
5fc4c91a76
Fix mismatching doc block parameter types
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-06 16:28:42 +07:00
Daniel Kesselberg
9e699a8d21
Add event subscriber for transaction isolation level
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-02-21 09:59:08 +07:00
Joas Schilling
059968e1c7
Pick a shorter name for the transfer ownership table
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-12-10 11:01:26 +07:00
Christoph Wurst
5bf3d1bb38
Update license headers
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +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
Joas Schilling
19935a6a26
Merge pull request #17949 from nextcloud/debt/deprecated-const
...
Connection::TRANSACTION_READ_COMMITTED is deprecated
2019-12-04 09:49: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
Roeland Jago Douma
68748d4f85
Some php-cs fixes
...
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +07:00
Daniel Kesselberg
9cb7252880
Connection::TRANSACTION_READ_COMMITTED is deprecated
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-11-14 20:17:27 +07:00
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 +07: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 +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
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 +07:00
Christoph Wurst
3174012adf
Add event dispatcher to OCP
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-06-25 10:02:27 +07: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 +07: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 +07:00
Joas Schilling
f906913177
Allow to use Subqueries in from
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-04-16 15:42:21 +07: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 +07:00
Morris Jobke
f889beae7e
Fix PHPDoc
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-03-21 17:05:57 +07:00
Ole Ostergaard
0d778fcc4e
Code cleanup.
...
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +07:00
Ole Ostergaard
d62da82bf9
Add supression of SqlInjectionChecker.
...
Signed-off-by: Ole Ostergaard <ole.c.ostergaard@gmail.com>
2019-03-21 11:42:00 +07: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 +07: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 +07: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 +07: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 +07:00
Joas Schilling
f265657bc6
Only check changed items
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-12-17 13:52:08 +07: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 +07:00
Morris Jobke
5273639d0e
Add deprecation message ofr insertIfNotExist
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-09 12:13:30 +07: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 +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
Daniel Kesselberg
0ee191bf44
Use const for dbname and dbtableprefix defaults
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-09-23 18:15:57 +07: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 +07:00
Joas Schilling
ef5074adaa
Fix primary key handling on postgres
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:22 +07:00
Joas Schilling
008c8dde1a
Ignore custom prefixes which are longer
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:22 +07:00
Joas Schilling
5e0bfe5c16
Ignore automatic generated sequences
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +07:00
Joas Schilling
960961148e
Fix calculation of default name
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +07:00
Joas Schilling
8a45cb1d20
Prevent too long identifier names
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-27 14:45:21 +07: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 +07: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 +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
Morris Jobke
624d191ef6
Fix wrong hint about missing indexes
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-06-13 11:56:43 +07: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 +07: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 +07: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 +07: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 +07: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 +07:00
Joas Schilling
8f7a0af951
Allow IPv6 database hosts
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-18 14:48:21 +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
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 +07:00
Roeland Jago Douma
46c195b58b
Made IExpressionBuilder varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:35:09 +07:00
Roeland Jago Douma
0009358c17
Made orHaving varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:32:31 +07:00
Roeland Jago Douma
408c2103db
Made addHaving varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:31:33 +07:00
Roeland Jago Douma
2c585afea1
Make having varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:31:04 +07:00
Roeland Jago Douma
c6eba3c925
Made addGroupBy varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:30:14 +07:00
Roeland Jago Douma
afbad7e15e
Made groupBy varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:29:36 +07:00
Roeland Jago Douma
d6b93e6620
Made orWhere varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:28:27 +07:00
Roeland Jago Douma
07cb6aaeff
Made andWhere varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:27:43 +07:00
Roeland Jago Douma
222dbb7bc9
Made where varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:27:11 +07:00
Roeland Jago Douma
2976b39102
Made AddSelect varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 09:25:32 +07:00
Roeland Jago Douma
c8aee70a0b
Made select varadic
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-13 08:07:08 +07:00
Morris Jobke
de56915605
Merge pull request #7419 from Abijeet/feature-7175
...
Fixes #7175 - Allow to search for email address in user management
2018-03-06 21:53:37 +07:00