]>
err.no Git - varnish/log
phk [Tue, 7 Aug 2007 07:23:10 +0000 (07:23 +0000)]
Implement "error" action in vcl_fetch() and vcl_deliver()
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1808
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 7 Aug 2007 06:55:52 +0000 (06:55 +0000)]
When vcl_miss() take error action, remember to discard backend request.
Ticket: 139
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1807
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 6 Aug 2007 09:28:44 +0000 (09:28 +0000)]
Forgot an assert.
WS_Return() is now unused, comment it out.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1806
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 6 Aug 2007 09:25:20 +0000 (09:25 +0000)]
Rewrite the req.hash implmentation:
Instead of assembling the entire hash-string in the workspace, use
a scatter gather approach, hinted by the VCL compiler.
This eliminates the workspace reservation which prevented regsub() from
working in vcl_hash, and reduces the size of the necessary workspace a
fair bit as well, at the cost of a little bit of complexity in the
hash implmentations.
Closes ticket 137 and possibly 141
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1805
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 6 Aug 2007 09:19:20 +0000 (09:19 +0000)]
Add piecemal crc32 function back, we will need it for the scatter/gather
hash string.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1804
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 6 Aug 2007 08:07:18 +0000 (08:07 +0000)]
Have the VCL compiler provide a hint about the worst case number of
operations on the req.hash variable.
It is only a hint, because it merely counts how many times the parser
saw something being added to the req.hash variable. If the operation
was in a subroutine which was called multiple times, the hint will not
reflect the number of actual operations.
For now we will deal with that at runtime, at the expense of a
failed transaction every time we run short. If this becomes an issue,
an extensive topological analysis of the VCL program can give us
a definitive count.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1803
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 21:06:41 +0000 (21:06 +0000)]
Add comment to remind myself.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1802
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 20:57:32 +0000 (20:57 +0000)]
vrt.h is not needed here.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1801
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 20:57:20 +0000 (20:57 +0000)]
Add a missing return: we always return after detecting the first error.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1800
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 20:47:16 +0000 (20:47 +0000)]
Add missing assert
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1799
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 20:26:09 +0000 (20:26 +0000)]
We need the math library on some systems.
Ticket 138
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1798
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 20:17:49 +0000 (20:17 +0000)]
Make the nonexistence of "nobody" and "nogroup" users and groups nonfatal
Ticket: 140
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1797
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 19:52:23 +0000 (19:52 +0000)]
Introduce a "replace()" function to replace a malloc'ed string.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1796
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 5 Aug 2007 19:37:44 +0000 (19:37 +0000)]
Synchronize the paramters after we call their accessor functions rather
than when we don't find one.
This makes changing runtime paramters work again, without the need to
ask for a nonexistent parameter to trigger the update.
Ticket: 136
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1795
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 3 Aug 2007 18:50:05 +0000 (18:50 +0000)]
Try harder to avoid integer overflows in cache file size calculations
on 32-bit platforms.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1794
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 3 Aug 2007 18:46:43 +0000 (18:46 +0000)]
Synchronize these two files.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1793
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 31 Jul 2007 06:06:28 +0000 (06:06 +0000)]
Fine-tune the vhost example.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1792
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 14:39:03 +0000 (14:39 +0000)]
Note that MAX_IOVS is intentionally not equal to IOV_MAX.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1791
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 14:31:16 +0000 (14:31 +0000)]
I accidentally committed the wrong patch in r1787; this corrects the logic
used to determine which lock type (shared or exclusive) to use.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1790
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 14:22:00 +0000 (14:22 +0000)]
Bogons in previous commit. Pass me the pointy hat...
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1789
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 14:19:45 +0000 (14:19 +0000)]
pid_t is not necessarily compatible with int.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1788
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 14:16:23 +0000 (14:16 +0000)]
Use fcntl(2)-style locks instead of non-portable flock(2)-style locks.
Based on Theo Schlossnagle's Solaris portability patch.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1787
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 13:54:48 +0000 (13:54 +0000)]
Explicitly set TZ to GMT.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1786
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 13:50:16 +0000 (13:50 +0000)]
Use mktime() rather than the unportable timegm(). The downside is that we're
at the mercy of the TZ environment variable.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1785
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 09:49:05 +0000 (09:49 +0000)]
Avoid using non-portable <err.h>.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1784
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 30 Jul 2007 08:03:42 +0000 (08:03 +0000)]
Avoid referencing <sys/cdefs.h> and __{BEGIN,END}_DECLS.
Based on Theo Schlossnagle's Solaris portability patch.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1783
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sat, 28 Jul 2007 15:29:31 +0000 (15:29 +0000)]
Add a slew of utilities to simplify the writing of test cases. Rewrite the
existing test cases to take advantage of these utilities.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1782
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sat, 28 Jul 2007 11:41:35 +0000 (11:41 +0000)]
Empty responses are not necessarily incorrect, even if Content-Length is
non-zero.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1781
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sat, 28 Jul 2007 10:03:29 +0000 (10:03 +0000)]
Reverse the logic for sp->wantbody: assume it is always wanted unless
req.request is "HEAD". This is what broke the RePurge test case.
Ideally, sp->wantbody would be controllable by VCL.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1780
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sat, 28 Jul 2007 09:23:52 +0000 (09:23 +0000)]
Refactor this test case. Note that it still fails; there seems to be
something wrong with the synthetic response code in varnishd.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1779
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Fri, 27 Jul 2007 14:16:39 +0000 (14:16 +0000)]
Added a health parameter for the backend. This is readable in vcl with backend.health.
Made it possible to pass a vcl variable to error (error 200 backend.health).
Implemented a first attempt at an algorithm for checking the health of a backend.
Negative values means the backend has problems, positive values means it is ok. 0 is neutral,
and could mean that it has been a while since the backend was asked for anything.
See the code for details.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1778
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 26 Jul 2007 13:53:41 +0000 (13:53 +0000)]
Add change log for 1.1.1 + various prop fixes
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1776
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 26 Jul 2007 07:51:09 +0000 (07:51 +0000)]
Whitespace & indentation
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1775
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 26 Jul 2007 07:45:37 +0000 (07:45 +0000)]
fix props
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1774
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 26 Jul 2007 07:45:23 +0000 (07:45 +0000)]
Rename to a more easily remembered (and typed) name.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1773
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 26 Jul 2007 07:43:37 +0000 (07:43 +0000)]
Correct copyright years.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1772
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Thu, 26 Jul 2007 07:02:20 +0000 (07:02 +0000)]
Regression test for http purge with regexp
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1771
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 12:49:21 +0000 (12:49 +0000)]
Implement the full range syntax, eliminating the need for -l. Also
reintroduce -v, which is required by the spec (though we do not use it).
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1770
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 11:52:51 +0000 (11:52 +0000)]
Allow values to be specified as arithmetic expressions written in Lisp-like
prefix notation. Use this to compute the cache hit ratio in the same
manner as the Nagios plugin does, and to compute cache file usage.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1769
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 11:16:42 +0000 (11:16 +0000)]
Set x bit.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1768
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 11:13:32 +0000 (11:13 +0000)]
Add a "usage" parameter which reports cache file usage.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1767
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Wed, 25 Jul 2007 11:10:59 +0000 (11:10 +0000)]
Style...
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1766
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Wed, 25 Jul 2007 11:09:06 +0000 (11:09 +0000)]
Use purge in function names instead of repurge and move VRT_purge to cache_vrt.c.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1765
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 11:08:24 +0000 (11:08 +0000)]
Typo.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1764
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 25 Jul 2007 11:04:50 +0000 (11:04 +0000)]
Style fixes
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1763
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Wed, 25 Jul 2007 08:53:16 +0000 (08:53 +0000)]
Updated man page
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1762
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Wed, 25 Jul 2007 08:39:10 +0000 (08:39 +0000)]
Implemented http purge with regexp. Example vcl usage:
sub vcl_recv {
if (req.request == "REPURGE") {
purge(req.url);
error 404 "Purged";
}
}
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1761
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 16:42:36 +0000 (16:42 +0000)]
Cleanup, rename "hitrate" to "ratio" as in Munin plugin.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1759
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 16:26:36 +0000 (16:26 +0000)]
License.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1758
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 16:20:04 +0000 (16:20 +0000)]
Re-add as files
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1757
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 16:19:24 +0000 (16:19 +0000)]
Remove symlinks
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1756
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 16:17:21 +0000 (16:17 +0000)]
Give this package a proper name and a version number.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1755
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 14:25:54 +0000 (14:25 +0000)]
Instead of incorrectly assuming that a pthread_t can be meaningfully cast
to an unsigned int (which triggered warnings on some 64-bit platforms) and
printed with %08lx, incorrectly assume that it can be meaningfully cast to
a void * and printed with %p. While still incorrect in general terms, the
latter turns out to be correct on the specific systems that we care about.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1754
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 14:10:28 +0000 (14:10 +0000)]
#130: false is spelles FALSE in curses-land.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1753
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 14:02:20 +0000 (14:02 +0000)]
#131: Honor DESTDIR when creating the state directory.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1752
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:56:44 +0000 (13:56 +0000)]
RES_BuildHttp() must be called before RES_WriteObj() to prepare the response
headers. This fixes #128.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1751
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:54:20 +0000 (13:54 +0000)]
Always generate a Connection: header, in case the client makes an incorrect
assumption about which is the default.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1750
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:52:40 +0000 (13:52 +0000)]
Use strlen() directly.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1749
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:51:58 +0000 (13:51 +0000)]
Correct a comment
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1748
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:51:29 +0000 (13:51 +0000)]
Use a regexp search instead of index()
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1747
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 13:50:12 +0000 (13:50 +0000)]
Actually, the message will be in the body.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1746
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 11:39:55 +0000 (11:39 +0000)]
Implement VRT_r_obj_status(), without which obj.status can't be read.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1745
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 24 Jul 2007 11:10:22 +0000 (11:10 +0000)]
Regression test for #128 (currently fails with both trunk and 1.1)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1744
d4fa192b -c00b-0410-8231-
f00ffab90ce4
ssm [Fri, 20 Jul 2007 12:43:54 +0000 (12:43 +0000)]
Split debian package into varnish, libvarnish and libvarnish-dev
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1743
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 11:25:21 +0000 (11:25 +0000)]
Set localstatedir explicitly, otherwise it ends up as /usr/var.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1738
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 10:24:03 +0000 (10:24 +0000)]
Remove debugging output.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1735
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 10:23:12 +0000 (10:23 +0000)]
Store stevedores in a circular list. The head pointer keeps moving from
one stevedore to the next. The LRU code is invoked as soon as any of the
stevedores fills up.
This algorithm is far from ideal, and will not work well with differently
sized stevedores, but it has the advantage of being simple and lock-free.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1734
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 10:14:43 +0000 (10:14 +0000)]
Style nit.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1733
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 09:44:21 +0000 (09:44 +0000)]
Additional style cleanup; remove stevedore list from heritage; revert
locking, which introduces a choke point.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1732
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Fri, 20 Jul 2007 09:19:36 +0000 (09:19 +0000)]
Added locking on the list manipulation.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1731
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Fri, 20 Jul 2007 09:06:42 +0000 (09:06 +0000)]
Move all use of the stevedore list to stevedore.c
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1730
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 08:40:33 +0000 (08:40 +0000)]
Count backend requests.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1729
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 08:39:45 +0000 (08:39 +0000)]
Paranoia.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1728
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 08:38:22 +0000 (08:38 +0000)]
Let the LRU code worry about this.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1727
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 20 Jul 2007 08:32:04 +0000 (08:32 +0000)]
Reword, bump date.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1726
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Fri, 20 Jul 2007 08:20:59 +0000 (08:20 +0000)]
Updated man-page
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1725
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Fri, 20 Jul 2007 08:16:44 +0000 (08:16 +0000)]
Support for multiple cache files. The selecting of a cache file is done by a simple round-robin that selects
the first file in the list, and then moves it to the end. If the selected file hasn't got enough space, the next
one is tried. If no file has enough space, the LRU discarding is applied to the first file in the list.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1724
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 12:18:57 +0000 (12:18 +0000)]
Document Mac OS X compatibility.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1722
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:49:43 +0000 (11:49 +0000)]
Use the correct cc command line on MacOS. This is a gross hack.
Also, ignore the result of dlclose().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1721
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:17:59 +0000 (11:17 +0000)]
Adapt for use on MacOS X / Darwin, which has GNU libtool installed as
glibtool, and has a version of automake 1.6 which does not exhibit the
bug I've observed on other platforms.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1720
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:11:20 +0000 (11:11 +0000)]
Make regexp variables static. This has the side effect of replacing
tentative definitions with non-tentative ones, thus sidestepping one
of the issues we have on MacOS X.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1719
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:03:55 +0000 (11:03 +0000)]
Missed one occurrence of clock_gettime().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1718
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:02:57 +0000 (11:02 +0000)]
Retire libcompat's clock_gettime().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1717
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 11:01:36 +0000 (11:01 +0000)]
If clock_gettime() is not available, use gettimeofday() directly.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1716
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 19 Jul 2007 10:58:31 +0000 (10:58 +0000)]
gettimeofday() is good enough for varnishstat.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1715
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 17 Jul 2007 17:06:12 +0000 (17:06 +0000)]
Assert that LRU_DiscardOne() returns 1, to avoid an unlikely but possible
scenario where multiple clients each require different objects such that
the sum of the sizes of the objects is larger than the cache (or, in the
extreme case, one client requests an object which is larger than the
cache) causing STV_alloc() to enter an infinite loop.
This is not ideal - a better solution would be return NULL and have the
caller deal with the problem, possibly by returning a 503 result, or by
stalling the request for some time.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1714
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 17 Jul 2007 16:58:40 +0000 (16:58 +0000)]
Return count like the comment says we do.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1713
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 17 Jul 2007 16:56:21 +0000 (16:56 +0000)]
Remove object from LRU list before freeing it; this does not entirely
eliminate races between the LRU code and the expiry code, but it does
make them a lot less likely.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1712
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 17 Jul 2007 13:05:08 +0000 (13:05 +0000)]
Amend previous commit. The problem was that when a socket was already open,
open_sockets() did not count it as "good". Having fixed this, revert to the
previous behaviour of keeping the sockets open if auto_restart is on; this
avoids having a brief window (until they are reopened) during which client
connections are refused.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1711
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 17 Jul 2007 10:33:46 +0000 (10:33 +0000)]
Fix child restart by always calling close_sockets() when the child dies;
otherwise open_sockets() fails, which causes start_child() to fail silently.
Furthermore, if open_sockets() fails and child_state is CH_DIED, it will
not be possible to start it manually later; therefore, set child_state
to CH_STOPPED when open_sockets() fails.
Note: it wouldn't hurt if open_sockets() were a little more talkative.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1710
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Mon, 16 Jul 2007 13:06:42 +0000 (13:06 +0000)]
Changed name/description
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1708
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Mon, 16 Jul 2007 11:21:45 +0000 (11:21 +0000)]
Moved the plugin from "others" to "servers" in the menu
Minor "stylistic" changes in VCL part of webmin plugin
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1707
d4fa192b -c00b-0410-8231-
f00ffab90ce4
cecilihf [Mon, 16 Jul 2007 08:39:50 +0000 (08:39 +0000)]
Webmin plugin for varnish
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1706
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 11:25:27 +0000 (11:25 +0000)]
From the "What has the world come to ?" department:
It used to be that sscanf(3) would walk along the proffered string
and do what the format string was told, and as long as the format
terminated before the input string, the NUL termination was not
relevant.
Sometime in the last 20 years, sscanf started doing a strlen on the
passed argument changing this behaviour.
Give sscanf the NUL it wants.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1705
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 11:08:48 +0000 (11:08 +0000)]
Plug even more memory leaks in the VCL compiler.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1704
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 11:04:52 +0000 (11:04 +0000)]
Don't leak the file contents either.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1703
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 10:58:11 +0000 (10:58 +0000)]
Plug minor memory leak.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1702
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 10:57:55 +0000 (10:57 +0000)]
Don't leak all the tokens.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1701
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 10:22:39 +0000 (10:22 +0000)]
Plug a memory-leak in the VCL compiler.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1700
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sun, 15 Jul 2007 10:22:05 +0000 (10:22 +0000)]
Initialize all bits in the sigaction.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1699
d4fa192b -c00b-0410-8231-
f00ffab90ce4