Uploaded image for project: 'Axis2-C'
  1. Axis2-C
  2. AXIS2C-1377

switching to global/local pools when used with apache module

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.7.0
    • util
    • None
    • all

    Description

      When Axis2/C is used with the httpd module to allocate memory in apache global pools one need to call the axutil function axutil_allocator_switch_to_global_pool. To switch back again to use apache local pool(request level allocation) one need to call the axutil_allocator_swith_to_local_pool.
      However there could be problematic situations if used this carelessly. For example consider the following scenario.

      swith_to_global

      ...do something...

      switch_to_global

      ...do something

      swith_to_local

      !!! Now am I using global memory or local memory?. Ideally now I should still be using global memory. But accoring to current Axis2/C implementation at this stage I'm using local memory. This could lead to unavoidable problems.

      Attached patch fix this.

      Attachments

        1. allocator_switching.diff
          2 kB
          Damitha N.M. Kumarage

        Activity

          People

            damitha Damitha N.M. Kumarage
            damitha Damitha N.M. Kumarage
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: