1
0
mirror of synced 2025-02-02 21:41:45 +03:00
Marco Pivetta 5d12593e70 Rewrote ManyToOne SLC tests to not rely on multi-level auto-generated identifiers
Background:

Test relied on an `A->B->C` association:

 * `A#id` being `B`
 * `B#id` being `C`
 * `C#id` being an auto-generated identifier (post-insert)

This cannot work, because it breaks the UnitOfWork's identity map.
Specifically, no entries for `A` and `B` can exist in the identity map until `C` entries
are persisted (post-insert).

That means that the identifier generator for `A` and `B` should not be an "assigned"
generator, but should instead be a post-insert generator waiting for other entities
to be persisted.

We cannot fix this in ORM 2.x, but we'll need to invent something for 3.x in order to
fix that (directed graph, or caching the order of operations in the metadata graph).
2016-07-07 21:29:10 +02:00
2016-03-21 14:16:07 +02:00
2013-12-16 11:05:05 -05:00
2014-03-01 17:13:28 -05:00
2013-03-07 14:12:10 +01:00
2016-06-19 08:51:24 +02:00
2013-09-07 12:56:49 +02:00
2013-09-07 12:56:49 +02:00
2015-09-29 22:52:45 +00:00
2013-03-11 00:08:58 +00:00
2016-01-06 00:48:26 +01:00
2013-03-11 00:08:58 +00:00
2015-10-09 07:12:28 +00:00

Master 2.5
Build status Build status
Coverage Status Coverage Status

Doctrine 2 is an object-relational mapper (ORM) for PHP 5.4+ that provides transparent persistence for PHP objects. It sits on top of a powerful database abstraction layer (DBAL). One of its key features is the option to write database queries in a proprietary object oriented SQL dialect called Doctrine Query Language (DQL), inspired by Hibernate's HQL. This provides developers with a powerful alternative to SQL that maintains flexibility without requiring unnecessary code duplication.

More resources:

Description
Doctrine 2 Object Relational Mapper (ORM)
Readme MIT 32 MiB
Languages
PHP 100%