Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.1, 2.2
    • Component/s: Mapping Drivers, ORM
    • Security Level: All
    • Labels:
      None

      Description

      How do you look at adding findByIds(array $ids) to EntityManager and UnitOfWork? This would allow fetching multiple entities from a database at one request and would be very useful for caching - there would be even some kind of IdentityMap kept in memcached or any other caching engine, that supports multiple id retrieval: i've been using sujhjhjch an architecture in multiple projects and it turned out to be very effective. There were two basic methods - findIdsByFilter(array $filter) and findEntitiesByIds(array $ids). The latter one had a caching proxy, replicating entities to a cache storage. If this idea proceeds - I'd be glad to cover it with more details.

      This topic on StackOverflow could also help:
      http://stackoverflow.com/questions/276709/design-pattern-for-memcached-data-caching

        Activity

        Serge Smertin created issue -
        Benjamin Eberlei made changes -
        Field Original Value New Value
        Fix Version/s 2.1.2 [ 10154 ]
        Fix Version/s 2.1.1 [ 10153 ]
        Benjamin Eberlei made changes -
        Fix Version/s 2.1.3 [ 10164 ]
        Fix Version/s 2.1.2 [ 10154 ]
        Benjamin Eberlei made changes -
        Fix Version/s 2.1.4 [ 10165 ]
        Fix Version/s 2.1.3 [ 10164 ]
        Benjamin Eberlei made changes -
        Fix Version/s 2.2-DEV [ 10157 ]
        Fix Version/s 2.1.4 [ 10165 ]
        Hide
        Guilherme Blanco added a comment -

        Updating fix version

        Show
        Guilherme Blanco added a comment - Updating fix version
        Guilherme Blanco made changes -
        Fix Version/s 2.x [ 10090 ]
        Fix Version/s 2.2 [ 10157 ]
        Benjamin Eberlei made changes -
        Workflow jira [ 12842 ] jira-feedback [ 13953 ]
        Benjamin Eberlei made changes -
        Workflow jira-feedback [ 13953 ] jira-feedback2 [ 15817 ]
        Benjamin Eberlei made changes -
        Workflow jira-feedback2 [ 15817 ] jira-feedback3 [ 18073 ]
        Serge Smertin made changes -
        Status Open [ 1 ] Awaiting Feedback [ 10000 ]
        made changes -
        Status Awaiting Feedback [ 10000 ] In Progress [ 3 ]
        Daniel Elidio Mendes Júnior made changes -
        Description How do you look at adding findByIds(array $ids) to EntityManager and UnitOfWork? This would allow fetching multiple entities from a database at one request and would be very useful for caching - there would be even some kind of IdentityMap kept in memcached or any other caching engine, that supports multiple id retrieval: i've been using such an architecture in multiple projects and it turned out to be very effective. There were two basic methods - findIdsByFilter(array $filter) and findEntitiesByIds(array $ids). The latter one had a caching proxy, replicating entities to a cache storage. If this idea proceeds - I'd be glad to cover it with more details.

        This topic on StackOverflow could also help:
        http://stackoverflow.com/questions/276709/design-pattern-for-memcached-data-caching
        How do you look at adding findByIds(array $ids) to EntityManager and UnitOfWork? This would allow fetching multiple entities from a database at one request and would be very useful for caching - there would be even some kind of IdentityMap kept in memcached or any other caching engine, that supports multiple id retrieval: i've been using sujhjhjch an architecture in multiple projects and it turned out to be very effective. There were two basic methods - findIdsByFilter(array $filter) and findEntitiesByIds(array $ids). The latter one had a caching proxy, replicating entities to a cache storage. If this idea proceeds - I'd be glad to cover it with more details.

        This topic on StackOverflow could also help:
        http://stackoverflow.com/questions/276709/design-pattern-for-memcached-data-caching
        Hide
        Benjamin Eberlei added a comment -

        This is implemented on the Repository since 2.1 or 2.2 with findBy(array('id' => array(1, 2, 3, 4, 5));

        Show
        Benjamin Eberlei added a comment - This is implemented on the Repository since 2.1 or 2.2 with findBy(array('id' => array(1, 2, 3, 4, 5));
        Benjamin Eberlei made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Fix Version/s 2.2 [ 10157 ]
        Fix Version/s 2.1 [ 10022 ]
        Fix Version/s 2.x [ 10090 ]
        Resolution Fixed [ 1 ]

        This list may be incomplete, as errors occurred whilst retrieving source from linked applications:

        • Request to http://www.doctrine-project.org/fisheye/ failed: Error in remote call to 'FishEye 0 (http://www.doctrine-project.org/fisheye/)' (http://www.doctrine-project.org/fisheye) [AbstractRestCommand{path='/rest-service-fe/search-v1/crossRepositoryQuery', params={query=DDC-1285, expand=changesets[0:20].revisions[0:29],reviews}, methodType=GET}] : Received status code 503 (Service Temporarily Unavailable)

          People

          • Assignee:
            Benjamin Eberlei
            Reporter:
            Serge Smertin
          • Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: