Re: [PATCH] BUG/MINOR: sample: Rename SenderComID/TargetComID to SenderCompID/TargetCompID

2021-03-09 Thread Baptiste
On Wed, Mar 10, 2021 at 5:15 AM Daniel Corbett  wrote:

> Hello,
>
>
>
>
>
> The recently introduced Financial Information eXchange (FIX)
>
> converters have some hard coded tags based on the specification that
>
> were misspelled. Specifically, SenderComID and TargetComID should
>
> be SenderCompID and TargetCompID according to the specification [1][2].
>
>
>
> This patch updates all references, which includes the converters
>
> themselves, the regression test, and the documentation.
>
>
>
> [1] https://fiximate.fixtrading.org/en/FIX.5.0SP2_EP264/tag49.html
>
> [2] https://fiximate.fixtrading.org/en/FIX.5.0SP2_EP264/tag56.html
>
>
>
>
>
>
>
> Thanks,
>
> -- Daniel
>
>
>

Hi,

Thank you Daniel for reporting / fixing this.
The patch looks correct and may be applied.

Baptiste


[PATCH] BUG/MINOR: sample: Rename SenderComID/TargetComID to SenderCompID/TargetCompID

2021-03-09 Thread Daniel Corbett
Hello,

 

 

The recently introduced Financial Information eXchange (FIX)

converters have some hard coded tags based on the specification that

were misspelled. Specifically, SenderComID and TargetComID should

be SenderCompID and TargetCompID according to the specification [1][2].

 

This patch updates all references, which includes the converters

themselves, the regression test, and the documentation.

 

[1] https://fiximate.fixtrading.org/en/FIX.5.0SP2_EP264/tag49.html

[2] https://fiximate.fixtrading.org/en/FIX.5.0SP2_EP264/tag56.html

 

 

 

Thanks,

-- Daniel

 



0001-BUG-MINOR-sample-Rename-SenderComID-TargetComID-to-S.patch
Description: Binary data


stable-bot: Bugfixes waiting for a release 2.3 (4), 2.2 (1), 2.1 (55), 2.0 (45)

2021-03-09 Thread stable-bot
Hi,

This is a friendly bot that watches fixes pending for the next haproxy-stable 
release!  One such e-mail is sent periodically once patches are waiting in the 
last maintenance branch, and an ideal release date is computed based on the 
severity of these fixes and their merge date.  Responses to this mail must be 
sent to the mailing list.


Last release 2.3.6 was issued on 2021-03-03.  There are currently 4 patches 
in the queue cut down this way:
- 4 MINOR, first one merged on 2021-03-05

Thus the computed ideal release date for 2.3.7 would be 2021-04-02, which is in 
four weeks or less.

Last release 2.2.10 was issued on 2021-03-03.  There are currently 1 
patches in the queue cut down this way:
- 1 MEDIUM, first one merged on 2021-03-05

Thus the computed ideal release date for 2.2.11 would be 2021-04-04, which is 
in four weeks or less.

Last release 2.1.11 was issued on 2021-01-08.  There are currently 55 
patches in the queue cut down this way:
- 19 MEDIUM, first one merged on 2021-01-26
- 36 MINOR, first one merged on 2021-01-26

Thus the computed ideal release date for 2.1.12 would be 2021-03-23, which is 
in two weeks or less.

Last release 2.0.20 was issued on 2021-01-08.  There are currently 45 
patches in the queue cut down this way:
- 17 MEDIUM, first one merged on 2021-01-28
- 28 MINOR, first one merged on 2021-01-28

Thus the computed ideal release date for 2.0.21 would be 2021-03-25, which is 
in two weeks or less.

The current list of patches in the queue is:
 - 2.0, 2.1  - MEDIUM  : stats: add missing INF_BUILD_INFO 
definition
 - 2.0, 2.1  - MEDIUM  : resolvers: Reset server address and 
port for obselete SRV records
 - 2.0, 2.1  - MEDIUM  : proxy: use thread-safe stream killing 
on hard-stop
 - 2.1, 2.2  - MEDIUM  : lists: Avoid an infinite loop in 
MT_LIST_TRY_ADDQ().
 - 2.0, 2.1  - MEDIUM  : vars: make functions 
vars_get_by_{name,desc} thread-safe
 - 2.0   - MEDIUM  : mux-h2: Be sure to enter in demux loop 
even if dbuf is empty
 - 2.0, 2.1  - MEDIUM  : filters/htx: Fix data forwarding when 
payload length is unknown
 - 2.0, 2.1  - MEDIUM  : config: don't pick unset values from 
last defaults section
 - 2.0, 2.1  - MEDIUM  : mux-h2: handle remaining read0 cases
 - 2.0, 2.1  - MEDIUM  : mux-h2: do not quit the demux loop 
before setting END_REACHED
 - 2.0, 2.1  - MEDIUM  : resolvers: Reset address for 
unresolved servers
 - 2.1   - MEDIUM  : lists: Lock the element while we check 
if it is in a list.
 - 2.0, 2.1  - MEDIUM  : ssl: check a connection's status 
before computing a handshake
 - 2.0, 2.1  - MEDIUM  : mux-h1: Fix handling of responses to 
CONNECT other than 200-ok
 - 2.0, 2.1  - MEDIUM  : spoe: Kill applets if there are 
pending connections and nbthread > 1
 - 2.1   - MEDIUM  : ssl/cli: abort ssl cert is freeing the 
old store
 - 2.0, 2.1  - MEDIUM  : dns: Consider the fact that dns 
answers are case-insensitive
 - 2.0, 2.1  - MEDIUM  : mux-h2: fix read0 handling on partial 
frames
 - 2.0, 2.1  - MEDIUM  : mux-h1: Always set CS_FL_EOI for 
response in MSG_DONE state
 - 2.0, 2.1  - MEDIUM  : cli/shutdown sessions: make it 
thread-safe
 - 2.0, 2.1  - MINOR   : sample: Always consider zero size 
string samples as unsafe
 - 2.0, 2.1  - MINOR   : sample: check alloc_trash_chunk return 
value in concat()
 - 2.1   - MINOR   : http-ana: Don't increment HTTP error 
counter on internal errors
 - 2.1   - MINOR   : init: enforce strict-limits when using 
master-worker
 - 2.0, 2.1  - MINOR   : cfgparse: do not mention "addr:port" 
as supported on proxy lines
 - 2.0, 2.1  - MINOR   : sample: secure convs that accept 
base64 string and var name as args
 - 2.0, 2.1  - MINOR   : peers: Wrong "new_conn" value for 
"show peers" CLI command.
 - 2.3   - MINOR   : hlua: Don't strip last non-LWS char in 
hlua_pushstrippedstring()
 - 2.0, 2.1  - MINOR   : server: Remove RMAINT from admin state 
when loading server state
 - 2.0, 2.1  - MINOR   : server: Don't call fopen() with 
server-state filepath set to NULL
 - 2.0, 2.1  - MINOR   : tools: Fix a memory leak on error path 
in parse_dotted_uints()
 - 2.3   - MINOR   : backend: fix condition for reuse on 
mode HTTP
 - 2.0, 2.1  - MINOR   : connection: Use the client's dst 
family for adressless servers
 - 2.0, 2.1  - MINOR   : mux-h1: Immediately report H1C errors 
from h1_snd_buf()
 - 2.0, 2.1  - MINOR   : server: re-align 

BYOB (Bring Your Own Board)

2021-03-09 Thread Stefanie Stark, CNC
BYOB (Bring Your Own Board!)

"Join us to receive new major gifts funding for your important mission."
~ Stefanie Stark

(LAST WEEK FOR ATLANTA, GA)

VISIT HERE  or
press PLAY BUTTON below for 60 Second Video Overview 

"Major Gifts Ramp-Up is the single greatest virtual conference event
I've experienced since the start of the pandemic!" ~ Deanna Woodall,
YWCA Quad-Cities

https://jimmylarose.lt.acemlnd.com/Prod/link-tracker?redirectUrl=aHR0cHMlM0ElMkYlMkZub25wcm9maXRjb25mZXJlbmNlcy5vcmclMkZtYWpvci1naWZ0cy1yYW1wLXVwJTJG=26605550=jimmylarose%2Eactivehosted%2Ecom=vbeBh1HJZ6KtT6pdCg2Rk3b7ImIKGlCdLGgtNBedJm0%3D=b4e69d94bf077ab3e7944b1f14cd3206=42A136A39A252
 

 

Dear Colleagues in Service,

Calamities and major downturns in the economy occur every decade. While
COVID-19 is unique, what's not unique is how to make it through a
crisis. In order for your charity to navigate these unprecedented times
and be stronger in the future join us for Major Gifts Ramp-Up. As it
turns out Major Gifts Fundraising is more important than ever and will
be the single greatest revenue generator your organization can rely on
during uncertain times. We've raised millions over the last ninety days
for charities across the spectrum.

"Major Gifts Ramp-Up Saved our Nonprofit from COVID-19. We've been
privileged to turn down PPP & EIDL so other nonprofits could access the
funds they need to make it through the pandemic." ~ Brent Bohanan,
Habitat for Humanity

Simply put, money is oxygen. Without it you can't breathe. Is your
organization on life support? Are you receiving the air you need to
survive the social and economic crisis we're now facing? If you're a
nonprofit executive board member, development officer, pastor, volunteer
or marketing director it's time for you to RE-IMAGINE PHILANTHROPY in
ways that transform both you and your important mission.

If you're ready to flourish before, during and after COVID-19 Major
Gifts Ramp-Up is the answer. Learn how to use your existing staff and
resources to grow your organization by simply changing the way you
function each day. Go from business as usual to fully funded revenues
streams that will not only raise money for your immediate needs, but
will install a permanent culture of philanthropy within your nonprofit.
Here's what needs to be in place.

1. At least six months operating cash reserves.
2. An unrestricted endowment comprised of at least $500,000.
3. Ongoing, deep relationships with at least 100 major donors.
4. An agile Board made up of only five to seven experts.
5. A robust Case for Support that describes a heroic mission of scale to
impact your community.
6. A five year plan for growing impact and revenue.

VISIT HERE or press "PLAY BUTTON" above

Following the Great Recession of 2008, the founders of NANOE conducted a
study of 485 nonprofits that received capacity building grants during
the recession. Only 15% of these organization were able to leverage that
funding to grow their impact and revenue.

When we studied those 15% who were successful, we learned the following:

1. They built more capacity over a five year period than those
nonprofits who indicated they stagnated or declined during the same time
period.
2. They grew budget, programs & donors, despite the recession.
3. They grew their nonprofits regardless of the size/involvement of
their board.
4. They externalized their mission for the purpose of fundraising.
5. They developed board members who evaluated the chief executive and
promoted the goals and values of the CEO.

What was the common factor in the success of these nonprofits? A strong
CEO or Executive Director who planned for the future and viewed
fundraising as a top priority. Strong leaders understand that
philanthropy is essential for your nonprofit's success and that 80% of
philanthropy in the U.S. is from individuals and families.

Don't let anyone tell you now is not the time to fund raise. Don't
let anyone tell you things have to stay the same. Don't let a few
panicked Board members hijack your nonprofit's future. The future of
your organization will be determined by your strong staff leadership
(not by your Board or political leaders). Now is the time to act!

Major Gifts Ramp-Up Live is not nonprofit management 101! Meet the
fundraising veterans who've raised millions. Join us to learn how you
can build the financial capacity you need to secure your future. This
virtual event will challenge everything you believe about the raising of
money, and will make five, six and seven figure major gifts available to
your nonprofit in the shortest period of time possible.

Over 17,000 nonprofit executives from across the U.S. have already
attended. THEY LOVE THESE EVENTS (and so do their boards!) Why? Because
this fast-paced and provocative training have been customized for the
audience in attendance. Prepare to hear the truth in ways you've never
experienced before. You'll learn from the masters who defied convention
and challenged the false thinking that 

Workshops on Bid Writing and 14 Other Topics

2021-03-09 Thread NFP Workshops



NFP WORKSHOPS
Affordable Training Courses

18 Blake Street, York YO1 8QG 01133 280988




Bid Writing: The Basics


 Do you know the most common reasons for rejection? Are you gathering the right 
evidence? Are you making the right arguments? Are you using the right 
terminology? Are your numbers right? Are you learning from rejections? 

Are you assembling the right documents? Do you know how to create a clear and 
concise standard funding bid? Are you communicating with people or just 
excluding them? Do you know your own organisation well enough? 

Are you thinking through your projects carefully enough? Do you know enough 
about your competitors? Are you answering the questions funders will ask 
themselves about your application? Are you submitting applications correctly?
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95.00
MON 08 MAR 2021
BOOKING LINK
MON 22 MAR 2021
BOOKING LINK
MON 12 APR 2021
BOOKING LINK
MON 26 APR 2021
BOOKING LINK




Bid Writing: Advanced

 Are you applying to the right trusts? Are you applying to enough trusts? Are 
you asking for the right amount of money? Are you applying in the right ways? 
Are your projects the most fundable projects? 

Are you carrying out trust fundraising in a professional way? Are you 
delegating enough work? Are you highly productive or just very busy? Are you 
looking for trusts in all the right places? 

How do you compare with your competitors for funding? Is the rest of your 
fundraising hampering your bids to trusts? Do you understand what trusts are 
ideally looking for?
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95.00
TUE 09 MAR 2021
BOOKING LINK
TUE 23 MAR 2021
BOOKING LINK
TUE 13 APR 2021
BOOKING LINK
TUE 27 APR 2021
BOOKING LINK



Recruiting and Managing Volunteers
 Where do you find volunteers? How do you find the right volunteers? How do you 
attract volunteers? How do you run volunteer recruitment events? How do you 
interview volunteers? 

How do you train volunteers? How do you motivate volunteers? How do you involve 
volunteers? How do you recognise volunteers? How do you recognise problems with 
volunteers? How do you learn from volunteer problems? 

How do you retain volunteers? How do you manage volunteers? What about 
volunteers and your own staff? What about younger, older and employee 
volunteers?

ONLINE VIA ZOOM
10.00 TO 12.30
COST £95
WED 10 MAR 2021
BOOKING LINK
THU 13 MAY 2021
BOOKING LINK



Legacy Fundraising 

Why do people make legacy gifts? What are the ethical issues? What are the 
regulations? What are the tax issues? What are the statistics? What are the 
trends? How can we integrate legacy fundraising into our other fundraising? 

What are the sources for research? How should we set a budget? How should we 
evaluate our results? How should we forecast likely income? Should we use 
consultants? How should we build a case for support? 

What media and marketing channels should we use? What about in memory giving? 
How should we setup our admin systems? What are the common problems & pitfalls?
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95
THU 25 MAR 2021
BOOKING LINK
THU 27 MAY 2021
BOOKING LINK



Major Donor Fundraising

 Major Donor Characteristics, Motivations and Requirements. Researching and 
Screening Major Donors. Encouraging, Involving and Retaining Major Donors.

Building Relationships with Major Donors. Major Donor Events and Activities. 
Setting Up Major Donor Clubs. Asking For Major Gifts. Looking After and 
Reporting Back to Major Donors.  
 
Delivering on Major Donor Expectations. Showing Your Appreciation to Major 
Donors. Fundraising Budgets and Committees.   
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95
WED 14 APR 2021
BOOKING LINK
THU 10 JUN 2021
BOOKING LINK



Corporate Fundraising 

Who are these companies? Why do they get involved? What do they like? What can 
you get from them? What can you offer them? What are the differences between 
donations, sponsorship, advertising and cause related marketing? 

Are companies just like trusts? How do you find these companies? How do you 
research them? How do you contact them? How do you pitch to them? How do you 
negotiate with them? 

When should you say no? How do you draft contracts? How do you manage the 
relationships? What could go wrong? What are the tax issues? What are the legal 
considerations?
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95
THU 29 APR 2021
BOOKING LINK
THU 24 JUN 2021
BOOKING LINK



Being A Better Trustee 

Why should I become a trustee? How do I become a trustee? What should I expect? 
How can I best understand the organisation? How can I best understand the staff 
and the volunteers? How can I best understand about finance? Will I be 
accountable? Will I be liable? Will I be on committees? Will I have a code of 
conduct? How will I measure my performance? How will I measure my 
effectiveness? How will others assess my performance and effectiveness? Will I 
be able to make a difference?
ONLINE VIA ZOOM
10.00 TO 12.30
COST £95  
FRI 12 MAR 2021
BOOKING 

Re: [PATCH 1/1] MINOR: build: force CC to set a return code when probing options

2021-03-09 Thread Willy Tarreau
Hi Bertrand,

On Sat, Mar 06, 2021 at 08:25:46PM +, Bertrand Jacquin wrote:
> gcc returns non zero code if an option is not supported (tested
> from 6.5 to 10.2).
> 
>   $ gcc -Wfoobar -E -xc - -o /dev/null < /dev/null > /dev/null 2>&1 ; echo $?
>   1
> 
> clang always return 0 if an option in not recognized unless
> -Werror is also passed, preventing a correct probing of options
> supported by the compiler (tested with clang 6.0.1 to 11.1.0).
> 
>   $ clang -Wfoobar -E -xc - -o /dev/null < /dev/null > /dev/null 2>&1 ; echo 
> $?
>   0
>   $ clang -Werror -Wfoobar -E -xc - -o /dev/null < /dev/null > /dev/null 2>&1 
> ; echo $?
>   1

That's interesting, because we've constantly been complaining about gcc
not accepting random -Wfoobar and requiring runtime discovery, but on the
other hand, not having any info about support is a problem as well. I can
indeed imagine that we could enable -Werror=some-option-about-commandline
but that would require to detect it, so I think that -Werror indeed remains
an acceptable solution here.

> Please note today this is not visible since clang 11 exit with SIGABRT
> or with return code 1 on older version due to bad file descriptor from
> file descriptor handling
> 
>   $ clang -Wfoobar -E -xc - -o /dev/null < /dev/null 2>&0 ; echo $?
>   Aborted (core dumped)
>   134

This is particularly ugly, I can imagine how annoying it can become if
a tens of cores are produced upon every single haproxy build. Let's hope
they quickly fix it.

Thanks for the explanation, I'm taking your patch!
Willy



Re: [PATCH 1/5] CLEANUP: connection: Use `VAR_ARRAY` in `struct tlv` definition

2021-03-09 Thread Willy Tarreau
All the series now applied after reviewing, thanks for doing this, Tim!
If you're interested in such "ist" conversions, there are plenty of
header names, cookie names, cookie values and so on that are always used
as pairs of ptr+len in struct proxy and struct server. For example, I do
have some memories of "cookie_str" in mind, that could give you an entry
point for this horrors museum. A few of them still do not have a length
and are still recalculated at use time. All of this is very historic
(should I even say prehistoric?) and never benefitted from the possible
cleanups.

This may require to reorder some struct fields because at the moment the
lengths are stored on an integer, which is usually padded by placing
another one next to it. Turning them to ist will result in a larger
size_t but you'll then have properly aligned structs which make the whole
thing easier to keep aligned.

Thanks!
Willy



Re: [2.2.9] 100% CPU usage

2021-03-09 Thread Willy Tarreau
On Tue, Mar 09, 2021 at 09:04:43AM +0100, Maciej Zdeb wrote:
> Hi,
> 
> After applying the patch, the issue did not occur, however I'm still not
> sure it is fixed. Unfortunately I don't have a reliable way to trigger it.

OK. If it's related, it's very possible that some of the issues we've
identified there recently are at least responsible for a part of the
problem. In short, if the CPUs are too fair, some contention can last
long because two steps are required to complete such operations. We've
added calls to cpu_relax() in 2.4 and some are queued in 2.3 already.
After a while, some of them should also be backported to 2.2 as they
significantly improved the situation with many threads.

> pt., 5 mar 2021 o 22:07 Willy Tarreau  napisal(a):
> 
> > Note, before 2.4, a single thread can execute Lua scripts at once,
> > with the others waiting behind, and if the Lua load is important, maybe
> > this can happen (but I've never experienced it yet, and the premption
> > interval is short enough not to cause issues in theory).
> >
> I'm not sure if related but during every reload, for a couple seconds all
> 12 threads on OLD pid are using 100% cpu and then one after one core return
> to normal usage, finally the old haproxy process exits. I have no idea why
> it is behaving like that.

It could be related but it's hard to tell. It is also possible that
for any reason the old threads constantly believe they have something
to do, for example a health check that doesn't get stopped and that
keep ringing.

> > Maciej, if this happens often,
> > would you be interested in running one machine on 2.4-dev11 ?
> 
> It is a very rare issue and of course it occurs only in production
> environment. :(

Obviously!

> I'm very willing to test the 2.4 version, especially with
> that tasty lua optimization for multiple threads, but I can't do it on
> production until it's stable.

This makes sense. We'll try to issue 2.3 with some thread fixes this
week, maybe it will be a possible step for you then.

Cheers,
Willy



Re: [2.2.9] 100% CPU usage

2021-03-09 Thread Maciej Zdeb
Hi,

After applying the patch, the issue did not occur, however I'm still not
sure it is fixed. Unfortunately I don't have a reliable way to trigger it.

pt., 5 mar 2021 o 22:07 Willy Tarreau  napisał(a):

> Note, before 2.4, a single thread can execute Lua scripts at once,
> with the others waiting behind, and if the Lua load is important, maybe
> this can happen (but I've never experienced it yet, and the premption
> interval is short enough not to cause issues in theory).
>
I'm not sure if related but during every reload, for a couple seconds all
12 threads on OLD pid are using 100% cpu and then one after one core return
to normal usage, finally the old haproxy process exits. I have no idea why
it is behaving like that.


> Maciej, if this happens often,
> would you be interested in running one machine on 2.4-dev11 ?

It is a very rare issue and of course it occurs only in production
environment. :( I'm very willing to test the 2.4 version, especially with
that tasty lua optimization for multiple threads, but I can't do it on
production until it's stable.


> We'd
> need to have a quick look at your config (off-list if needed) to
> figure what Lua parts could run in multi-thread.
>
I'll provide configs (off the list) shortly!

Kind regards,