The process_lines of ModelStorage.import_data pop rows when importing One2Many.
But if the transaction has to be restarted for example if a lock is needed, the
original data from the request has been altered for the second call losing some
or all the data to be imported.
Closes#13984
(grafted from 2cb96c1427d7c0edcb1c9b5b410e220db3f8958e)
--HG--
branch : 6.0
The TableHandler adds the table name as prefix to the constraint name so when
comparing with the integrity error message, it should also be added.
Especially if the constraint name is hashed by the TableHandler conversion
because the result is completely different.
Closes#13922
(grafted from 57e97b6d957e1b472eea3fb7bbdf2ecf03abfc6a)
--HG--
branch : 6.0
Since 87456218dcc9, record with NULL field is include in nested negative clause
but this should not applied if the operand is or contains None.
Closes#13911
(grafted from 993d890dd786424c2cd00009045ad95a09075e72)
--HG--
branch : 6.0
This permit to keep the connection alive when the database is killing idle
connections.
Closes#13902
(grafted from 12e80f41c37e1f77d1ae539e84989956a70da0d9)
--HG--
branch : 6.0
It is not possible from the clients to force to store None value instead of
empty string.
Closes#13890
(grafted from f7b12ada27377ec42a05b539791855e6f64c497f)
--HG--
branch : 6.0
If the record has already been cleaned, there is no need to try to delete again.
(grafted from e5ed9fc71d218c967bdbfc9489773905e5a5466c)
--HG--
branch : 6.0
Instead of relying on the garbage collector to close the connection by deleting
the object, this ensures that the memory database is actually dropped before a
new connection is instantiated and keep the database.
Closes#13796
(grafted from 0a2239fb548b5b20a9ae4d4a8c8c6c34cfed5683)
--HG--
branch : 6.0
By setting the filestore path as a global variable, we can modify it for the
test without changing the database path where the SQLite databases are stored.
Closes#13792
(grafted from b431c4c5ddcf6556dcfd502bad748e18d596040a)
--HG--
branch : 6.0
The python type is used to test the type of value set but for One2One it is an
instance which can not be tested with a simple Python type.
Closes#13817
(grafted from 34725c999ed27d30323e3dbc605b5c8522c8b924)
--HG--
branch : 6.0
Since c47b3642f1a6, the getter of a Function field may be called if there is no
value set for it on the instance.
In the on_change context, this may set the missing fields to None if they were
not defined in the depends of the method called. In addition to compute a wrong
value, those fields are then returned as modified.
Closes#13735
(grafted from 1b815539165a1212fc5c415c8920d8f5f0c55236)
--HG--
branch : 6.0
If the PYSON statement has the type 'object', it can be a Date, DateTime or
TimeDelta which is allowed for comparison.
Closes#13645
(grafted from df6e3c10a5105e545e1aa8e58c3c087285146a58)
--HG--
branch : 6.0
The `not like` operator implicitly requires the field to be not null but
specific implementation of the named field may allow to have NULL values.
Closes#13592
(grafted from 9af176fb307a975e0af3bf88ad07e098433dcdd1)
--HG--
branch : 6.0
This unify the search behavior on relational fields with NULL value started
with c14f51b77b30.
Closes#13585
(grafted from 87456218dcc9b075658f9e2338b120fce9b9a43d)
--HG--
branch : 6.0
Since https://github.com/python/cpython/issues/76960 if the path of the URI
does not start with a '/', the netloc is removed.
Closes#13543
(grafted from 6d420b9f4bffc77dc599abff4b7f8e17a061542d)
--HG--
branch : 6.0