]>
err.no Git - varnish/log
phk [Fri, 29 Feb 2008 09:38:49 +0000 (09:38 +0000)]
Workaround: ignore uncached objects in EXP_Touch()
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2544
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 26 Feb 2008 11:05:54 +0000 (11:05 +0000)]
Go over the expiry and LRU code once more:
Drop the hangman, with grace implemented we might as well just ditch
the object when the timer expires.
Use separate markers for "on LRU" and "on binheap" and document the
specific protocol for avoiding conflicts between LRU and timer processing.
Many more asserts and a couple of minor bugfixes.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2543
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 26 Feb 2008 09:23:39 +0000 (09:23 +0000)]
Fix a bug in the hangman code: conversion from object to objexp
missed a marker variable.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2542
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 26 Feb 2008 09:12:29 +0000 (09:12 +0000)]
Give the random director its own magic
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2541
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 26 Feb 2008 09:10:35 +0000 (09:10 +0000)]
Get the pthread_mutex_trylock() assert right, the error code is the
return value, and not in errno.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2540
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 25 Feb 2008 22:30:23 +0000 (22:30 +0000)]
Avoid asserting on correct errno from pthread_mutextrylock()
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2539
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 25 Feb 2008 18:42:07 +0000 (18:42 +0000)]
Explicitly initialize errno to zero before mutex ops.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2538
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 20:36:33 +0000 (20:36 +0000)]
The expiry module keeps all cached objects on two data structures:
the LRU list and the binary heap. In both of these cases, operations
on one object will result in certain fields in neighbor objects in
these data structures to be updated.
In difference from cache_hash.c which examine objects related by
hash match where the existence of the hash lookup in the first place
is a predictor for their likely use, in cache_expire the neighbor
objects are totally unrelated and the fact that we update their
list pointers or binheap index in no way indicates that they will
get a cache hit any time soon.
Paging in one page for a number of objects, just to move another
object up or down the binheap or LRU list is thus not only slow,
but also increases varnish' VM footprint for no real benefit.
This commit moves the relevant housekeeping fields into a "objexp"
structure, which gets hung off the objects when they enter the cache.
The objexp structure is small (40 bytes on i386) so statistically it
is more than an order of magnitude more likely to already be in core
when we need it, compared to the object itself.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2537
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 20:03:51 +0000 (20:03 +0000)]
Make cache_expire.c pick up its own reference on the object.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2536
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:58:04 +0000 (19:58 +0000)]
Fix obj.last_use: We cannot use obj.lru_stamp, as that is only updated
when we shuffle the LRU list.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2535
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:54:44 +0000 (19:54 +0000)]
Only move objects to the tail of the LRU queue if we can get the
expiry mutex without waiting.
This is in addition to the already present "only if it have not
been moved recently" check.
This additional mutex-contestion reduction obviously might leave
the LRU list badly out of order, but this can be worked around
by examining obj.last_use in vcl_discard()
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2534
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:48:11 +0000 (19:48 +0000)]
Introduce a TRYLOCK() macro, and remove two ';' which could cause grief.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2533
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:43:57 +0000 (19:43 +0000)]
obj->lru_stamp is on TIM_real() not TIM_mono().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2532
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:27:35 +0000 (19:27 +0000)]
Remove unused last_check member and TIM_mono() call
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2531
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:26:38 +0000 (19:26 +0000)]
Rename EXP_TTLchange() to EXP_Rearm() and move binheap check into
cache_expire.c.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2530
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 23 Feb 2008 19:15:23 +0000 (19:15 +0000)]
Dispose of VCL reference count if we drop parked sessions due to worker
pool shortages.
Fixes ticket #213
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2529
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 21 Feb 2008 21:14:57 +0000 (21:14 +0000)]
We don't need cryptographic-strength randomness here. Try /dev/urandom
first, then /dev/random, then fall back to pid and time. Using an
uninitialized stack variable as seed is just silly, and Coverity rightly
complains about it (CID#19)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2528
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 21 Feb 2008 20:55:08 +0000 (20:55 +0000)]
Dump some information about the VCL configuration if we have one.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2527
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 21 Feb 2008 20:50:16 +0000 (20:50 +0000)]
Where applicable, use SPAZ() instead of AZ().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2526
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 21 Feb 2008 20:49:11 +0000 (20:49 +0000)]
Add SPAZ() and SPAN() macros which combine AZ() and AN() with spassert().
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2525
d4fa192b -c00b-0410-8231-
f00ffab90ce4
ssm [Wed, 20 Feb 2008 13:39:59 +0000 (13:39 +0000)]
Typo patrol
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2521
d4fa192b -c00b-0410-8231-
f00ffab90ce4
ssm [Wed, 20 Feb 2008 12:02:07 +0000 (12:02 +0000)]
Debian packaging: Disable running of varnishlog by default
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2520
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 20 Feb 2008 10:59:25 +0000 (10:59 +0000)]
Count directors as backends.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2519
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 19 Feb 2008 12:05:41 +0000 (12:05 +0000)]
Make logging of mutex operations or just contests controlled under diag_bitmap
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2518
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 19 Feb 2008 12:00:47 +0000 (12:00 +0000)]
Oops, this should not have been deleted in my previous commit
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2517
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Tue, 19 Feb 2008 11:57:04 +0000 (11:57 +0000)]
If HSH_Lookup() returns non-NULL, assert that sp->objhead != NULL.
HSH_Lookup() is supposed to guarantee this, but it appears that it
sometimes doesn't (perhaps a bug snuck in with grace mode?)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2516
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 19 Feb 2008 11:52:27 +0000 (11:52 +0000)]
Move the #include of heritage.h to cache.h.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2515
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Tue, 19 Feb 2008 11:10:12 +0000 (11:10 +0000)]
Revise the kqueue_acceptor with a sledgehammer.
Use EV_ONESHOT for all session events to make the kernel delete the
event when it fires, to remove any chance of any race with session
state and kqueue event arming.
For sessions with acceptfilter, this does just what we want (and I
kick myself for not realizing this much sooner).
For sessions where the acceptfilter is not enabled or has given up,
this results in an extra kevent arming operation for each read, but
this is still a much lower overhead than synchrnously deleting
the event when before passing the session on.
Delete all the workarounds and band-aids that had accumulated.
All in all, a win-win-win situation.
I have no idea how many tickets this will close.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2514
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 18 Feb 2008 17:04:30 +0000 (17:04 +0000)]
Move the assertions around; it is apparently possible to get a null event
on a session that no longer has the fd that the event was registered on.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2513
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 12:00:19 +0000 (12:00 +0000)]
Uncapitalize DIAGNOSTICS, since diag_bitmap is not related to the
#ifdef, which we retain for really heavy duty instrumentation, should
we ever need that.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2512
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 11:54:30 +0000 (11:54 +0000)]
Move kqueue debugging under diag_bitmap control
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2511
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 11:50:39 +0000 (11:50 +0000)]
Move the workspace debugging under diag_bitmap control.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2510
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 11:47:55 +0000 (11:47 +0000)]
Move the logging of state engine states to use the diag_bitmap
instead of #ifdef DIAGNOSTICS for control.
Also reduce VSL mutex cost by 50% for the common case where we have
a worker thread: We did a WSL_Flush() followed by a VSL(), doing a
WSL() before the WSL_FLush saves one VSL mutex op.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2509
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 11:45:58 +0000 (11:45 +0000)]
Make a parameter "diag_bitflag" which can control deeper diagnostics for
us, instead of the #ifdef DIAGNOSTICS which is always not there when you
need it or there when you don't want it.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2508
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 11:04:35 +0000 (11:04 +0000)]
Kill debugging shmlogging overlooked for too long.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2507
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Mon, 18 Feb 2008 09:59:08 +0000 (09:59 +0000)]
Add a stats field to monitor the LRU move rate.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2506
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 23:36:12 +0000 (23:36 +0000)]
Add green icon.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2505
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 23:29:24 +0000 (23:29 +0000)]
Add a log message for short reads in the content-length case.
Also, clean up some variable names and declarations.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2502
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 22:37:41 +0000 (22:37 +0000)]
A number of changes made while trying to reproduce #176:
- modify thread_log() to take an "errcode" argument (typically errno) so
we don't have to sprinkle the code with strerror() calls.
- read_line() and read_block() would sometimes unnecessarily log an error
for a short read; let the caller decide whether a short read is
acceptable.
- reorder the if / else if / else blocks in receive_response() so the
logic is easier to follow.
- remove test code which we no longer need.
- fix some style issues; there are still a couple of long lines, though.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2501
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 10:02:07 +0000 (10:02 +0000)]
Fix assert in thread_close() for fd == nthreads == 0.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2500
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 09:32:50 +0000 (09:32 +0000)]
Unfinished Firefox plugin.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2499
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 09:28:44 +0000 (09:28 +0000)]
No longer necessary
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2498
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 09:28:24 +0000 (09:28 +0000)]
No longer necessary
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2497
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 09:03:32 +0000 (09:03 +0000)]
Free leftover buffers when the loop ends (Coverity CID#10)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2494
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 08:54:53 +0000 (08:54 +0000)]
Make sure buf is freed in error case (Coverity CID#9)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2493
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 17 Feb 2008 08:53:01 +0000 (08:53 +0000)]
Request is bogus if df_m, df_Uq or df_H are NULL (Coverity CID#2, CID#3)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2492
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sat, 16 Feb 2008 11:03:37 +0000 (11:03 +0000)]
We may get spurious events on an unclosed fd as well. It won't cause
any harm, but I still want to catch it early so we get a log entry for
it.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2491
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 14:22:23 +0000 (14:22 +0000)]
Flexelint pleasing
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2490
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:35:22 +0000 (13:35 +0000)]
Make this cast less suspect to Flexelint
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2489
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:32:41 +0000 (13:32 +0000)]
Unused variable
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2488
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:32:04 +0000 (13:32 +0000)]
Define VARNISH_STATE_DIR
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2487
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:31:47 +0000 (13:31 +0000)]
Somebody ate my ')' on the way to the commit.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2486
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:19:49 +0000 (13:19 +0000)]
Tell if we could not write the PID file.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2485
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 13:04:36 +0000 (13:04 +0000)]
Flexelint does not react to the assert, so tell it what we know.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2484
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:59:59 +0000 (12:59 +0000)]
Check VLU_Fd return for good measure.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2483
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:56:01 +0000 (12:56 +0000)]
Remove a spurious debugging message.
Account for the HTTP bits we do know about and handle.
Ignore return value from shutdown(2)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2482
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:47:42 +0000 (12:47 +0000)]
Assert that VCC did its job with respect to weights.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2481
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:44:42 +0000 (12:44 +0000)]
Insist on a non-zero weight for random director memebers and
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2480
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:42:48 +0000 (12:42 +0000)]
Don't advance the token in vcc_UintVal(), that prevents precise
error messages based on the value of the integer.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2479
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 12:30:47 +0000 (12:30 +0000)]
Use the abort2(2) function to record our panic string, if we have it.
Protect macros with do {....} while(0)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2478
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 11:52:41 +0000 (11:52 +0000)]
Add a paramter for maximum CLI buffer size and use it both in child
and manager. To take effect, it must be specified with -p on the
command line.
Use VLU for managers CLI handling.
Note CLI connection events on stderr.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2477
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 11:27:25 +0000 (11:27 +0000)]
Give uint parameters the same treatment as bool and timeouts: eliminate
a lot of silly trivial functions.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2476
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 11:15:59 +0000 (11:15 +0000)]
Rewrite the childs CLI handling to use VLU
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2475
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 11:15:41 +0000 (11:15 +0000)]
Remove a duplicated message on the childs stdout.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2474
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:57:20 +0000 (10:57 +0000)]
A Give VLU_New() an optional buffersize argument
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2473
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:36:21 +0000 (10:36 +0000)]
Log everything we see on the childs stdout/stderr to syslog.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2472
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:34:42 +0000 (10:34 +0000)]
Add VLU (Varnish Line Up) a copy of LineUp from my private utility library:
A set of simple functions for cutting a byte stream into text-lines and
calling a function for each of them, as the they become available.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2471
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:28:00 +0000 (10:28 +0000)]
Add ALLOC_OBJ macro
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2470
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:08:02 +0000 (10:08 +0000)]
Move the sizeof debugging output to an undocumented debug.sizeof
CLI command.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2469
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:02:45 +0000 (10:02 +0000)]
remove dump.pool prototype
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2468
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 10:01:19 +0000 (10:01 +0000)]
remove the undocumented and unimplemented dump.pool command
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2467
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 09:41:23 +0000 (09:41 +0000)]
Give the param structure a void *priv, and use it to avoid a large
number of pointless trivial functions for bools and timeouts.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2466
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 09:09:47 +0000 (09:09 +0000)]
Adjust to direct inclusion of config.h
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2465
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 08:54:20 +0000 (08:54 +0000)]
Determine our backend (using the director) before we filter the req
into the bereq, in order to be able to assign a default Host: header
if there is none.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2464
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Fri, 15 Feb 2008 08:33:41 +0000 (08:33 +0000)]
Put a ULL suffix on numeric constants too large for 32 bit systems.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2463
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Fri, 15 Feb 2008 07:51:15 +0000 (07:51 +0000)]
Detect and gracefully recover from what appears to be a bug in the FreeBSD
kernel, which will sometimes report a null kqueue event.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2462
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 17:25:57 +0000 (17:25 +0000)]
Regenerate
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2461
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 17:25:52 +0000 (17:25 +0000)]
Forgot config.h here
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2460
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 17:19:52 +0000 (17:19 +0000)]
Never mind trying to avoid libm, we already use it anyway.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2459
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 17:12:59 +0000 (17:12 +0000)]
Enable tests + allow overrides from command line.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2458
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 17:10:04 +0000 (17:10 +0000)]
SLT_Length is not relevant for backend requests.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2457
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 14:58:48 +0000 (14:58 +0000)]
Disable tools that require curses if no curses library was found.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2456
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 13:55:39 +0000 (13:55 +0000)]
Use #include "config.h" instead of -include config.h
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2455
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 13:29:40 +0000 (13:29 +0000)]
Rewrite str2bytes, add unit test
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2454
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Wed, 13 Feb 2008 13:05:36 +0000 (13:05 +0000)]
Some source files (especially in libraries) have embedded test
programs. Add a configure option and a corresponding automake
conditional to enable these tests.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2453
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 13 Feb 2008 11:35:10 +0000 (11:35 +0000)]
Fix a bug relating to vbe_conn statistics counter.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2452
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 13 Feb 2008 10:59:25 +0000 (10:59 +0000)]
Go over the backend code and privatize a lot of stuff
that now belongs only in cache_backend.c
Control the caching of bereq's via the parameter.
Found no bugs, so I think I will release -trunk for
adventurous testers again.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2451
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 13 Feb 2008 10:57:17 +0000 (10:57 +0000)]
Add two new stat fields for counting bereq's and backends.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2450
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 13 Feb 2008 10:56:36 +0000 (10:56 +0000)]
Add a parameter for controlling caching of vbe_conn structures.
(the code that it controls follows in a minute)
I'm very interested to hear if there is any measurable effect
of this variable on heavily loaded systems.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2449
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Wed, 13 Feb 2008 10:55:03 +0000 (10:55 +0000)]
Fix example to new backend syntax
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2448
d4fa192b -c00b-0410-8231-
f00ffab90ce4
ssm [Tue, 12 Feb 2008 06:52:33 +0000 (06:52 +0000)]
Add information to \"-a\" about how to listen on multiple hosts or ports
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2447
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 11 Feb 2008 10:46:09 +0000 (10:46 +0000)]
Update backend declaration syntax. Note that a) vcl.7 needs a partial
rewrite to track this change, and b) there have been other changes which
also need to be merged in.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2446
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Mon, 11 Feb 2008 02:58:41 +0000 (02:58 +0000)]
Separate the handling of backend and client requests, greatly simplifying
both.
Skip piped requests, and requests that are interrupted by an error. This
should eliminate or at least greatly reduce the (null)s seen in logs.
Fix a conditional that blocked backend requests from being printed.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2445
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Sun, 10 Feb 2008 18:00:33 +0000 (18:00 +0000)]
Alphabetize command-line options.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2444
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Sat, 9 Feb 2008 15:59:21 +0000 (15:59 +0000)]
<sys/types.h> required by <sys/mman.h>
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2443
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Thu, 7 Feb 2008 09:54:42 +0000 (09:54 +0000)]
Make the random director work, and remove the old code.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2442
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Thu, 7 Feb 2008 09:53:28 +0000 (09:53 +0000)]
Emit the vcl_name from the backend host.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2441
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Thu, 7 Feb 2008 09:52:26 +0000 (09:52 +0000)]
Remove ident string from directors, they are not recycled.
Add vcl_name to backend hosts. Simple backends get the obvious
name. Directors inlined backend hosts gets the directors name
with an array suffix, for instance "b1[1]".
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2440
d4fa192b -c00b-0410-8231-
f00ffab90ce4
phk [Thu, 7 Feb 2008 09:33:30 +0000 (09:33 +0000)]
Use the correct ident (nuke the other one) and do only one dns lookup.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2439
d4fa192b -c00b-0410-8231-
f00ffab90ce4
des [Thu, 7 Feb 2008 01:40:15 +0000 (01:40 +0000)]
_islocked_np() was renamed to isowned_np() in FreeBSD.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2438
d4fa192b -c00b-0410-8231-
f00ffab90ce4