Skip to content

Commit 3c3b311

Browse files
authored
Update Envoy commit to @1a55c72b (2026-01-07) (#1473)
process_impl.cc is updated to satisfy a small change in a function API. Signed-off-by: Elizabeth Byerly <ebyerly@google.com>
1 parent c81ec6a commit 3c3b311

7 files changed

Lines changed: 58 additions & 27 deletions

File tree

.bazelrc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ build:gcc --copt=-Wno-error=uninitialized
156156
build:gcc --cxxopt=-Wno-missing-requires
157157
build:gcc --cxxopt=-Wno-dangling-reference
158158
build:gcc --cxxopt=-Wno-nonnull-compare
159+
build:gcc --cxxopt=-Wno-trigraphs
159160
build:gcc --linkopt=-fuse-ld=gold --host_linkopt=-fuse-ld=gold
160161
build:gcc --host_platform=@envoy//bazel/rbe/toolchains:rbe_linux_gcc_platform
161162
build:gcc --linkopt=-fuse-ld=gold --host_linkopt=-fuse-ld=gold
@@ -383,8 +384,7 @@ build:clang-pch --spawn_strategy=local
383384
build:clang-pch --define=ENVOY_CLANG_PCH=1
384385

385386
# Clang-tidy
386-
# TODO(phlax): enable this, its throwing some errors as well as finding more issues
387-
# build:clang-tidy --@envoy_toolshed//format/clang_tidy:executable=@envoy//tools/clang-tidy
387+
build:clang-tidy --@envoy_toolshed//format/clang_tidy:executable=@envoy//tools/clang-tidy
388388
build:clang-tidy --@envoy_toolshed//format/clang_tidy:config=//:clang_tidy_config
389389
build:clang-tidy --aspects @envoy_toolshed//format/clang_tidy:clang_tidy.bzl%clang_tidy_aspect
390390
build:clang-tidy --output_groups=report
@@ -410,6 +410,9 @@ build:remote --strategy=Javac=remote,sandboxed,local
410410
build:remote --strategy=Closure=remote,sandboxed,local
411411
build:remote --strategy=Genrule=remote,sandboxed,local
412412
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
413+
# This flag may be more generally useful - it sets foreign_cc builds -jauto.
414+
# It is only set here because if it were the default it risks OOMing on local builds.
415+
build:remote --@envoy//bazel/foreign_cc:parallel_builds
413416

414417
## RBE (Engflow Envoy)
415418

bazel/repositories.bzl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
22

3-
ENVOY_COMMIT = "e593c7820b15aab315ddc2b615bd639012288469"
4-
ENVOY_SHA = "6f5614477880fc392844e2b63efb9b55774e908e1bc5f18e6ee57068f76addf8"
3+
ENVOY_COMMIT = "1a55c72be2c95a3dce0ead66350bb4729d49b20b"
4+
ENVOY_SHA = "7feca39dc4db0a85aa8866f6e19ba5bf1d9160a28298dcc951715db6c4d918f3"
55

66
HDR_HISTOGRAM_C_VERSION = "0.11.8" # June 18th, 2025
77
HDR_HISTOGRAM_C_SHA = "bb95351a6a8b242dc9be1f28562761a84d4cf0a874ffc90a9b630770a6468e94"

ci/docker-compose.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ x-envoy-build-base: &envoy-build-base
2828
- BAZEL_STARTUP_EXTRA_OPTIONS
2929
- BAZEL_REMOTE_INSTANCE
3030
- BAZELISK_BASE_URL
31+
- CLANG_TIDY_TARGETS
3132

3233
# CI/CD variables
3334
- CI_BRANCH

source/client/process_impl.cc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -597,13 +597,15 @@ ProcessImpl::ProcessImpl(const Options& options, Envoy::Event::TimeSystem& time_
597597
Envoy::Network::Utility::getLocalAddress(Envoy::Network::Address::IpVersion::v4),
598598
"nighthawk_service_zone", "nighthawk_service_cluster", "nighthawk_service_node")),
599599
secret_manager_(config_tracker_), http_context_(store_root_.symbolTable()),
600+
600601
grpc_context_(store_root_.symbolTable()),
601602
singleton_manager_(std::make_unique<Envoy::Singleton::ManagerImpl>()),
602-
access_log_manager_(std::chrono::milliseconds(1000), *api_, *dispatcher_, access_log_lock_,
603+
access_log_manager_(std::chrono::milliseconds(1000), 0, *api_, *dispatcher_, access_log_lock_,
603604
store_root_),
604605
dns_resolver_factory_(dns_resolver_factory),
605606
typed_dns_resolver_config_(std::move(typed_dns_resolver_config)),
606607
init_watcher_("Nighthawk", []() {}),
608+
607609
admin_(Envoy::Network::Address::InstanceConstSharedPtr()),
608610
validation_context_(false, false, false, false), router_context_(store_root_.symbolTable()),
609611
envoy_options_(/* args = */ {"process_impl"}, HotRestartDisabled, spdlog::level::info) {

source/server/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,7 @@ bazel-bin/nighthawk_test_server [--stats-tag <string>] ...
183183
<string>] [--parent-shutdown-time-s
184184
<uint32_t>] [--drain-strategy <string>]
185185
[--drain-time-s <uint32_t>]
186+
[--file-flush-min-size-kb <uint32_t>]
186187
[--file-flush-interval-msec <uint32_t>]
187188
[--service-zone <string>]
188189
[--service-node <string>]
@@ -254,6 +255,9 @@ Hot restart drain sequence behaviour, one of 'gradual' (default) or
254255
--drain-time-s <uint32_t>
255256
Hot restart and LDS removal drain time in seconds
256257
258+
--file-flush-min-size-kb <uint32_t>
259+
Minimum size in KB for log flushing
260+
257261
--file-flush-interval-msec <uint32_t>
258262
Interval for log flushing in msec
259263

tools/code_format/config.yaml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,8 @@ paths:
9494
- source/extensions/common/matcher/ip_range_matcher.h
9595
- envoy/common/exception.h
9696
- source/common/protobuf/utility.h
97+
- source/common/rds/common/route_config_provider_manager_impl.h
98+
- source/common/rds/route_config_provider_manager.h
9799
# legacy core files which throw exceptions. We can add to this list but strongly prefer
98100
# StausOr where possible.
99101
- source/common/watchdog/abort_action_config.cc
@@ -105,25 +107,24 @@ paths:
105107
- source/common/network/address_impl.cc
106108
- source/common/formatter/http_specific_formatter.cc
107109
- source/common/formatter/stream_info_formatter.cc
108-
- source/common/formatter/substitution_formatter.h
109110
- source/common/formatter/substitution_formatter.cc
110111
- source/common/stats/tag_extractor_impl.cc
111112
- source/common/protobuf/yaml_utility.cc
112113
- source/common/protobuf/utility.cc
113114
- source/common/grpc/google_grpc_utils.cc
114115
- source/common/tcp_proxy/tcp_proxy.cc
115116
- source/common/listener_manager/lds_api.cc
116-
- source/common/rds/common/route_config_provider_manager_impl.h
117-
- source/common/rds/route_config_provider_manager.h
118117
- source/common/json/json_internal.cc
119118
- source/common/router/scoped_rds.cc
120119
- source/common/router/config_impl.cc
121120
- source/common/router/weighted_cluster_specifier.cc
122121
- source/common/router/scoped_config_impl.cc
123122
- source/common/common/utility.cc
123+
- source/common/secret/sds_api.h
124+
- source/common/secret/sds_api.cc
124125
- source/exe/stripped_main_base.cc
125126
- source/common/http/header_utility.cc
126-
- source/common/common/matchers.h
127+
- source/common/common/matchers.cc
127128
- source/server/options_impl.cc
128129
- source/server/config_validation/server.cc
129130
- source/server/admin/html/active_stats.js
@@ -134,7 +135,7 @@ paths:
134135
- source/common/upstream/health_discovery_service.cc
135136
- source/common/upstream/prod_cluster_info_factory.cc
136137
- source/common/secret/sds_api.cc
137-
- source/common/config/config_provider_impl.h
138+
- source/common/config/config_provider_impl.cc
138139
- source/common/grpc/google_grpc_creds_impl.cc
139140
- source/server/drain_manager_impl.cc
140141
- source/common/router/rds_impl.cc
@@ -143,6 +144,7 @@ paths:
143144
- source/common/event/file_event_impl.cc
144145
- source/common/http/async_client_impl.cc
145146
- source/common/grpc/google_async_client_impl.cc
147+
- source/common/tracing/tracer_config_impl.cc
146148
# Extensions can exempt entire directories but new extensions
147149
# points should ideally use StatusOr
148150
- source/extensions/access_loggers
@@ -315,6 +317,9 @@ paths:
315317
include:
316318
- api/bazel/cc_proto_descriptor_library/file_descriptor_generator.cc
317319
- contrib/config/source/kv_store_xds_delegate.cc
320+
- contrib/istio/filters/network/metadata_exchange/source/metadata_exchange.cc
321+
- contrib/istio/filters/network/metadata_exchange/test/metadata_exchange_test.cc
322+
- contrib/istio/filters/http/peer_metadata/source/peer_metadata.cc
318323
- source/common/protobuf/utility.h
319324
- source/common/protobuf/utility.cc
320325
- source/extensions/filters/http/grpc_json_transcoder/json_transcoder_filter.cc

tools/gen_compilation_database.py

Lines changed: 33 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,30 @@
1010
from pathlib import Path
1111

1212

13+
def get_bazel_startup_options():
14+
return shlex.split(os.environ.get("BAZEL_STARTUP_OPTION_LIST", ""))
15+
16+
17+
def get_bazel_build_options():
18+
return shlex.split(os.environ.get("BAZEL_BUILD_OPTION_LIST", "")) + [
19+
"--config=compdb",
20+
"--remote_download_outputs=all",
21+
]
22+
23+
24+
def get_output_base():
25+
bazel_startup_options = get_bazel_startup_options()
26+
bazel_options = get_bazel_build_options()
27+
return subprocess.check_output(
28+
["bazel", *bazel_startup_options, "info", *bazel_options, "output_base"]).decode().strip()
29+
30+
1331
# This method is equivalent to https://github.com/grailbio/bazel-compilation-database/blob/master/generate.py
1432
def generate_compilation_database(args):
1533
# We need to download all remote outputs for generated source code. This option lives here to override those
1634
# specified in bazelrc.
17-
bazel_startup_options = shlex.split(os.environ.get("BAZEL_STARTUP_OPTION_LIST", ""))
18-
bazel_options = shlex.split(os.environ.get("BAZEL_BUILD_OPTION_LIST", "")) + [
19-
"--config=compdb",
20-
"--remote_download_outputs=all",
21-
]
35+
bazel_startup_options = get_bazel_startup_options()
36+
bazel_options = get_bazel_build_options()
2237

2338
source_dir_targets = args.bazel_targets
2439
if args.exclude_contrib:
@@ -78,9 +93,14 @@ def is_compile_target(target, args):
7893
return True
7994

8095

81-
def modify_compile_command(target, args):
96+
def modify_compile_command(target, args, output_base):
8297
cc, options = target["command"].split(" ", 1)
8398

99+
# cc_wrapper.sh is a script of llvm_toolchain to wrap clang/clang++. Make sure to
100+
# use the one from output_base.
101+
if cc.endswith("cc_wrapper.sh"):
102+
cc = os.path.join(output_base, cc)
103+
84104
# Workaround for bazel added C++11 options, those doesn't affect build itself but
85105
# clang-tidy will misinterpret them.
86106
options = options.replace("-std=c++0x ", "")
@@ -91,10 +111,6 @@ def modify_compile_command(target, args):
91111
# old-style "-I".
92112
options = options.replace("-iquote ", "-I ")
93113

94-
if args.system_clang:
95-
if cc.find("clang"):
96-
cc = "clang++"
97-
98114
if is_header(target["file"]):
99115
options += " -Wno-pragma-once-outside-header -Wno-unused-const-variable"
100116
options += " -Wno-unused-function"
@@ -110,7 +126,13 @@ def modify_compile_command(target, args):
110126

111127

112128
def fix_compilation_database(args, db):
113-
db = [modify_compile_command(target, args) for target in db if is_compile_target(target, args)]
129+
output_base = get_output_base()
130+
131+
db = [
132+
modify_compile_command(target, args, output_base)
133+
for target in db
134+
if is_compile_target(target, args)
135+
]
114136

115137
with open("compile_commands.json", "w") as db_file:
116138
json.dump(db, db_file, indent=2)
@@ -124,12 +146,6 @@ def fix_compilation_database(args, db):
124146
parser.add_argument('--vscode', action='store_true')
125147
parser.add_argument('--include_all', action='store_true')
126148
parser.add_argument('--exclude_contrib', action='store_true')
127-
parser.add_argument(
128-
'--system-clang',
129-
action='store_true',
130-
help=
131-
'Use `clang++` instead of the bazel wrapper for commands. This may help if `clangd` cannot find/run the tools.'
132-
)
133149
parser.add_argument(
134150
'bazel_targets',
135151
nargs='*',

0 commit comments

Comments
 (0)