[jira] Closed: (CAY-999) Scaling paginated list

From: Andrus Adamchik (JIRA) ("Andrus)
Date: Thu Mar 06 2008 - 08:19:16 EST

  • Next message: Marcin Skladaniec (JIRA): "[jira] Created: (CAY-1003) the paged queries in ROP can fail to fetch the subsequent pages if the client and server are in different timezones"

         [ https://issues.apache.org/cayenne/browse/CAY-999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

    Andrus Adamchik closed CAY-999.
    -------------------------------

           Resolution: Fixed
        Fix Version/s: 3.0

    Optimized for single column PK entities. Compound PK still uses the old algorithm and creates a DataRow.. We may implement a global change optimizing DataRows representation per this message: http://objectstyle.org/cayenne/lists/cayenne-devel/2008/03/0029.html

    > Scaling paginated list
    > ----------------------
    >
    > Key: CAY-999
    > URL: https://issues.apache.org/cayenne/browse/CAY-999
    > Project: Cayenne
    > Issue Type: Improvement
    > Components: Cayenne Core Library
    > Affects Versions: 3.0
    > Reporter: Andrus Adamchik
    > Assignee: Andrus Adamchik
    > Fix For: 3.0
    >
    >
    > An idea for scaling IncrementalFaultList to store massive amount of objects, like hundreds of thousands.This pertains to the server-side IncrementalFaultList. The problems to solve are the speed of the initial list initialization and overall memory use.
    > 1. Simplify ID representation:
    > Even unresolved lists can take significant amount of memory... Each unresolved object slot currently stores a DataRow with N number of entries, where N is the number of PK columns for the entity. I.e. most often than not - 1 entry. Here is a memory use calculation for various representations of an unresolved entry, based on a single int PK DbEntity.
    > a. DataRow - 120 bytes,
    > b. HashMap - 104 bytes,
    > c. Object[] - 32 bytes,
    > d java.lang.Integer - 16 bytes
    > [primitive int is even better, but it complicates the implementation, as we'd need a parallel int[] (long[], double[], etc.) , so all in all we may get no gain]

    -- 
    This message is automatically generated by JIRA.
    -
    You can reply to this email to add a comment to the issue online.
    



    This archive was generated by hypermail 2.0.0 : Thu Mar 06 2008 - 08:20:45 EST