Clean up tool to take off resources from GCP (like Thanos) and save costs.
MercurieMart eCommerce
Crowd Sourced Emergency Reporting System
Final year project for FCSIT BUK using Django (PWA)
My Personal Website
flexisafDjangoPython/flexisaf 0
Flexisaf
issue commentgolang/go
cmd/go: handle space in path to C compiler
Backport issue(s) opened: #43859 (for 1.14), #43860 (for 1.15).
Remember to create the cherry-pick CL(s) as soon as the patch is submitted to master, according to https://golang.org/wiki/MinorReleases.
comment created time in a minute
issue openedgolang/go
cmd/go: handle space in path to C compiler [1.15 backport]
@jayconrod requested issue #43808 to be considered for backport to the next 1.15 minor release.
@gopherbot Please backport to 1.14 and 1.15. This was a regression.
created time in a minute
issue openedgolang/go
cmd/go: handle space in path to C compiler [1.14 backport]
@jayconrod requested issue #43808 to be considered for backport to the next 1.14 minor release.
@gopherbot Please backport to 1.14 and 1.15. This was a regression.
created time in a minute
issue commentgolang/go
cmd/go: handle space in path to C compiler
@gopherbot Please backport to 1.14 and 1.15. This was a regression.
comment created time in a minute
pull request commentcri-o/cri-o
Move unit tests to GitHub actions
/retest
comment created time in 3 minutes
startedflosch/pongo2
started time in 5 minutes
issue closedgolang/go
x/time/rate: Parallel reservations in Limiter.WaitN are served in parallel, violating rate limit
What version of Go are you using (go version
)?
go version go1.14.13 linux/amd64
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env
)?
$ lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 20.10
Release: 20.10
Codename: groovy
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/home/nbingham/go/bin"
GOCACHE="/home/nbingham/.cache/go-build"
GOENV="/home/nbingham/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOOS="linux"
GOPATH="/home/nbingham/go"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/opt/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build682703074=/tmp/go-build -gno-record-gcc-switches"
What did you do?
package main
import (
"context"
"fmt"
"sync"
"golang.org/x/time/rate"
"time"
)
func do_things(ctx context.Context, limiter *rate.Limiter, wg *sync.WaitGroup) {
for i := 0; i < 10; i++ {
limiter.WaitN(ctx, 100.0)
}
wg.Done()
}
func main() {
ctx := context.Background()
burst := 1000000000
limiter := rate.NewLimiter(rate.Limit(1000.0), burst)
limiter.AllowN(time.Now(), burst)
var wg sync.WaitGroup
startTime := time.Now()
for i := 0; i < 10; i++ {
wg.Add(1)
go do_things(ctx, limiter, &wg)
}
wg.Wait()
endTime := time.Now()
elapsed := endTime.Sub(startTime).Seconds()
fmt.Printf("elapsed: %f, rate: %f != %f\n", elapsed, 1000000/elapsed, 1000.0)
}
What did you expect to see?
The rate achieved by the 10 goroutines should not exceed the rate limit.
What did you see instead?
The overall rate is 10x what it should be.
elapsed: 10.000078, rate: 99999.223486 != 1000.000000
Suspected Cause
https://github.com/golang/time/blob/7e3f01d253248a0a5694eb5b7376dfea18b6397e/rate/rate.go#L345
r.timeToAct = now.Add(waitDuration)
should be
r.timeToAct = lim.lastEvent.Add(waitDuration)
closed time in 5 minutes
nbingham1issue commentgolang/go
x/time/rate: Parallel reservations in Limiter.WaitN are served in parallel, violating rate limit
I'm silly, it was a pointer issue in my other code.
comment created time in 5 minutes
Pull request review commentenvoyproxy/envoy
ext_proc: Implement response path for headers only
FilterHeadersStatus Filter::decodeHeaders(RequestHeaderMap& headers, bool end_of return FilterHeadersStatus::StopAllIterationAndWatermark; } +FilterHeadersStatus Filter::encodeHeaders(ResponseHeaderMap& headers, bool end_of_stream) {+ if (stream_closed_) {+ return FilterHeadersStatus::Continue;
FWIW I changed the filter to always call sendLocalReply on encoder_callbacks_, and now the extra call to encodeHeaders doesn't show up. So the only way we should get to encodeHeaders with stream_closed_ set to true is if either the remote processor closed the stream or if we closed it while ignoring an error.
comment created time in 5 minutes
pull request commentenvoyproxy/envoy
@antoniovicente ready to be reviewed now
comment created time in 6 minutes
push eventgolang/go
commit sha a2cef9b544708ecae983ed8836ee2425a28aab68
cmd/go: don't lookup the path for CC when invoking cgo Previously, if CC was a path without separators (like gcc or clang), we'd look it up in PATH in cmd/go using internal/execabs.LookPath, then pass the resolved path to cgo in CC. This caused a regression: if the directory in PATH containing CC has a space, cgo splits it and interprets it as multiple arguments. With this change, cmd/go no longer resolves CC before invoking cgo. cgo does the path lookup on each invocation. This reverts the security fix CL 284780, but that was redundant with the addition of internal/execabs (CL 955304), which still protects us. Fixes #43808 Updates #41400 Change-Id: I65d91a1e303856df8653881eb6e2e75a3bf95c49 Reviewed-on: https://go-review.googlesource.com/c/go/+/285873 Trust: Jay Conrod <jayconrod@google.com> Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
push time in 7 minutes
issue closedgolang/go
cmd/go: handle space in path to C compiler
<!-- Please answer these questions before submitting your issue. Thanks! -->
What version of Go are you using (go version
)?
<pre> $ go version go version go1.15.7 windows/amd64 </pre>
What operating system and processor architecture are you using (go env
)?
<details><summary><code>go env</code> Output</summary><br><pre> $ go env set GO111MODULE= set GOARCH=amd64 set GOBIN= set GOCACHE=C:\Users\andrew\AppData\Local\go-build set GOENV=C:\Users\andrew\AppData\Roaming\go\env set GOEXE=.exe set GOFLAGS= set GOHOSTARCH=amd64 set GOHOSTOS=windows set GOINSECURE= set GOMODCACHE=C:\Users\andrew\go\pkg\mod set GONOPROXY= set GONOSUMDB= set GOOS=windows set GOPATH=C:\Users\andrew\go set GOPRIVATE= set GOPROXY=https://proxy.golang.org,direct set GOROOT=c:\go set GOSUMDB=sum.golang.org set GOTMPDIR= set GOTOOLDIR=c:\go\pkg\tool\windows_amd64 set GCCGO=gccgo set AR=ar set CC=gcc set CXX=g++ set CGO_ENABLED=1 set GOMOD=V:\gsuneido\go.mod set CGO_CFLAGS=-g -O2 set CGO_CPPFLAGS= set CGO_CXXFLAGS=-g -O2 set CGO_FFLAGS=-g -O2 set CGO_LDFLAGS=-g -O2 set PKG_CONFIG=pkg-config set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\andrew\AppData\Local\Temp\go-build158816006=/tmp/go-build -gno-record-gcc-switches GOROOT/bin/go version: go version go1.15.7 windows/amd64 GOROOT/bin/go tool compile -V: compile version go1.15.7 gdb --version: GNU gdb (GDB) 8.1 </pre></details>
What did you do?
<pre>
go build -v -ldflags "-s -w -X 'main.builtDate=Jan 20 2021 11:17:27' -X main.mode=gui -H windowsgui" </pre>
What did you expect to see?
Successful build
What did you see instead?
<pre>
github.com/apmckinlay/gsuneido/builtin/goc
cgo: exec c:\Program: exec: "c:\Program": file does not exist </pre>
It builds successfully on 1.15.6 (and 1.16beta1)
I cut my path down to:
<pre> PATH=C:\WINDOWS\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32;C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin;C:\Go\bin;C:\Users\andrew\go\bin </pre>
In particular, mingw-w64 is in c:\program files I think that was the default, but I can't remember for sure.
Cmd finds g++ using this path
<pre>
g++ --version g++ (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0 </pre>
closed time in 7 minutes
apmckinlayPull request review commentenvoyproxy/envoy
+load(+ "//bazel:envoy_build_system.bzl",+ "envoy_cc_extension",+ "envoy_extension_package",+)++licenses(["notice"]) # Apache 2++envoy_extension_package()++envoy_cc_extension(+ name = "peer_buffer_lib",+ hdrs = ["peer_buffer.h"],+ security_posture = "unknown",+ status = "alpha",+ deps = [+ "//source/common/buffer:buffer_lib",+ "//source/common/buffer:watermark_buffer_lib",+ "//source/common/common:empty_string",+ ],+)++envoy_cc_extension(
add an empty config.h the status is wip. secruity_posture is "unknown".
What is the best secruity_posture indicating "don't use"?
comment created time in 8 minutes
issue commentgoharbor/harbor
OIDC users with admin role are not shown as "Admin"
why not fix it and make it show up as 'yes'?
comment created time in 9 minutes
Pull request review commentenvoyproxy/envoy
+#include "extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h"++#include <cstdint>++#include "common/common/assert.h"++#include "extensions/io_socket/user_space_io_socket/peer_buffer.h"++namespace Envoy {+namespace Extensions {+namespace IoSocket {+namespace UserSpaceIoSocket {++UserSpaceFileEventImpl::UserSpaceFileEventImpl(Event::Dispatcher& dispatcher, Event::FileReadyCb cb,
renamed and moved all trivial method to header file
comment created time in 12 minutes
Pull request review commentenvoyproxy/envoy
+#include "extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h"++#include <cstdint>++#include "common/common/assert.h"++#include "extensions/io_socket/user_space_io_socket/peer_buffer.h"++namespace Envoy {+namespace Extensions {+namespace IoSocket {+namespace UserSpaceIoSocket {++UserSpaceFileEventImpl::UserSpaceFileEventImpl(Event::Dispatcher& dispatcher, Event::FileReadyCb cb,+ uint32_t events, UserspaceIoHandle& io_source)+ : schedulable_(dispatcher.createSchedulableCallback([this, cb]() {+ auto ephemeral_events = event_listener_.getAndClearEphemeralEvents();+ ENVOY_LOG(trace, "User space event {} invokes callbacks on events = {}",+ static_cast<void*>(this), ephemeral_events);+ cb(ephemeral_events);+ })),+ io_source_(io_source) {+ setEnabled(events);+}++void EventListenerImpl::clearEphemeralEvents() {+ // Clear ephemeral events to align with FileEventImpl::setEnable().+ ephemeral_events_ = 0;+}++void EventListenerImpl::onEventActivated(uint32_t activated_events) {+ ephemeral_events_ |= activated_events;+}++void EventListenerImpl::setEnabledEvents(uint32_t enabled_events) {+ enabled_events_ = enabled_events;+}++void UserSpaceFileEventImpl::activate(uint32_t events) {+ // Only supported event types are set.+ ASSERT((events & (Event::FileReadyType::Read | Event::FileReadyType::Write |+ Event::FileReadyType::Closed)) == events);
Won't change:see activateIfEnabled()
comment created time in 14 minutes
PR opened vitessio/vitess
Signed-off-by: deepthi deepthi@planetscale.com
Description
In #7245 we removed a file (select_commerce_data.sql
) from the operator example. However, the README still points to the deleted file.
This PR fixes the README to use the correct path to the file.
In addition, the use
command in that file only worked for the local example, not the operator example.
That has also been fixed.
Related Issue(s)
#7245 A website PR will be created after 9.0 is released and we have archived the 9.0 docs.
Checklist
- [ ] Should this PR be backported?
- [x] Tests were added or are not required
- [ ] Documentation was added or is not required
Impacted Areas in Vitess
Components that this PR will affect:
- [ ] Query Serving
- [ ] VReplication
- [ ] Cluster Management
- [ ] Build
- [ ] VTAdmin
pr created time in 15 minutes
pull request commentetcd-io/etcd
Fix codecov collection (Part 2/2)
The PR (finally) works as expected. The first full coverage report for a long time is here: https://codecov.io/gh/etcd-io/etcd/tree/66255967e83c758f95613c89789a9aa426ce3c85
- It manages to execute all tests (so is faster)
- It has proper paths resolution, such that you can click any file to see the report
- If filters our generated files (like pb.go & pb.gw.go)
comment created time in 17 minutes
Pull request review commentenvoyproxy/envoy
scaled range timer: guard against queue deletion during timer fire
void ScaledRangeTimerManagerImpl::onQueueTimerFired(Queue& queue) { // Pop and trigger timers until the one at the front isn't supposed to have expired yet (given the // current scale factor).+ queue.processing_timers_ = true; while (!timers.empty() && computeTriggerTime(timers.front(), queue.duration_, scale_factor_) <= now) { auto item = std::move(queue.range_timers_.front()); queue.range_timers_.pop_front(); item.timer_.trigger(); }+ queue.processing_timers_ = false;
So processing_timers_ needs to be per queue since otherwise the queue not empty invariant would not hold if a timer from queue A removes a timer from queue B. It would be good to also cover that case in tests.
Also, is there code somewhere that verifies the invariant that all active queues are non-empty?
comment created time in 20 minutes
issue commentgolang/go
x/time/rate: Parallel reservations in Limiter.WaitN are served in parallel, violating rate limit
I don't see a problem here other than an error in your output: 1000000/elapsed
?
10 goroutines x 10 iterations x 100 = 10000
10000 / 10 seconds for program execution = 1000 rps == the configured rate limiter
comment created time in 21 minutes
push eventgraphql/graphql-js
commit sha 01663f61121b91f37ff9920d5b817cfbd413b9ed
Add @stream directive to specified directives
commit sha a0cef35c9ee6b9be51f6e44a9d57be6361ebaa76
Implement support for @stream directive
commit sha 637fefb36226424127b4a59025024f74dd821015
add defer/stream support for subscriptions (#7)
commit sha 1c4940a2f6be95e9a7183435045c69ad5f62c9dd
Return underlying AsyncIterators when execute result is returned (#2843)
push time in 22 minutes
Pull request review commentenvoyproxy/envoy
route config: Allow to configure direct response body size
TEST_F(RouteEntryMetadataMatchTest, ParsesMetadata) { } } +class RouteConfigurationDirectResponseBodyTest : public testing::Test, public ConfigImplTestBase {};++TEST_F(RouteConfigurationDirectResponseBodyTest, DirectResponseBodySizeTooLarge) {
Added a case above. And the cases of different data sources combination for setting body content is covered in RouteMatcherTest.DirectResponse
.
comment created time in 22 minutes
push eventvitessio/vitess
commit sha e24c3aed4afe07dec65463cb94f1cc089a3d0371
Define GetSchema RPC, run generators, add server impl stub Signed-off-by: Andrew Mason <amason@slack-corp.com>
commit sha 77fbde75582783d86e40091f86d96448d0670723
Add implementation, tests, and another test tmclient Signed-off-by: Andrew Mason <amason@slack-corp.com>
commit sha 6e261beed2e781dd331f92dbb02f6cd3e770c53a
Rewrite legacy vtctl GetSchema test to use packaged fake tmclient Signed-off-by: Andrew Mason <amason@slack-corp.com>
commit sha da1437c3edcd77c4d7252b812bc27cc8ab06303c
Implement CLI command, refactor legacy command to use new RPC Signed-off-by: Andrew Mason <amason@slack-corp.com>
commit sha 3ee391be2c149bf33ba4357cd9ece36d511b1042
Any test that needs a VtctldServer needs to override the protocol to the fake Signed-off-by: Andrew Mason <amason@slack-corp.com>
commit sha e34764d1df3b96ad1095bb7c1ed221130abc8bd6
Merge pull request #7346 from tinyspeck/am_vtctld_getschema [vtctld] Migrate GetSchema
push time in 23 minutes
PR merged vitessio/vitess
<!-- How to contribute: https://vitess.io/docs/contributing/ Please first make sure there is an open Issue to discuss the feature/fix suggested in this PR. If this is a new feature, please mark the Issue as "RFC". -->
<!-- if this PR is Work in Progress please create it as a Draft Pull Request -->
Description
<!-- A few sentences describing the overall goals of the pull request's commits. -->
This migrates the GetSchema
vtctl command to a vtctld rpc, and reimplements the old command to use the new RPC under the hood.
Example:
❯ vtctldclient --server "localhost:15999" GetSchema zone1-0000000100
{
"database_schema": "CREATE DATABASE /*!32312 IF NOT EXISTS*/ {{.DatabaseName}} /*!40100 DEFAULT CHARACTER SET utf8 */",
"table_definitions": [
{
"name": "corder",
"schema": "CREATE TABLE `corder` (\n `order_id` bigint(20) NOT NULL AUTO_INCREMENT,\n `customer_id` bigint(20) DEFAULT NULL,\n `sku` varbinary(128) DEFAULT NULL,\n `price` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`order_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8",
"columns": [
"order_id",
"customer_id",
"sku",
"price"
],
"primary_key_columns": [
"order_id"
],
"type": "BASE TABLE",
"data_length": "16384",
"row_count": "0",
"fields": [
{
"name": "order_id",
"type": "INT64",
"table": "corder",
"org_table": "corder",
"database": "vt_commerce",
"org_name": "order_id",
"column_length": 20,
"charset": 63,
"decimals": 0,
"flags": 49667,
"column_type": ""
},
{
"name": "customer_id",
"type": "INT64",
"table": "corder",
"org_table": "corder",
"database": "vt_commerce",
"org_name": "customer_id",
"column_length": 20,
"charset": 63,
"decimals": 0,
"flags": 32768,
"column_type": ""
},
{
"name": "sku",
"type": "VARBINARY",
"table": "corder",
"org_table": "corder",
"database": "vt_commerce",
"org_name": "sku",
"column_length": 128,
"charset": 63,
"decimals": 0,
"flags": 128,
"column_type": ""
},
{
"name": "price",
"type": "INT64",
"table": "corder",
"org_table": "corder",
"database": "vt_commerce",
"org_name": "price",
"column_length": 20,
"charset": 63,
"decimals": 0,
"flags": 32768,
"column_type": ""
}
]
},
{
"name": "customer",
"schema": "CREATE TABLE `customer` (\n `customer_id` bigint(20) NOT NULL AUTO_INCREMENT,\n `email` varbinary(128) DEFAULT NULL,\n PRIMARY KEY (`customer_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8",
"columns": [
"customer_id",
"email"
],
"primary_key_columns": [
"customer_id"
],
"type": "BASE TABLE",
"data_length": "16384",
"row_count": "0",
"fields": [
{
"name": "customer_id",
"type": "INT64",
"table": "customer",
"org_table": "customer",
"database": "vt_commerce",
"org_name": "customer_id",
"column_length": 20,
"charset": 63,
"decimals": 0,
"flags": 49667,
"column_type": ""
},
{
"name": "email",
"type": "VARBINARY",
"table": "customer",
"org_table": "customer",
"database": "vt_commerce",
"org_name": "email",
"column_length": 128,
"charset": 63,
"decimals": 0,
"flags": 128,
"column_type": ""
}
]
},
{
"name": "product",
"schema": "CREATE TABLE `product` (\n `sku` varbinary(128) NOT NULL,\n `description` varbinary(128) DEFAULT NULL,\n `price` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`sku`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8",
"columns": [
"sku",
"description",
"price"
],
"primary_key_columns": [
"sku"
],
"type": "BASE TABLE",
"data_length": "16384",
"row_count": "0",
"fields": [
{
"name": "sku",
"type": "VARBINARY",
"table": "product",
"org_table": "product",
"database": "vt_commerce",
"org_name": "sku",
"column_length": 128,
"charset": 63,
"decimals": 0,
"flags": 20611,
"column_type": ""
},
{
"name": "description",
"type": "VARBINARY",
"table": "product",
"org_table": "product",
"database": "vt_commerce",
"org_name": "description",
"column_length": 128,
"charset": 63,
"decimals": 0,
"flags": 128,
"column_type": ""
},
{
"name": "price",
"type": "INT64",
"table": "product",
"org_table": "product",
"database": "vt_commerce",
"org_name": "price",
"column_length": 20,
"charset": 63,
"decimals": 0,
"flags": 32768,
"column_type": ""
}
]
}
],
"version": "4a696261cc73c605a887ad6a547dce18"
}
❯ vtctldclient --server "localhost:15999" GetSchema -n zone1-0000000100
corder
customer
product
Related Issue(s)
<!-- List related issues and pull requests: -->
- (finally!) closes #7134
Checklist
- [ ] Should this PR be backported? No
- [x] Tests were added or are not required
- [x] Documentation was added or is not required
Deployment Notes
<!-- Notes regarding deployment of the contained body of work. These should note any db migrations, etc. -->
Impacted Areas in Vitess
Components that this PR will affect:
- [ ] Query Serving
- [ ] VReplication
- [ ] Cluster Management
- [ ] Build
- [ ] VTAdmin
pr closed time in 23 minutes
issue closedvitessio/vitess
Migrate simple read-only schema commands to vtctld gRPC API
Migrate the following server commands, with testing, and vtctldclient CLI commands:
- [ ] GetSchema
- [x] GetSrvVSchema
- [x] GetVSchema
closed time in 23 minutes
ajm188Pull request review commentenvoyproxy/envoy
scaled range timer: guard against queue deletion during timer fire
TEST_F(ScaledRangeTimerManagerTest, DisableWhileScalingMax) { simTime().advanceTimeAndRun(std::chrono::seconds(100), dispatcher_, Dispatcher::RunType::Block); } +TEST_F(ScaledRangeTimerManagerTest, DisableOtherTimerInCallbackEmptiesQueue) {+ ScaledRangeTimerManagerImpl manager(dispatcher_);++ MockFunction<TimerCb> callback1;+ auto timer1 =+ manager.createTimer(AbsoluteMinimum(std::chrono::seconds(5)), callback1.AsStdFunction());+ MockFunction<TimerCb> callback2;+ auto timer2 =+ manager.createTimer(AbsoluteMinimum(std::chrono::seconds(5)), callback2.AsStdFunction());++ timer1->enableTimer(std::chrono::seconds(100));+ timer2->enableTimer(std::chrono::seconds(100));
Either of those will work. The duration that matters is (max - min) which is (100 - 5) or (95 - 0) as adjusted.
comment created time in 23 minutes
Pull request review commentenvoyproxy/envoy
scaled range timer: guard against queue deletion during timer fire
TEST_F(ScaledRangeTimerManagerTest, DisableWhileScalingMax) { simTime().advanceTimeAndRun(std::chrono::seconds(100), dispatcher_, Dispatcher::RunType::Block); } +TEST_F(ScaledRangeTimerManagerTest, DisableOtherTimerInCallbackEmptiesQueue) {+ ScaledRangeTimerManagerImpl manager(dispatcher_);++ MockFunction<TimerCb> callback1;+ auto timer1 =+ manager.createTimer(AbsoluteMinimum(std::chrono::seconds(5)), callback1.AsStdFunction());+ MockFunction<TimerCb> callback2;+ auto timer2 =+ manager.createTimer(AbsoluteMinimum(std::chrono::seconds(5)), callback2.AsStdFunction());++ timer1->enableTimer(std::chrono::seconds(100));+ timer2->enableTimer(std::chrono::seconds(100));
We need both timers to end up in the same queues so their durations should be the same.
I think the solution is to do an advance of 5 seconds between the first enable and the second enable.
comment created time in 25 minutes
Pull request review commentenvoyproxy/envoy
route config: Allow to configure direct response body size
message RouteConfiguration { // option. Users may wish to override the default behavior in certain cases (for example when // using CDS with a static route table). google.protobuf.BoolValue validate_clusters = 7;++ // The maximum bytes of the response :ref:`direct response body+ // <envoy_api_field_config.route.v3.DirectResponseAction.body>` size. If not specified the default+ // is 4096.
Updated.
comment created time in 25 minutes
Pull request review commentenvoyproxy/envoy
route config: Allow to configure direct response body size
message RouteConfiguration { // option. Users may wish to override the default behavior in certain cases (for example when // using CDS with a static route table). google.protobuf.BoolValue validate_clusters = 7;++ // The maximum bytes of the response :ref:`direct response body+ // <envoy_api_field_config.route.v3.DirectResponseAction.body>` size. If not specified the default+ // is 4096.+ //+ // .. warning::+ //+ // The content of :ref:`direct response body+ // <envoy_api_field_config.route.v3.DirectResponseAction.body>` will be held in memory.
Tried to add more description on this. Please let me know if I put it wrongly.
comment created time in 25 minutes