#887 Exessive Memory Usage

closed-works-for-me
nobody
None
7
2004-01-06
2003-12-18
No

We just upgraded from 250a to 250e and it appears that
the memory consumption has increased by a factor of 4.

We have approximately 30.000 business partners and
before the clients memory consumtion after loading the
BP window was approx 80-90 MB. Now it is 300-400MB.

Performance (loading speed) has deteriorated by about
the same rate.

My guess is that this problem was introduced when
adding the security features.

Anyway it is a huge problem for us since our servers are
running out of memory and starting to swap.

Hope you will have a fix soon.

\Jacob

Discussion

  • Kathy Pink

    Kathy Pink - 2003-12-18
    • assigned_to: kmpink --> jjanke
     
  • Jorg Janke

    Jorg Janke - 2003-12-18
    • status: open --> pending
     
  • Jorg Janke

    Jorg Janke - 2003-12-18

    Logged In: YES
    user_id=87038

    1) Make sure that you have "Objects on Server" de-selected!
    2) Has the Window load time increased?

     
  • Jorg Janke

    Jorg Janke - 2003-12-18

    Logged In: YES
    user_id=87038

    *** Status set to PENDING *** If the issue solved, please CLOSE
    this request - otherwise set the status back to OPEN (we only
    check OPEN items). If there is no reaction within a week, the
    system will automatically CLOSE it. To speed up response time,
    you may want to consider a support agreement.
    ***

     
  • Jacob Pedersen

    Jacob Pedersen - 2003-12-18

    Logged In: YES
    user_id=672742

    Object on server are turned off and yes the window load time
    has increased by a factor of approx. 4. It is mainly noticable
    in windows with many records.

     
  • Jacob Pedersen

    Jacob Pedersen - 2003-12-18
    • status: pending --> open
     
  • Jorg Janke

    Jorg Janke - 2003-12-18
    • status: open --> pending
     
  • Jorg Janke

    Jorg Janke - 2003-12-18

    Logged In: YES
    user_id=87038

    What Java version - we'll test it here with 1.4.2_03 on
    Windows - and hope that it is not a platform issue.

     
  • Jacob Pedersen

    Jacob Pedersen - 2003-12-18

    Logged In: YES
    user_id=672742

    We are using java version 1.4.2_02. But it is the same
    problem also with 1.4.1.

     
  • Jacob Pedersen

    Jacob Pedersen - 2003-12-18
    • status: pending --> open
     
  • Jorg Janke

    Jorg Janke - 2003-12-27

    Logged In: YES
    user_id=87038

    Cannot confirm. The memory growth is linear.
    Created 1/10/20 thousand Test objects (MTest) with String,
    Timestamp and Lookups. (See MTest.java)
    It basically uses 1k per row (including all overhead. The main
    classes are char[], etc. classes allocated when loading the
    table.
    Also, when you close the window, there is virtually no memory
    leak. See other support request.
    http://sourceforge.net/tracker/index.php?
    func=detail&aid=862343&group_id=29057&atid=410216
    --
    Realistically, there is a reason for the search window. What is
    the purpose to load all 30,000 business partners, but select a
    reasobable subset?
    --
    The test data loaded were not representive and yes, it could
    be that certain editors produce problems, but the main ones
    are in the Test object. As you may imagine, this is highly
    time consuming. If you want to go further, please create a
    MBPartner constructor based on GardenWorld with whatever
    data you seem to be reasonable. I'll then create the
    appropriate number of test records here (see MTest).
    --

     
  • Jorg Janke

    Jorg Janke - 2003-12-27
    • status: open --> closed-works-for-me
     
  • Jorg Janke

    Jorg Janke - 2003-12-27

    Logged In: YES
    user_id=87038

    *** Status set to PENDING *** If the issue solved, please CLOSE
    this request - otherwise set the status back to OPEN (we only
    check OPEN items). If there is no reaction within a week, the
    system will automatically CLOSE it. To speed up response time,
    you may want to consider a support agreement.
    ***

     
  • Jacob Pedersen

    Jacob Pedersen - 2004-01-05
    • status: closed-works-for-me --> open-works-for-me
     
  • Jacob Pedersen

    Jacob Pedersen - 2004-01-05

    Logged In: YES
    user_id=672742

    Jorg I think you need to try on a real dataset and further I
    think you should try to do a comparison between versions.

    Here is a little data for comparison between version 250a and
    250e.In both versions I open first the BP window and then the
    product window. I then close both windows and do a timing of
    the loading time of the BP window (after the selection
    criteria). We have approx. 32.000 BP's and 80 products.

    In version 250a:
    Total memory consumption with BP+Product Window open: 92
    MB
    Opening of BP window (after prompt for search criteria): 8
    seconds

    In version 250e:
    Total memory consumption with BP+Product Window open:
    337 MB
    Opening of BP window (after prompt for search criteria): 42
    seconds

    In version 250e (limiting BP search to 9 records):
    Total memory consumption with BP+Product Window open:
    280 MB
    Opening of BP window (after prompt for search criteria): 31
    seconds

    Considering that the base memory consumtion is approx. 40
    MB we are talking a factor 6 in memory increase.

    I think you cannot make a realistic test with your simple test
    window. For instance the memory consumption increases with
    approx. 120MB when we load the product window and we only
    have 80 products. Judging from the log-window it loads in the
    32.000 BPs several times as an AD_User MLookup field when
    opening the products window (see log below):

    16:58:35.226 MLookup: AD_User.AD_User_ID: Loader.run -
    Too many records=32419
    16:58:35.247 MLookup: AD_User.AD_User_ID: Loader.run -
    complete #32419 - ms=7
    5529 (75519)

     
  • Jorg Janke

    Jorg Janke - 2004-01-05

    Logged In: YES
    user_id=87038

    You complained about Memory Leak - and there is none as far
    as I can see. This is memory consumption - a total different
    subject. To evaluate it, the best way is - as stated to
    create a MBPartner/Location/User etc. constructor (based on
    GardenWorld), which represents the typical use. This way I
    can create "on demand" the appropriate number of test
    records to check on the scaling.

    As mentioned, the memory growth is absolute linear (= i.e. no
    Memory Leak).
    What I could do is check, if there is too much memory
    allocation per record. E.g. each record holds a Payment Term
    object, but that could actually be shared. Again, for
    this "uniform test data" is needed. Life data is too complex
    and would take far longer to find the "wrong pattern" then
    with structured data.

    What the two MLookup lines say: There are 32419 records -
    so don't load any. It determines, if it makes sense to cache
    it - and the (correct) answer is no.

    Again: no memory leak.

     
  • Jorg Janke

    Jorg Janke - 2004-01-05
    • status: open-works-for-me --> closed-works-for-me
     
  • Jorg Janke

    Jorg Janke - 2004-01-06

    Logged In: YES
    user_id=87038

    Client OS Memory use:
    - Menu 42MB
    - Business Partner (search) 181 MB
    - Business Partner (32000 Business Partner) 220 MB
    -----
    -> Only 40 MB for data - so that is OK
    -> Issue is the general Form

    Follow up:
    - Too many AD_User MLookups
    - Countries - do not load all

     
  • Jorg Janke

    Jorg Janke - 2004-01-06
    • assigned_to: jjanke --> nobody
    • labels: 362040 -->
    • milestone: 312350 -->
    • summary: Memory Leak --> Exessive Memory Usage
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks