You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ic...@apache.org on 2017/10/30 14:27:19 UTC
svn commit: r1813767 - in /httpd/httpd/trunk: CHANGES
modules/http2/h2_bucket_beam.c modules/http2/h2_mplx.c
modules/http2/h2_version.h
Author: icing
Date: Mon Oct 30 14:27:18 2017
New Revision: 1813767
URL: http://svn.apache.org/viewvc?rev=1813767&view=rev
Log:
*) mod_http2: avoid unnecessary data retrieval for a trace log. Allow certain
information retrievals on null bucket beams where it makes sense. [Stefan Eissing]
Modified:
httpd/httpd/trunk/CHANGES
httpd/httpd/trunk/modules/http2/h2_bucket_beam.c
httpd/httpd/trunk/modules/http2/h2_mplx.c
httpd/httpd/trunk/modules/http2/h2_version.h
Modified: httpd/httpd/trunk/CHANGES
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/CHANGES?rev=1813767&r1=1813766&r2=1813767&view=diff
==============================================================================
--- httpd/httpd/trunk/CHANGES [utf-8] (original)
+++ httpd/httpd/trunk/CHANGES [utf-8] Mon Oct 30 14:27:18 2017
@@ -1,6 +1,9 @@
-*- coding: utf-8 -*-
Changes with Apache 2.5.0
+ *) mod_http2: avoid unnecessary data retrieval for a trace log. Allow certain
+ information retrievals on null bucket beams where it makes sense. [Stefan Eissing]
+
*) mod_macro: fix usability of globally defined macros in .htaccess files.
PR 57525. [Jose Kahan <jose w3.org>, Yann Ylavic]
Modified: httpd/httpd/trunk/modules/http2/h2_bucket_beam.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_bucket_beam.c?rev=1813767&r1=1813766&r2=1813767&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http2/h2_bucket_beam.c (original)
+++ httpd/httpd/trunk/modules/http2/h2_bucket_beam.c Mon Oct 30 14:27:18 2017
@@ -663,7 +663,7 @@ apr_size_t h2_beam_buffer_size_get(h2_bu
h2_beam_lock bl;
apr_size_t buffer_size = 0;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
buffer_size = beam->max_buf_size;
leave_yellow(beam, &bl);
}
@@ -696,7 +696,7 @@ void h2_beam_abort(h2_bucket_beam *beam)
{
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
if (!beam->aborted) {
beam->aborted = 1;
r_purge_sent(beam);
@@ -712,7 +712,7 @@ apr_status_t h2_beam_close(h2_bucket_bea
{
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
r_purge_sent(beam);
beam_close(beam);
report_consumption(beam, &bl);
@@ -725,7 +725,7 @@ apr_status_t h2_beam_leave(h2_bucket_bea
{
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
recv_buffer_cleanup(beam, &bl);
beam->aborted = 1;
beam_close(beam);
@@ -1165,7 +1165,7 @@ apr_off_t h2_beam_get_buffered(h2_bucket
apr_off_t l = 0;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
for (b = H2_BLIST_FIRST(&beam->send_list);
b != H2_BLIST_SENTINEL(&beam->send_list);
b = APR_BUCKET_NEXT(b)) {
@@ -1183,7 +1183,7 @@ apr_off_t h2_beam_get_mem_used(h2_bucket
apr_off_t l = 0;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
for (b = H2_BLIST_FIRST(&beam->send_list);
b != H2_BLIST_SENTINEL(&beam->send_list);
b = APR_BUCKET_NEXT(b)) {
@@ -1199,7 +1199,7 @@ int h2_beam_empty(h2_bucket_beam *beam)
int empty = 1;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
empty = (H2_BLIST_EMPTY(&beam->send_list)
&& (!beam->recv_buffer || APR_BRIGADE_EMPTY(beam->recv_buffer)));
leave_yellow(beam, &bl);
@@ -1212,7 +1212,7 @@ int h2_beam_holds_proxies(h2_bucket_beam
int has_proxies = 1;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
has_proxies = !H2_BPROXY_LIST_EMPTY(&beam->proxies);
leave_yellow(beam, &bl);
}
@@ -1224,7 +1224,7 @@ int h2_beam_was_received(h2_bucket_beam
int happend = 0;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
happend = (beam->received_bytes > 0);
leave_yellow(beam, &bl);
}
@@ -1236,7 +1236,7 @@ apr_size_t h2_beam_get_files_beamed(h2_b
apr_size_t n = 0;
h2_beam_lock bl;
- if (enter_yellow(beam, &bl) == APR_SUCCESS) {
+ if (beam && enter_yellow(beam, &bl) == APR_SUCCESS) {
n = beam->files_beamed;
leave_yellow(beam, &bl);
}
Modified: httpd/httpd/trunk/modules/http2/h2_mplx.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_mplx.c?rev=1813767&r1=1813766&r2=1813767&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http2/h2_mplx.c (original)
+++ httpd/httpd/trunk/modules/http2/h2_mplx.c Mon Oct 30 14:27:18 2017
@@ -376,11 +376,12 @@ static int report_stream_iter(void *ctx,
h2_mplx *m = ctx;
h2_stream *stream = val;
h2_task *task = stream->task;
- ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, m->c,
- H2_STRM_MSG(stream, "started=%d, scheduled=%d, ready=%d, "
- "out_buffer=%ld"),
- !!stream->task, stream->scheduled, h2_stream_is_ready(stream),
- (long)h2_beam_get_buffered(stream->output));
+ if (APLOGctrace1(m->c)) {
+ ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, m->c,
+ H2_STRM_MSG(stream, "started=%d, scheduled=%d, ready=%d, out_buffer=%ld"),
+ !!stream->task, stream->scheduled, h2_stream_is_ready(stream),
+ (long)h2_beam_get_buffered(stream->output));
+ }
if (task) {
ap_log_cerror(APLOG_MARK, APLOG_DEBUG, 0, m->c, /* NO APLOGNO */
H2_STRM_MSG(stream, "->03198: %s %s %s"
Modified: httpd/httpd/trunk/modules/http2/h2_version.h
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_version.h?rev=1813767&r1=1813766&r2=1813767&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http2/h2_version.h (original)
+++ httpd/httpd/trunk/modules/http2/h2_version.h Mon Oct 30 14:27:18 2017
@@ -26,7 +26,7 @@
* @macro
* Version number of the http2 module as c string
*/
-#define MOD_HTTP2_VERSION "1.10.12"
+#define MOD_HTTP2_VERSION "1.10.13-DEV"
/**
* @macro
@@ -34,7 +34,7 @@
* release. This is a 24 bit number with 8 bits for major number, 8 bits
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
*/
-#define MOD_HTTP2_VERSION_NUM 0x010a0b
+#define MOD_HTTP2_VERSION_NUM 0x010a0d
#endif /* mod_h2_h2_version_h */