Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8101026

Consider possibility to reduce TableView/TableColumn footprint, currently it is up to 1Mb

XMLWordPrintable

      The maximum number of columns which could be created in case heap size is 64mb is 188.
      Note, the created table contains no data (zero rows), it contains only columns.

      Running the test with different heap sizes shows the following results (before OOM occurs):
      256mb -> 384 cols
       64mb -> 188 cols => 192mb -> 196 cols => ~1,000Kb/col

       16mb -> 84 cols => 240mb -> 300 cols => ~819Kb/column
       16mb -> 84 cols => 48mb -> 104 cols => ~472Kb/column

        8mb -> 54 cols => 248mb -> 330 cols => ~769Kb/column
        8mb -> 54 cols => 8mb -> 30 cols => ~273Kb/column



      This needs to be improved as the situation when user could have bunch of tables which in
      summary exceed hundreds of columns is pretty realistic. Taking into account user
      application have many other objects/data reaching OOM is not corner case.

      The big TableColumn footprint could also be related to RT-15371 "MemoryLeak in TableColumn.observableProperties list"
      but is definitely not only because of this.

      The testcase is attached.

        1. screenshot-1.jpg
          screenshot-1.jpg
          308 kB
        2. screenshot-2.jpg
          screenshot-2.jpg
          166 kB
        3. screenshot-3.jpg
          screenshot-3.jpg
          144 kB
        4. TableColumnFootprintTest.java
          3 kB

            jgiles Jonathan Giles
            epavlova Ekaterina Pavlova
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: