Uploaded image for project: 'Traffic Server'
  1. Traffic Server
  2. TS-1103

Traffic Server ESI plugin issues

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • sometime
    • 3.1.4
    • Plugins
    • None
    • Newest trunk.

    Description

      Patch to fix:

      • Makefile fix to add missing files.
      • Change return code checking to match whats trunk trafficserver.
      • Include missing header files.
      • Fix c++ namespace issues.
      • Work around strange name mangling/linking issue.
      • Force the assumption that the cached data is RAW_ESI, not PACKED_ESI.
        Things wouldn't work without it.
      • Comment out a block of code that looked to be incorrectly handling
        EOF.

      After this, simply loading the plugin and setting response header X-ESI
      in apache httpd seems to work.

      A few further bugs I have bumped into that aren't addressed in this
      patch:

      • It doesn't seem to parse gzip like it looks like it should. To work
        around, I had to disable it in apache httpd with "RewriteRule . -
        [E=no-gzip:1]"
      • If the client requests gzip, the ESI processor will gzip the result.
        It works in firefox but is invalid in chrome. Pulling a dump with curl
        and running it through gzip --list shows it has the correct uncompressed
        size and compressed size. using zcat shows the correct data but has the
        warning: "invalid compressed data--length error". As far as I read the
        gzip spec though, the raw binary file looks valid to me. Not sure what
        this is. This can probably be simply disabled for now though.
      • esi:include is slightly broken. You get all the data back properly but
        sometimes the headers are sent prematurely with a Content-Length of
        2**31-1. This causes clients to timeout and fail. I'm currently unsure
        how to fix this.

      I've tried a few of the more advanced esi features, including ensuring
      cookies make it back to the origin server and things seem to work good.
      So, once the above bugs are figured out (particularly the include one),
      I think it will be in pretty good shape.

      Attachments

        1. esi.patch
          8 kB
          Kevin Fox
        2. gzip.patch
          0.4 kB
          Conan Wang

        Activity

          People

            zym Zhao Yongming
            kfox1111 Kevin Fox
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: