Hi, The mailing list doesn't allow attachments. Would you mind creating a ticket and attaching the patch?
Also, I believe someone recently fixed ESI in trunk (3.1.x), have you by any chance taken a look at the fixes there? Thanks for the contribution. Brian On May 6, 2012, at 12:12 AM, Shu Kit Chan <chanshu...@gmail.com> wrote: > Hi, > > Is the current ESI plugin actually working? I saw TS 1103 and it is > closed so I thought it is working. When I tried to compile it and make > it work with traffic server 3.0.4, I got some problems. Even when i > manage to compile it, the runtime is not actually working, too. > > So i decided to try to fix it. Here are the list of problems I find and fix. > > 1) Some "if" statements are checking whether the TS functions are > returning 0 or not but actually we should check against TS_SUCCESS or > TS_ERROR > > 2) TSFetchUrl is still requiring ip and port as parameters so we need > to pass them in > > 3) VConnWrite() should use INT64_MAX instead of INT_MAX. This is > causing the ESI template with ESI include to return with a 2^32 -1 > content legnth and causing the client to hang till timeout. > > 4) There is a mechanism to cache a parsed version of ESI template > through a POST request internally but I find it hard to get it > working. I can't get my ESI template with a valid cache control header > to get properly cached in ats (which is somewhat useful to what i do). > So I try to disable that. > > So attached is the diff. My fixes for #4 is quite hacky and there are > actually lots of things we don't need if we don't do the internal POST > request. > > The plugin seems to work well. I tested with ESI try/attempt/except > syntax in my ESI response. I tested with multiple ESI includes. I > tested with cache control header added for the ESI response so that I > get the ESI Response cached in ats and subsequent requests will simply > get the ESI response from cache instead of OS server. Gzip is also > working, too. > > Any comments or reviews? worthly for a jira ticket to check it in? > > Thanks. > > Kit