Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.4, 1.5, 1.6
    • Fix Version/s: 1.6
    • Component/s: Engine
    • Labels:
      None
    • Environment:
      Tested on FreeBSD 6.2-STABLE and Linux (Debian Etch) on i386.
      Java: JDK 1.5

      Description

      On some large templates (1-4MB) velocity gets very slow. I used JProfiler and found a lot of time is spent in VelocityCharStream.ExpandBuff. It is doing a lot of System.arraycopy.
      The problem is that the size of the buffer is increased linearly in stead of exponentialy.
      I have made a patch which doubles the size of the buffer in stead of incrementing it with the same value.
      In my tests and in JProfiler it is shown that a lot less time is spent in ExpandBuff.

      1. expandbuff-speedup-reinit-fix.patch
        1 kB
        Jacob Mundt
      2. expandbuff-speedup.patch
        2 kB
        Ronald Klop

        Activity

          People

          • Assignee:
            Unassigned
            Reporter:
            Ronald Klop
          • Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development