Commit Graph
331 Commits
Author SHA1 Message Date
Nicolas Évrard 7e3007ede1 Use the same heuristic to compute full text search config for both operation
issue11130
review395301002
2022-02-08 18:44:55 +01:00
Cédric Krier 0f3587cf59 Set a max limit to sqlite backend
SQLite does not support offset without a limit. So we must use a negative value
to have no upper bound.

issue11126
review395291002
2022-01-20 19:03:19 +01:00
Cédric Krier a0bfbfa255 Follow isort formatting
issue10928
2021-12-11 17:58:45 +01:00
Cédric Krier cd04197025 Use DROP COLUMN from SQLite 3.35.0
issue7703
2021-11-08 22:52:40 +01:00
Cédric Krier c6ca01b701 Support to alter more numeric types
issue10897
review381261002
2021-11-08 19:33:56 +01:00
Cédric Krier d8c3e5ccca Use RENAME and DROP COLUMN with SQLite backend
issue7703
review367691002
2021-11-08 19:31:34 +01:00
Cédric Krier 834007b353 Support window functions with SQLite backend
issue7703
review364231002
2021-11-08 19:30:15 +01:00
Cédric Krier a1a2e6eb70 Use JSONB to store Dict field on PostgreSQL backend
issue10858
review379371002
2021-11-08 19:27:03 +01:00
Cédric Krier 97c0707106 Do not use keyword argument for sequence_next_number SQL
issue10621
review342831002
2021-08-12 18:35:15 +02:00
Nicolas Évrard c9d43f50c0 Add support for SQL expression to sqlite's TRIM
issue10510
review352121003
2021-06-16 14:55:46 +02:00
Cédric Krier d8ddff1b9b Add BOOL_AND and BOOL_OR to SQLite backend
issue10316
review330801002
2021-05-16 18:09:28 +02:00
Cédric Krier 23658d9e06 Update logging message for re-run update
issue10286
review357811002
2021-04-21 23:54:43 +02:00
Cédric Krier 2afbbac4c3 Use qmark instead of format as paramstyle for SQLite
issue10283
2021-04-14 10:11:42 +02:00
Sergi Almacellas Abellana c95520b38a Concatenate cascade string to drop table before converting to SQL
issue10278
review332571002
2021-04-13 18:17:22 +02:00
Sergi Almacellas Abellana baa364f808 Only test column varchar size when set
issue10276
review338071003
2021-04-13 14:22:48 +02:00
Sergi Almacellas Abellana a779eefbfd Add missing rename word in postgresql sequence rename
issue10275
review338071002
2021-04-13 12:06:56 +02:00
Cédric Krier 4acc4c8467 Do not warn about single '/' as path in database uri
This is a valid configuration according to the documentation.

issue10101
2021-04-13 01:45:30 +02:00
Cédric Krier 012ca5824e Alter column type to change size on postgresql table
issue7331
2021-04-13 01:41:30 +02:00
Nicolas Évrard 2f08e73ba2 Escape identifiers in backend
issue10245
review317021002
2021-04-12 23:07:55 +02:00
Cédric Krier c76743ee0c Keep raising exception when DB path of SQLite does not exist
issue10101
2021-04-12 22:08:36 +02:00
Nicolas Évrard ffe62f46e8 Allow column sql types to be tested from the table handler
issue9645
review312421002
2021-04-12 20:56:08 +02:00
Nicolas Évrard a5e3d0b0f8 Add support for database connection parameters to configuration URI
issue10101
review339891002
2021-04-12 20:39:23 +02:00
Cédric Krier 45d406e270 Add full text and similarity search
issue10023
review320601007
2021-03-21 16:21:05 +01:00
Cédric Krier 9c81cb6a4a Replace cursor fetchall by iteration over cursor
issue5817
review335831003
2021-03-21 16:09:13 +01:00
Cédric Krier 04a0aea2ad Add __access__ to Model
issue9903
review324601002
2021-03-07 11:13:53 +01:00
David Harper 6fec6444fc Add trigonometric functions to sqlite backend
issue9996
review333731002
2021-02-06 10:47:06 +00:00
Cédric Krier 99135bf9db Close connection after testing the database
issue9629
review302191002
2020-09-24 23:02:14 +02:00
Cédric Krier 261c7b0a52 Do not set transaction as readonly with psycopg2cffi
issue9546
review294341002
2020-08-29 18:23:26 +02:00
Cédric Krier f376687b5a Use readonly connection attribute
It is not allowed to Call SET TRANSACTION in an AUTOCOMMIT transaction.
It is better to set 'readonly' attribute when available and not set the
transaction in readonly when autocommit is set.

issue9477
review294171002
2020-07-21 14:29:14 +02:00
Cédric Krier 4fec4c82c6 Add more logging on database connection and testing
issue9120
review269021002
2020-04-11 00:24:37 +02:00
Cédric Krier 748fe7212e Add database default name configuration
Some user may need to customize the default name used to run operation without
proper database name.

issue9121
review273021002
2020-04-01 23:56:17 +02:00
Cédric Krier d7ed5f91f5 Fix flake8 errors and warnings
We add the flake8 configuration used so we ensure everyone uses the same.
We remove the usage of __all__ for non public API.
When possible, we rationalize the class name according to its __name__ and module.

issue9082
review297061002
2020-03-01 12:33:54 +01:00
Cédric Krier 3d20f1b64e Display the path of the database in error message
Instead of just the filename.

issue8995
review288881002
2020-01-29 00:05:32 +01:00
Cédric Krier 606bdb7ce9 Ensure all SQL functions are supported by the backend's
issue8942
review270751002
2020-01-13 23:47:17 +01:00
Cédric Krier 973e428caa Replace advisory lock by SKIP LOCKED in queue pulling
It is simpler and closer to standard SQL.

issue8910
review288701002
2019-12-28 18:05:25 +01:00
Nicolas Évrard 8fb13634ea Use direct access to backend classes
issue8836
review258421002
2019-12-06 17:33:47 +01:00
Nicolas Évrard 4085e589d6 Cache some performance sensible config values at the module level
issue8749
review284271002
2019-11-25 14:50:33 +01:00
Cédric Krier def268915a Add MultiSelection field
issue7851
review249911002
2019-09-20 11:32:56 +02:00
Cédric Krier f56c5be5ad Add minimal to_char for date and datetime on SQLite
We support only date and datetime with common pattern between SQL and Python.

issue8464
review261761002
2019-08-07 19:34:33 +02:00
Cédric Krier 190657e0ef Make CurrentTimestamp transactional for SQLite backend
It must return the same timestamp during the all transaction.

issue8457
review271641002
2019-07-08 21:27:55 +02:00
Cédric Krier c4dde4d466 Store database pool per process
The connection pool can not be shared between multiple processes.

issue8281
review285251002
2019-06-27 21:45:37 +02:00
Cédric Krier e1cb85ddad Replace dsn by params to connect to postgresql
It is safer to use explicit params than construct DSN string.

issue8270
review269321002
2019-04-15 15:56:03 +02:00
Cédric Krier 246c672073 Remove unique constraint on ir.translation
issue8034
review46721002
2019-02-13 10:27:32 +01:00
Cédric Krier 0d15afb90e Add coroutine concurrency option
issue8010
review53501002
2019-02-05 19:09:53 +01:00
Cédric Krier 62f175d3d1 Set flavor in SQLite database init and test
Those methods use python-sql to make queries but they can be called with a
simple connection and not under a Transaction.
2019-01-28 10:03:47 +01:00
Cédric Krier 889b1cc9f8 Allow to search and order on Dict key value
issue7905
review62391002
2019-01-18 11:32:47 +01:00
Cédric Krier 342bc9f13d Correctly rename column with SQLite
The table must be recreated if the target column does not exist.
Also temporary column name should use double underscore as module may use
single underscore.

issue7978
review52591002
2019-01-15 11:30:20 +01:00
Cédric Krier 8e9c476e6f Use correct number arguments in rename column warning
issue7688
review47701002
2018-09-28 17:24:01 +02:00
Cédric Krier a6a7325f46 Remove deprecation warning
- remove invalid escape sequence
- use  read_file instead of read_fp
- use importlib instead of imp and __import__
- use callable instead of instance of collections.Callable
- fix silent file closing
- replace SafeConfigParser by ConfigParser
- replace decodestring by decodebytes
- replace encodestring by encodebytes

issue7666
issue7390
review53361004
2018-09-01 17:06:28 +02:00
Nicolas Évrard eb04b82822 Add bus management
issue7537
review66341002
2018-08-30 11:15:01 +02:00