[API] Integration of libswoc

2021-10-13 Thread Alan M. Carroll
Libswoc (https://github.com/solidwallofcode/libswoc), "Solid Wall Of C++" library, is a collection of C++ utility classes. They are based on existing ATS core classes, except for Lexicon. Documentation is available here - http://docs.solidwallofcode.com/libswoc. The correspondence is

Handling requests to an upstream that is unresponsive.

2019-10-01 Thread Alan M. Carroll
I would like to propose a change to how TS handles unresponsive upstream destinations. The current logic is * If there is a round robin, skip elements that are down. * Attempt to connect. * If the connect fails, and the upstream is marked down and within the down server cache time, restrict the

Re: [API] TSHttpHdrEffectiveUrlBuffGet

2019-07-09 Thread Alan M. Carroll
Given the lack of objection, I will consider this accepted and have Walt proceed with implementation.

[API] TSIOBufferReaderCopy nee TSIOBufferReaderRead

2019-07-02 Thread Alan M. Carroll
In the current documentation is the C API function TSIOBufferReaderRead which reads from an IOBufferReader in to a fixed buffer, the dual of TSIOBufferWriter. This function is not actually implemented which has caused some consternation. In working on providing an implementation, I came across

RPC replacement

2018-08-16 Thread Alan M. Carroll
I've been looking at how to do the RPC replacement that was agreed on at Cork. After looking at grpc, Avro, and Thrift, I don't like any of them for our use case. I've moved to the camp that says we should build our own thin wrapper around YAML messages, very similar to a REST style API. We do

Hash containers - some thoughts and recommendations

2018-08-13 Thread Alan M. Carroll
I've written up some of my notes and thoughts on hash containers and how to proceed here - https://solidwallofcode.github.io/notes/hash-table.en.html Please respond to this email string if you have comments of your own.

Removing cluster support for 7.1.x

2018-01-11 Thread Alan M. Carroll
Oath has developed an internal patch for our 7.1.x fork which removes cluster support. This is effectively a back port of changes that are already on master. The question is whether it would be OK to submit as a backport to 7.1.3. It's fairly large but it should make backporting from master to

[API Proposal] - TSVConnArgs

2017-11-08 Thread Alan M. Carroll
This came up with issues #2380 and #2388 and PR #2783. I had been waiting for some internal feedback on my proposal but since this is now active I am sending in my API proposal for attaching plugin data to NetVConnections (TSVConn).

Re: autests broken?

2017-07-23 Thread Alan M. Carroll
Susan fixed this in PR 2291. > You should be able to see the attempted compile output in one of the streams, > such as .../_tmp_tls_hooks_tls_hooks_ts/streamm.all.txt, which should provide > an indication of the reason for the failure. I know there have been some > problems involving the flags

Re: autests broken?

2017-07-23 Thread Alan M. Carroll
You should be able to see the attempted compile output in one of the streams, such as .../_tmp_tls_hooks_tls_hooks_ts/streamm.all.txt, which should provide an indication of the reason for the failure. I know there have been some problems involving the flags stored in tsxs which you could be

Re: Unit Test Framework

2017-05-23 Thread Alan M. Carroll
For full up plugin testing we (Yahoo!) are using the AUTest framework. In fact there are already plugin based tests checked in to master (see tests/gold_tests/pluginTests/header_rewrite for an example). I think that is fine for testing the plugin in situ and we should adopt it as our preferred

Re: atscppapi: AsyncHttpFetch question

2017-03-27 Thread Alan M. Carroll
Yes, it looks like it should clean up after itself but apparently isn't. I'd try putting a debug message in the destructor and verify it at least is getting called. I haven't looked at that code myself unfortunately. > Hi, > The motivation for my question is because I am seeing a small leak in

Notes from Interim Technical Meeting

2017-01-24 Thread Alan M. Carroll
Last week a small group gathered to talk about various technical issues in Traffic Server with a strong focus on "upstream selection" which is currently handled by various mechanisms such as parent selection and CARP. These are the notes from that meeting. As usual, nothing was actually decided

TSPluginRegistrationInfo - (char*), really?

2016-10-13 Thread Alan M. Carroll
Any chance we can change TSPLuginRegistrationInfo to have (char const*) instead of (char*)? The latter has never made sense.

Re: SPDY/H2 and Session hooks

2015-05-12 Thread Alan M. Carroll
My view is the SSN hooks should be called on the user agent connect / disconnect, the base client session object. That would mean that for an Http/2 session, the SSN hook is called only when the user agent initially connects for HTTP/2 and once when the HTTP/2 connect is terminated, and *not*

Reporting internal state and errors to plugins

2015-04-16 Thread Alan M. Carroll
Based on some discussions here at the summit, we would like to add the ability for the core to report certain error conditions to plugins. We have at least one use case where it is critical to be able to distinguish different causes for a 502 error (origin server down, cache write lock missed,

Reporting core errors to plugins

2015-04-16 Thread Alan M. Carroll
Based on some discussions here at the summit, we would like to add the ability for the core to report certain error conditions to plugins. We have at least one use case where it is critical to be able to distinguish different causes for a 502 error (origin server down, cache write lock missed,

Proposed API: TSHttpTxnCacheabilitySet / TSHttpTxnCacheabilityGet

2015-04-12 Thread Alan M. Carroll
This is in response to discussions on IRC and TS-3426. This would replace all of the current API functions to control cacheability. TSHttpTxnCacheablility == Synopsis `#include ts/ts.h` .. c:function:: TSHttpCacheability TSHttpTxnCacheabilityGet(TSHttpTxn

Re: Suggest that we remove TSHttpTxnRedirectRequest

2015-01-22 Thread Alan M. Carroll
+1 for starting the removal of this experimental API. The group using the redirect logic are also using 3.2.X so they're going to have to do a real upgrade regardless.

Re: Question about the implementation of CLFUS

2015-01-21 Thread Alan M. Carroll
I wonder if it was meant to be e-hits = 1; - that would almost make sense with the comment. Tuesday, January 20, 2015, 10:00:40 PM, you wrote: Hi all, I have a question about the tick function of RamCacheCLFUS, the code is : .. e-hits = 1; if (e-hits) { e-hits =

Re: The desired semantics of HTTP Transaction hooks

2015-01-16 Thread Alan M. Carroll
Friday, January 16, 2015, 12:17:35 PM, you wrote: Yeh +1 from me on not firing TXN_START unless it's really HTTP. Though, maybe the right approach is to keep the current event timing, but only fire TXN_START on HTTP ports? We still want to fire that event on HTTP transactions on SSL ports

Coverity fixes

2015-01-13 Thread Alan M. Carroll
We had a discussion on the IRC about how to handle tracking for fixes based on Coverity discovered issues. The general consensus was that we want some level of tracking but (1) having a JIRA ticket per fix was too much and (2) having a single JIRA ticket (e.g. TS-1475) was too little.

[ANNOUNCE] Apache Traffic Server 5.1.2 is released

2014-12-16 Thread Alan M. Carroll
Apache Traffic Server v5.1.2 Released The Apache Software Foundation and the Apache Traffic Server project are pleased to announce the release of Apache Traffic Server v5.1.2! This is our latest stable release, and is immediately available for download at:

Re: [ANNOUNCE] Traffic Server 5.1.2 Release Candidate 0

2014-12-11 Thread Alan M. Carroll
+1

[ANNOUNCE] Traffic Server 5.1.2 Release Candidate 0

2014-12-07 Thread Alan M. Carroll
[VOTE] Release Apache Traffic Server 5.1.2 (RC0) Hello All, Sorry for the delays but we have a release candidate for 5.1.2 ready now. This is primarily to address a potential security issue. Upgrading from 5.1.x should be trivial. Changes since 5.1.1: TS-3223 - Internal buffer sizing issue

Re: RFC: remove superfluous redirect APIs for 6.0

2014-11-20 Thread Alan M. Carroll
We seems to have a number of superfluous APIs for following redirects. Would anyone object to removing the following APIs in 6.0: TSRedirectUrlSet TSRedirectUrlGet TSHttpTxnRedirectRequest Yes. I have at least two (former) clients who are using TSRedirectUrlSet() to

Re: ATS Integration Testing

2014-11-19 Thread Alan M. Carroll
OK, I'm confused. In chat you said it was today (Wed) but this email says Thursday. Please clarify :-). Tuesday, November 18, 2014, 2:35:03 PM, you wrote: Hi guys, I've booked a room at 2:30pm pacific at Yahoo's campus here - http://yhoo.it/1xMUa5d. When you arrive please park in guest

Re: TS-1570

2014-11-11 Thread Alan M. Carroll
Yes. I looked at the code a bit last night and it would possible, but difficult, to return a parse fail value from that logic because of how is used. As Cynthia noted, the fundamental problem is the HOST field is not checked for validity during the initial request parsing and after that, the

Re: always setting socket options in 5.x

2014-11-08 Thread Alan M. Carroll
On a semi-related topic, we are seeing the use of various features that require (1) a lot of values and (2) would be nice to be able to do from the API. TSNetAccept and TSNetConnect being two excellent examples. I see two approaches 1) Have a micro-DSL that describes the options, in the proxy

Re: [API REVIEW] TS-1432 API is missing TSMutexDestroy

2014-11-06 Thread Alan M. Carroll
We are simply incapable of doing anything in a simple way. I see James' point but I disagree with his implementation. I would recommend setting the refcount to 1 on allocate and doing just if (mutextp-refcount_dec() == 0) { mutextp-free();

Re: git commit: Add support for Content-Length in background_fetch config

2014-11-04 Thread Alan M. Carroll
Monday, November 3, 2014, 2:57:00 PM, you wrote: This change is part of TS-2683 - I will try to update the CHANGES file with a consolidated list of changes made for TS-2683. Will that work? If you could, also put the commit SHA in a comment on the ticket. That's very useful later on. This

Re: Insufficient security verifying downloads

2014-11-03 Thread Alan M. Carroll
Monday, November 3, 2014, 8:09:07 AM, you wrote: I was surprised and disappointed in the result: http://pgp.cs.uu.nl/mk_path.cgi?FROM=B87F79A9TO=94D96DE2PATHS=trust+paths That service seems not to find AMC's key on the keyserver and so cannot establish trust paths. I am able to establish

[ANNOUNCE] Apache Traffic Server 5.1.1 is released!

2014-11-01 Thread Alan M. Carroll
Apache Traffic Server v5.1.1 Released The Apache Software Foundation and the Apache Traffic Server project are pleased to announce the release of Apache Traffic Server v5.1.1! This is our latest stable release, and is immediately available for download at:

Re: lockfile permission denied

2014-10-28 Thread Alan M. Carroll
Checking my various installs, all of this seems normal. The question I would have for Bill is how traffic_server.stdout became owned by root - chown is a privileged operation so if the script wasn't running as root, how did that get done? The trafficserver script should always be run as root.

Re: stale-while-revalidate not always serving stale content

2014-10-13 Thread Alan M. Carroll
Thursday, October 9, 2014, 10:39:01 PM, you wrote: On Oct 9, 2014, at 6:08 PM, Shu Kit Chan chanshu...@gmail.com wrote: It seems to be similar to this jira ticket - https://issues.apache.org/jira/browse/TS-1463 Yeah, Kit is spot on. This is a known problem with the plugin, and it’s an

Re: localhost access

2014-10-07 Thread Alan M. Carroll
Tuesday, October 7, 2014, 11:25:22 AM, you wrote: Hi, my proxy receive requests for localhost (127.0.0.1:), how can I deny access to local resources? Would a remap rule work? That is, remap all requests to localhost to an error page.

Re: C++ API shared_ptr dependecy

2014-10-06 Thread Alan M. Carroll
Saturday, October 4, 2014, 10:57:27 AM, you wrote: Make one of your public include files autoconf generated? Like we do for the C APIs definitions file. Close, but I think what would be better is to combine this with Brian's original thought. So in Brian's shared pointer header, he has

Re: bypass cache with plugin

2014-10-06 Thread Alan M. Carroll
Monday, October 6, 2014, 4:51:12 AM, you wrote: - Requests to URI /a are cached - If condition x matched, requests to /a must bypass the cache and served from the origin without putting the response into the cache Look TSHttpTxnServerRespNoStoreSet().

Re: privilege elevation in traffic_server

2014-09-29 Thread Alan M. Carroll
Monday, September 29, 2014, 4:21:02 PM, you wrote: At some point would be it worthwhile to go through the least privilege exercise on traffic_manager too? For example, I assume that traffic_manager would not need DAC override privilege. I expect that traffic_manager would retain

Re: The config error of records.config

2014-09-28 Thread Alan M. Carroll
Sunday, September 28, 2014, 8:10:04 PM, you wrote: Hi, The problem is not the delimiter (space or comma) and it is the keyword tr-full. In addition to traffic.out, there are the files diags.log and error.log in the same directory. You should check them for errors. The most likely case is

Re: git commit: Build error fixes (Bison/Flex version check, ssl_cert_loader)

2014-09-25 Thread Alan M. Carroll
Wednesday, September 24, 2014, 5:28:02 PM, you wrote: OS X and RHEL 5 both have Bison 2.3 (also the error message is now misleading because I did not --enable-wccp) I changed this by committing the generated files and tweaking the TsConfig make file to depend on those where the Bison/Flex

304 response headers

2014-09-25 Thread Alan M. Carroll
I have been working with a problem where ATS adherence to the HTTP spec is causing a client to break. The issue is propagating header fields on a conditional response. What ATS does it strip all but a few select headers when returning a 304 response to the client. There are two scenarios of

Re: [API REVIEW FOLLOWUP] SSL support extensions

2014-09-22 Thread Alan M. Carroll
Sunday, September 21, 2014, 6:37:51 PM, you wrote: So, I guess I don't understand why TSVConnTunnelToAddr is not useful? Could you elaborate? I, personally, just don't like it. I think the general use case will be to simply tunnel without changing the server address, and since you can't

Re: [1/2] git commit: TS-2802: Additional fixups. Changed NetVCOptions to use ats_scoped_str instead of a raw pointer. Added comments.

2014-09-19 Thread Alan M. Carroll
Friday, September 19, 2014, 10:12:29 AM, you wrote: + sni_servername.release(); // otherwise we'll free the source string. Why don't you want to free the source string in this case? Because it's still in the source object and therefore it would be freed again at some point in the

[API REVIEW] TSHttpHdrHostGet

2014-09-19 Thread Alan M. Carroll
TSHttpHdrHostGet == Synopsis `#include ts/ts.h` .. c:function:: const char* TSHttpHdrHostGet(TSMBuffer bufp, TSMLoc offset, int *length) Description --- Get the host for the request. :arg:`bufp` and :arg:`offset` must reference an HTTP request header. A

[ANNOUNCE] Apache Traffic Server 5.1.0 is released!

2014-09-18 Thread Alan M. Carroll
Apache Traffic Server v5.1.0 Released The Apache Software Foundation and the Apache Traffic Server project are pleased to announce the release of Apache Traffic Server v5.1.0! This is our latest stable release, and is immediately available for download at:

[VOTE] Release Apache Traffic Server 5.1.0 (RC1)

2014-09-12 Thread Alan M. Carroll
Hello All, Due to issue with building OmniOS, we had to respin the release candidate. This is RC1. It should be functionally the same, the changes were renaming equivalent types and changes to include file ordering. Changes since 5.0.0:

Re: [VOTE] Release Apache Traffic Server 5.1.0 (RC1)

2014-09-12 Thread Alan M. Carroll
Sorry for the error, the vote will be open until Tuesday, 16 Sep 2014.

[VOTE] Release Apache Traffic Server 5.1.0 (RC0)

2014-09-05 Thread Alan M. Carroll
Hello All, Sorry for the delays but we have a release candidate for 5.1.0 ready now. Changes since 5.0.0: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310963version=12324894 A summary of the new features are here:

Re: generating hash from packet content

2014-09-02 Thread Alan M. Carroll
Tuesday, September 2, 2014, 3:04:55 AM, you wrote: How does ATS manage the expired objecs? If an object has expired/removed , I assume allocated space for it can later be used by other objects. ATS doesn't have allocated space in the cache. It's a circular buffer. All objects, including

Re: generating hash from packet content

2014-09-01 Thread Alan M. Carroll
Rasim, Monday, September 1, 2014, 10:22:06 AM, you wrote: Looks like it is not feasible/possible to remove URL hash map solution completely.. However, storage optimization was another topic in our mind, which content hash can save the day. We are thinking this can be a nice feature if

Re: generating hash from packet content

2014-09-01 Thread Alan M. Carroll
Luca, Monday, September 1, 2014, 1:49:13 PM, you wrote: You can also choose to store it in cache and delete dupe in a second moment. You could, but once you've written to cache, you have advanced the write cursor. Deleting the duplicate later has no effect except changing a directory entry.

Re: generating hash from packet content

2014-08-28 Thread Alan M. Carroll
Well, it would definitely be possible to store an indirection object to implement Bill's idea. The URL is used to do a lookup and the object that is returned is a forwarding header, which then causes another lookup. Basically it's a form of remap for the cache, using the cache itself to store

Re: [VOTE] Release Apache Traffic Server 4.2.2 (RC0)

2014-08-26 Thread Alan M. Carroll
+1

5.1 release - TS-3022

2014-08-25 Thread Alan M. Carroll
We are currently blocked by one bug, TS-3022, which involves a double free for the OCSP support. I've spent a couple of day looking at the code and trying to replicate the problem but have not made any progress. I've checked with another major user who has enabled this and they have not seen

Re: SSL support extensions - design review request

2014-08-20 Thread Alan M. Carroll
Igor, I'm using the TSSslVConn to cache a pointer to the global cert table (loaded from ssl_multicert.config). Since in theory the ssl_multicert.config could be reloaded at any point, we acquire() a copy does this mean we would now support reloading of the ssl config w/o restart? No. It

5.1.0 has branched

2014-08-20 Thread Alan M. Carroll
All; I have created the 5.1.x branch. This is in preparation for the 5.1.0 release of Traffic Server. All commits to this branch must be explicitly approved by the Release Manager (amc). If you have something you really need to get in to 5.1.0, fix it on master first and then ask to have that

Re: 5.1.0 has branched

2014-08-20 Thread Alan M. Carroll
Adam, adace@mound:~/Src/apache/trafficserver git checkout 5.1.x Branch 5.1.x set up to track remote branch 5.1.x from origin. Switched to a new branch '5.1.x' adace@mound:~/Src/apache/trafficserver Does that sound right? Yes.

Re: 5.1.0 has branched

2014-08-20 Thread Alan M. Carroll
All; I forgot to note that as part of the last triage a number of bugs were moved from 5.1.0 to 5.2.0 because of the lack of an available patch. If one of these was yours, you will need to work on it on master for 5.2.0 and explicitly request a back port to 5.1.0.

Re: SSL support extensions - design review request

2014-08-19 Thread Alan M. Carroll
James, I can answer a few of these. Thanks for the docs, this looks very promising. When you are ready to submit patches, this will need API review https://cwiki.apache.org/confluence/display/TS/API+Review+Process. Actually, Susan forgot to mention that you can review the code at

Re: TSMimeHdrFieldNext

2014-08-16 Thread Alan M. Carroll
I think there are two reasonable approaches - 1) Iterator style. In this case we either create a new iterator type or re-use the FieldHandle as an iterator. In this case you get a handle to the first field, and then re-use it for each field. This saves the expense of allocating a new handle

TSMimeHdrFieldNext

2014-08-15 Thread Alan M. Carroll
This came up yesterday on the IRC. The problem is that every call to TSMimeHdrFieldNext allocates a MIME field handle which gets very slow if you use the function heavily. One suggested approach was to switch the allocator from a global to a per thread. I think it might be better to add

Re: TSMimeHdrFieldNext

2014-08-15 Thread Alan M. Carroll
Leif, Is the goal here to iterate over all headers? If so, maybe some sort of iterator functionality would be more appropriate, similar to how we added the iterator (with a callback) for lib records (i.e. TSRecordDump() )? Can that help simplifying / improve such operations? If you added

Re: TSMimeHdrFieldNext

2014-08-15 Thread Alan M. Carroll
Leif, But if the goal is to always iterate over all headers, I’m guessing (but not sure?) that it could be done more efficiently with an API that assumes so ? But alas, I don’t know what the use case here is, I’ve yet to see one where iterating over all headers is required (you usually

5.1 Freeze

2014-08-12 Thread Alan M. Carroll
All; It's getting close to time for beginning the 5.1 release cycle. I would like to close it out on Monday, 18 Aug. If this is an issue let me know ASAP. Thanks.

Re: git commit: TS-2863: Enable FQDN selection for shared sessions.

2014-07-28 Thread Alan M. Carroll
James, Friday, July 25, 2014, 3:59:18 PM, you wrote: Still reviewing, but I wish this had been a number of smaller patches. For example, const'ing the MD5 stuff and adding ~PluginIdentity() could have been independent patches ... Yes, the ~PluginIdentity() is a leak from some other work I

TS-2964 - Make URL hash run time adjustable

2014-07-28 Thread Alan M. Carroll
As part of TS-2362 (Cache backwards compatibility) I must be able to switch the URL hashing at run time. Some release after 3.2 changed the URL from MMH to MD5 so it must be switched back to be compatible but not if there are no old cache stripes. There has also been a pending desire for other

Re: git commit: TS-2863: Enable FQDN selection for shared sessions.

2014-07-28 Thread Alan M. Carroll
I would like to note that another purpose of the FQDN change is to provide better encapsulation for server session management with an eye to future work in making that more accessible to plugins and other core code.

Re: New Hash Table implementation

2014-07-20 Thread Alan M. Carroll
Theo, Sunday, July 20, 2014, 11:19:11 AM, you wrote: Any reason to not simply use ck_hs and ck_ht from concurrency kit? That was one of the points of looking at that library. On Jul 19, 2014 11:33 PM, Alan M. Carroll a...@network-geographics.com wrote: Only administrative reasons

Scoped resource classes

2014-07-17 Thread Alan M. Carroll
Based on work trying to clean up Coverity issues, we have run in to pattern that looks like this X x = alloc_some_resource(); if (! cond1) { Log(error); destroy(x); return FAIL; } if (! cond2) { Log(error); destroy(x); return FAIL; } // ... etc ... return x; The problem is that frequently

Re: Lifetime of a Continuation

2014-06-19 Thread Alan M. Carroll
Nick, You should talk to Brian G. He had a bug last month in transform that looked a lot like this. See TS-2820. https://issues.apache.org/jira/browse/TS-2820 Tuesday, June 17, 2014, 11:16:35 AM, you wrote: There's a common idiom in /plugins/ and /examples/. Where a plugin uses a

Re: git commit: Doc: Plugin identity and related logging tags.

2014-06-09 Thread Alan M. Carroll
James, The correct syntax for referring to function arguments is :c:arg:`foo` Except sockaddr in this case is not a functiona argument, it is a type. The argument is addr. :data:`NULL` WARNING: py:data reference target not found: NULL I would argue against using constructs that generate

Re: git commit: Doc: Plugin identity and related logging tags.

2014-06-09 Thread Alan M. Carroll
James, Monday, June 9, 2014, 10:44:15 AM, you wrote: :data:`NULL` WARNING: py:data reference target not found: NULL Weird, that's used in other places. Does :c:data:`NULL` generate an error too? Yes, I get dozens of messages from that every time I build the docs. SPDY never makes the

Re: API proposal

2014-05-27 Thread Alan M. Carroll
James, Monday, May 26, 2014, 9:19:27 PM, you wrote: Hi Alan, So AFAICT this is not a true superset of the TSClientProtoStack API. FWIW, I also think that removing that API should have been reviewed. This proposal is not intended as a replacement for TSClientProtoStack, but to solve a

Re: git commit: TS-2753: Add more SPDY and HTTPS statistics Reviewed: Bryan Call

2014-05-27 Thread Alan M. Carroll
James, Monday, May 26, 2014, 8:00:59 PM, you wrote: Where is proxy.process.spdy.total_streams decremented? I don't think it is - it is counting the total number of streams, which can only increase. The ACTIVE variants count the number of objects currently extant. This is parallel to things

API proposal

2014-05-23 Thread Alan M. Carroll
TSHttpConnectWithPluginID = Allows the plugin to initiate an http connection. This will tag the HTTP state machine with extra data that can be accessed by the logging interface. Synopsis `#include ts/ts.h` .. c:function:: TSVConn

Re: API proposal

2014-05-23 Thread Alan M. Carroll
William, I've thought about that. I think this is at the limits of what I this is reasonable for argument lists. If we want more (and we would want at least transparency) I would rather go with an options structure which can contain a much larger number of options. This is a bit ugly in C, but

Re: git commit: TS-2381 Add SPDY stream count statistic.

2014-05-22 Thread Alan M. Carroll
James, +# if TS_HAS_SPDY +extern int spdy_config_load (); +spdy_config_load(); // must be before HttpProxyPort init. +# endif This seems really fragile, is it going to stay, or do you have a plan to remove it? That's the way everything else is initialized, a specific method is

Re: SPDY items - client sessions and protocol names

2014-05-19 Thread Alan M. Carroll
James, I still don't understand this focus on client session chaining. AFAICT there is no client session chaining other than an implementation detail in the current SPDY implementation. I don't see how client session is a general concept at all. In order to do other things (such as

Re: git commit: TS-2821 Add to default records.config and tweak the name to be more consistent.

2014-05-19 Thread Alan M. Carroll
James, Monday, May 19, 2014, 7:45:29 PM, you wrote: I will bow out of the naming issue just do whatever the consensus is. The default value of 1000 is *huge*. 10 would be better IMHO. 1000 was the existing hardwired value. We should not be adding more default entries to records.config; the

Re: SPDY items - client sessions and protocol names

2014-05-17 Thread Alan M. Carroll
Hmmm, is that always going to be the case? I’d imagine that we (long term) support the following types of sessions: I think it will be. In fact, I would argue that the possible future proliferation of session mixing is another reason to have a SPDY client session, so that we can have a

SPDY items - client sessions and protocol names

2014-05-16 Thread Alan M. Carroll
I've been thinking about some of the SPDY issues that have come up and have a couple of ideas. First, the SPDY SM is really a client session. It handles input from a client socket and drives the transactions through the system, without interacting (directly) with any of the origin servers or

Re: [VOTE] Release Apache Traffic Server 4.2.1 (RC1)

2014-04-28 Thread Alan M. Carroll
Phil, +1. Works in local testing and in some field deployments.

Re: ATS 4.2.0 crashing

2014-04-14 Thread Alan M. Carroll
Brendan, This might be TS-2564. I'm currently investigating another crash that seems related.

Re: Importing libck

2014-04-11 Thread Alan M. Carroll
+1 I'd like to propose that we pull libck into our tree and use it to replace some of our stuff like the freelist, ink_atomic_list and hash tables. http://concurrencykit.org/ Right now there are not enough distro's to make just linking against system libs feasible, but I'd like to set it

Re: Proposal to remove 32bit support.

2014-04-11 Thread Alan M. Carroll
+1 Given the nature of ATS and its focus exclusively on high performance environments, I suggest we throw off the bonds of 32bit support going forward. I’m unaware of anyone running ATS on 32bit systems or developing ATS on 32bit systems. I propose removing 32bit support in Apache

Re: Segfault after upgrade from 4.0.2 to 4.2.0

2014-04-09 Thread Alan M. Carroll
Jean, Please look at TS-2564. Also, the traffic.out logfile should have more details on the crash. Wednesday, April 9, 2014, 2:25:57 AM, you wrote: Hello, I tried to upgrade a 2 server's cluster from ATS 4.0.2 to 4.2.0. Everything is fine on one server when to other one keeps crashing with

Re: Question about Raw Disk performance

2014-04-09 Thread Alan M. Carroll
Wednesday, April 9, 2014, 11:18:28 AM, you wrote: As per documentation of ATS, it says raw disk performance is better than formatted disk. I verified page load performance . it degrades page load time with raw disk. During my test, I mentioned path of raw disk partition in storage.config

Re: How regex purge works?

2014-03-20 Thread Alan M. Carroll
Thursday, March 20, 2014, 1:28:45 PM, you wrote: So when ATS receives a regex purge request, it must scan the disk for each and every object in order to retrieve it's URL and compare it to the pattern being searched. Is this assumption correct? Yes. Are our assumptions correct? If so, is

TS-2564

2014-02-24 Thread Alan M. Carroll
I'm still researching the presence bits but as far as I can tell so far they should be written and read from the cache. There may be some alignment issues but I don't see how can happen and not scrozzle the rest of the HdrHeap. I need to trace through a bit more and see if it's possibly a

TS-2362: 3.2.X cache compatibility patch

2014-02-14 Thread Alan M. Carroll
This is ready for initial review. This is an alpha, which means it compiles and works on my magic dev box. However, this is a sufficiently major code change that I would like some review. A few key points: 1) This effectively reverts TS-1925 because, it turns out, 3.2.X used the MMH hash for

Re: C++ B-tree

2014-01-30 Thread Alan M. Carroll
Thursday, January 30, 2014, 12:24:43 PM, you wrote: https://code.google.com/p/cpp-btree/ I personally need this because it implements an ordered set where all our hash table implementations are obviously unordered. Have you looked at the red/black tree implementation in lib/ts/IpMap.h?

Re: C++ B-tree

2014-01-30 Thread Alan M. Carroll
, January 30, 2014, 12:43:22 PM, you wrote: On Thu, Jan 30, 2014 at 11:39 AM, Alan M. Carroll a...@network-geographics.com wrote: Thursday, January 30, 2014, 12:24:43 PM, you wrote https://code.google.com/p/cpp-btree/ I personally need this because it implements an ordered set where all our

Plugin API, ts.h, and shared enumerations

2014-01-28 Thread Alan M. Carroll
I am working on adding a couple of configuration variables and have run in to the problem of sharing enumerations between the plugin API and the internals. As far as I can tell this is currently done in one of two ways: 1) Use straight numeric values (e.g. if (share_server_session == 2)) 2)

Re: Support for HTTP Upgrade in transparent proxy

2014-01-21 Thread Alan M. Carroll
Tuesday, January 21, 2014, 6:01:17 AM, you wrote: Hi, I implemented a solution for HTTP Upgrade in ATS under Seamless Access SW (a Mobixell product). We'll be happy to contribute with the solution but I don't know what the procedure is. I can take point on that. Do you have access to

Storage device control

2014-01-16 Thread Alan M. Carroll
I am working on command line access to the state of physical storage in the cache. Currently the interface looks like traffic_line --device /dev/sdb --cmd offline The --device must match a path in storage.config and if so, that physical device is marked offline as if it had failed. I'm in the

Re: Range transform problems

2013-12-19 Thread Alan M. Carroll
Wednesday, December 18, 2013, 4:51:31 PM, you wrote: - where does the original Content-Length header come from? The cached response header. Or the upstream response - right? Will the first plugin transform receive the original CL + the 'range transformed' CL? Well, the range transform is

Re: Range transform problems

2013-12-11 Thread Alan M. Carroll
Tuesday, December 10, 2013, 10:29:36 PM, you wrote: On Dec 9, 2013, at 2:53 PM, Alan M. Carroll a...@network-geographics.com wrote: I've been failing at solving the range transform issue for quite a while. I think now we need to do something a little bit bigger to make it work correctly

Re: Range transform problems

2013-12-10 Thread Alan M. Carroll
https://cwiki.apache.org/confluence/display/TS/Transform+Plugin+Content+Length+Control I read the proposal and found it very reasonable. Better yet, it sounds like it could be possible to make this API/ABI compatible. I think 4.2.X seems reasonable, although I will try for 4.1.X.

Range transform problems

2013-12-09 Thread Alan M. Carroll
I've been failing at solving the range transform issue for quite a while. I think now we need to do something a little bit bigger to make it work correctly and I have outlined that as an API proposal in the wiki.

  1   2   3   >