Uploaded image for project: 'Cayenne'
  1. Cayenne
  2. CAY-999

Scaling paginated list

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0
    • 3.0M4, 3.0
    • Core Library
    • None

    Description

      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]

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            andrus Andrus Adamchik
            andrus Andrus Adamchik
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment