Commitfest 2019-07, the first of five* for PostgreSQL 13

Started by Thomas Munroover 6 years ago24 messages
#1Thomas Munro
thomas.munro@gmail.com

Hello hackers,

The first Commitfest[1]https://wiki.postgresql.org/wiki/CommitFest for the next major release of PostgreSQL
begins in a few days, and runs for the month of July. There are 218
patches registered[2]https://commitfest.postgresql.org/23/ right now, and I'm sure we'll see some more at
the last minute. PostgreSQL 13 needs you!

I volunteered to be the CF manager for this one, and Jonathan Katz
kindly offered to help me[3]https://wiki.postgresql.org/wiki/PgCon_2019_Developer_Meeting#11:10_-_11:25.09Commitfest_Management. Assuming there are no objections and we
land this coveted role (I didn't see any other volunteers for CF1?), I
plan to start doing the sort of stuff listed on
https://wiki.postgresql.org/wiki/Running_a_CommitFest shortly, and
will then provide updates on this thread. (Clearly some of that is
out of date WRT the "new" Commitfest app and process, so if there's a
better list somewhere please let me know; if not, perhaps one of our
tasks should be to update that).

Either way, please make sure your patches are in, and start signing up
to review things that you're interested in or can help with or want to
learn about. If you've submitted patches, it'd be ideal if you could
try to review patches of similar size/complexity. Every review helps:
whether proof-reading or copy-editing the documentation and comments
(or noting that they are missing), finding low level C programming
errors, providing high level architectural review, comparing against
the SQL standard or other relevant standards or products, seeing if
appropriate regression tests are included, manual testing or ...
anything in between. Testing might include functionality testing
(does it work as described, do all the supplied tests pass?),
performance/scalability testing, portability testing (eg does it work
on your OS?), checking with tools like valgrind, feature combination
checks (are there hidden problems when combined with partitions,
serializable, replication, triggers, ...?) and generally hunting for
weird edge cases the author didn't think of[4]"A QA engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 99999999999 beers. Orders a lizard. Orders -1 beers. Orders a ueicbksjdhd. First real customer walks in and asks where the bathroom is. The bar bursts into flames, killing everyone." -Brenan Keller.

A couple of notes for new players: We don't bite, and your
contributions are very welcome. It's OK to review things that others
are already reviewing. If you are interested in a patch and don't
know how to get started reviewing it or how to get it up and running
on your system, just ask and someone will be happy to point to or
provide more instructions. You'll need to subscribe to this mailing
list if you haven't already. If the thread for a CF entry began
before you were subscribed, you might be able to download the whole
thread as a mailbox file and import it into your email client so that
you can reply to the thread; if you can't do that (it can be
tricky/impossible on some email clients), ping me and I'll CC you so
you can reply.

*probably

[1]: https://wiki.postgresql.org/wiki/CommitFest
[2]: https://commitfest.postgresql.org/23/
[3]: https://wiki.postgresql.org/wiki/PgCon_2019_Developer_Meeting#11:10_-_11:25.09Commitfest_Management
[4]: "A QA engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 99999999999 beers. Orders a lizard. Orders -1 beers. Orders a ueicbksjdhd. First real customer walks in and asks where the bathroom is. The bar bursts into flames, killing everyone." -Brenan Keller
Orders 99999999999 beers. Orders a lizard. Orders -1 beers. Orders a
ueicbksjdhd. First real customer walks in and asks where the bathroom
is. The bar bursts into flames, killing everyone." -Brenan Keller

--
Thomas Munro
https://enterprisedb.com

#2Fabien COELHO
coelho@cri.ensmp.fr
In reply to: Thomas Munro (#1)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello Thomas,

The first Commitfest[1] for the next major release of PostgreSQL
begins in a few days, and runs for the month of July.

There are 218 patches registered[2] right now,

ISTM that there are a couple of duplicates: 2084 & 2150, 2119 & 2180?

I volunteered to be the CF manager for this one, and Jonathan Katz
kindly offered to help me[3].

Thanks for volunteering, and good luck with this task!

--
Fabien.

In reply to: Thomas Munro (#1)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello

Is this commitfest for small patches and bugfixes, similar to 2018-07 one in last year?

regards, Sergei

#4Peter Eisentraut
peter.eisentraut@2ndquadrant.com
In reply to: Sergei Kornilov (#3)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On 2019-06-28 09:58, Sergei Kornilov wrote:

Is this commitfest for small patches and bugfixes, similar to 2018-07 one in last year?

There are no restrictions about what can be submitted to this commit
fest. Review early and review often!

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#5Stephen Frost
sfrost@snowman.net
In reply to: Thomas Munro (#1)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Greetings,

* Thomas Munro (thomas.munro@gmail.com) wrote:

If the thread for a CF entry began
before you were subscribed, you might be able to download the whole
thread as a mailbox file and import it into your email client so that
you can reply to the thread; if you can't do that (it can be
tricky/impossible on some email clients), ping me and I'll CC you so
you can reply.

shhhhh, don't look now, but there might be a "Resend email" button in
the archives now that you can click to have an email sent to you...

Note that you have to be logged in, and the email will go to the email
address that you're logging into the community auth system with.

(thank you Magnus)

Thanks!

Stephen

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Stephen Frost (#5)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Stephen Frost <sfrost@snowman.net> writes:

shhhhh, don't look now, but there might be a "Resend email" button in
the archives now that you can click to have an email sent to you...

Oooh, lovely.

(thank you Magnus)

+many

regards, tom lane

#7David Steele
david@pgmasters.net
In reply to: Tom Lane (#6)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On 6/28/19 1:15 PM, Tom Lane wrote:

Stephen Frost <sfrost@snowman.net> writes:

shhhhh, don't look now, but there might be a "Resend email" button in
the archives now that you can click to have an email sent to you...

Oooh, lovely.

(thank you Magnus)

+many

Thank you, Magnus, this is really helpful!

--
-David
david@pgmasters.net

#8Thomas Munro
thomas.munro@gmail.com
In reply to: David Steele (#7)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Sat, Jun 29, 2019 at 9:47 AM David Steele <david@pgmasters.net> wrote:

On 6/28/19 1:15 PM, Tom Lane wrote:

Stephen Frost <sfrost@snowman.net> writes:

shhhhh, don't look now, but there might be a "Resend email" button in
the archives now that you can click to have an email sent to you...

Oooh, lovely.

(thank you Magnus)

+many

Thank you, Magnus, this is really helpful!

Thanks, that's great news. So, just to recap for new people who want
to get involved in testing and reviewing, the steps are:

1. Subscribe to the pgsql-hackers mailing list, starting here:
https://lists.postgresql.org/
2. In the process of doing that, you'll create a PostgreSQL community account.
3. Choose a patch you're interested in from
https://commitfest.postgresql.org/23/ , and possibly add yourself as a
reviewer.
4. Follow the link to the email thread.
5. Click on the shiny new "Resend email" link on the latest email in
the thread to receive a copy, if you didn't have it already.
6. You can reply-all to that email to join the discussion.

(As with all busy mailing lists, you'll probably want to set up
filtering to put pgsql-hackers messages into a seperate folder/label
due to volume.)

--
Thomas Munro
https://enterprisedb.com

#9Magnus Hagander
magnus@hagander.net
In reply to: Thomas Munro (#8)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Sat, Jun 29, 2019 at 10:05 AM Thomas Munro <thomas.munro@gmail.com>
wrote:

On Sat, Jun 29, 2019 at 9:47 AM David Steele <david@pgmasters.net> wrote:

On 6/28/19 1:15 PM, Tom Lane wrote:

Stephen Frost <sfrost@snowman.net> writes:

shhhhh, don't look now, but there might be a "Resend email" button in
the archives now that you can click to have an email sent to you...

Oooh, lovely.

(thank you Magnus)

+many

Thank you, Magnus, this is really helpful!

Thanks, that's great news. So, just to recap for new people who want
to get involved in testing and reviewing, the steps are:

1. Subscribe to the pgsql-hackers mailing list, starting here:
https://lists.postgresql.org/
2. In the process of doing that, you'll create a PostgreSQL community
account.
3. Choose a patch you're interested in from
https://commitfest.postgresql.org/23/ , and possibly add yourself as a
reviewer.
4. Follow the link to the email thread.
5. Click on the shiny new "Resend email" link on the latest email in
the thread to receive a copy, if you didn't have it already.
6. You can reply-all to that email to join the discussion.

(As with all busy mailing lists, you'll probably want to set up
filtering to put pgsql-hackers messages into a seperate folder/label
due to volume.)

It might also be worth noticing that for those who only care about
following one thread, you can subscribe to the pgsql-hackers list and then
disable mail delivery. That way you can still post on the thread, and the
PostgreSQL convention to use "reply all" on emails and directly CC all
participants will ensure you get a copy of any replies. This does assume
you either started the thread or at some point interacted with it of course
-- otherwise your email address wouldn't be in the CC list.

--
Magnus Hagander
Me: https://www.hagander.net/ <http://www.hagander.net/&gt;
Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/&gt;

#10Tsunakawa, Takayuki
tsunakawa.takay@jp.fujitsu.com
In reply to: Stephen Frost (#5)
RE: Commitfest 2019-07, the first of five* for PostgreSQL 13

From: Stephen Frost [mailto:sfrost@snowman.net]

shhhhh, don't look now, but there might be a "Resend email" button in the
archives now that you can click to have an email sent to you...

Note that you have to be logged in, and the email will go to the email address
that you're logging into the community auth system with.

(thank you Magnus)

Thank you so much, Magnus. This is very convenient. I'm forced to use Outlook at work, which doesn't allow to reply to a downloaded email. Your help eliminates the need to save all emails.

Regards
Takayuki Tsunakawa

#11Thomas Munro
thomas.munro@gmail.com
In reply to: Tsunakawa, Takayuki (#10)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello hackers,

It's now July everywhere on Earth, so I marked CF 2019-07 as
in-progress, and 2019-09 as open for bumping patches into. I pinged
most of the "Needs Review" threads that don't apply and will do a few
more tomorrow, and then I'll try to chase patches that fail on CI, and
then see what I can do to highlight some entries that really need
review/discussion. I'll do end-of-week status reports.

--
Thomas Munro
https://enterprisedb.com

#12Thomas Munro
thomas.munro@gmail.com
In reply to: Thomas Munro (#11)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Tue, Jul 2, 2019 at 12:20 AM Thomas Munro <thomas.munro@gmail.com> wrote:

It's now July everywhere on Earth, so I marked CF 2019-07 as
in-progress, and 2019-09 as open for bumping patches into. I pinged
most of the "Needs Review" threads that don't apply and will do a few
more tomorrow, and then I'll try to chase patches that fail on CI, and
then see what I can do to highlight some entries that really need
review/discussion. I'll do end-of-week status reports.

Hello hackers,

Here's a quick status report after the first week (I think only about
10 commits happened during the week, the rest were pre-CF activity):

status | count
------------------------+-------
Committed | 32
Moved to next CF | 5
Needs review | 146
Ready for Committer | 7
Rejected | 2
Returned with feedback | 2
Waiting on Author | 29
Withdrawn | 8

I wondered about reporting on the number of entries that didn't yet
have reviewers signed up, but then I noticed that there isn't a very
good correlation between signed up reviewers and reviews. So instead,
here is a list of twenty "Needs review" entries that have gone a long
time without communication on the thread. In some cases there has
been plenty of review, so it's time to make decisions. In others,
there has been none at all.

If you're having trouble choosing something to review, please pick one
of these and help us figure out how to proceed.

2026 | Spurious "apparent wraparound" via Simpl | {"Noah Misch"}
2003 | Fix Deadlock Issue in Single User Mode W | {"Chengchao Yu"}
1796 | documenting signal handling with readme | {"Chris Travers"}
2053 | NOTIFY options + COLLAPSE (make deduplic | {"Filip Rembiałkowski"}
1974 | pg_stat_statements should notice FOR UPD | {"Andrew Gierth"}
2061 | [WIP] Show a human-readable n_distinct i | {"Maxence Ahlouche"}
2077 | fix pgbench -R hanging on pg11 | {"Fabien Coelho"}
2062 | Unaccent extension python script Issue i | {"Hugh
Ranalli","Ramanarayana M"}
1769 | libpq host/hostaddr consistency | {"Fabien Coelho"}
2060 | suppress errors thrown by to_reg*() | {"takuma hoshiai"}
2078 | Compile from source using latest Microso | {"Peifeng Qiu"}
2081 | parse time support function | {"Pavel Stehule"}
1800 | amcheck verification for GiST | {"Andrey Borodin"}
2018 | pg_basebackup to adjust existing data di | {"Haribabu Kommi"}
2095 | pg_upgrade version and path checking | {"Daniel Gustafsson"}
2044 | propagating replica identity to partitio | {"Álvaro Herrera"}
2090 | pgbench - implement strict TPC-B benchma | {"Fabien Coelho"}
2088 | Contribution to Perldoc for TestLib modu | {"Ramanarayana M"}
2087 | Problem during Windows service start | {"Ramanarayana M"}
2093 | Trigger autovacuum on tuple insertion | {"Darafei Praliaskouski"}

If you have submitted a patch and it's in "Waiting for author" state,
please aim to get it to "Needs review" state soon if you can, as
that's where people are most likely to be looking for things to
review.

I have pinged most threads that are in "Needs review" state and don't
apply, compile warning-free, or pass check-world. I'll do some more
of that sort of thing, and I'll highlight a different set of patches
next week.

--
Thomas Munro
https://enterprisedb.com

#13Thomas Munro
thomas.munro@gmail.com
In reply to: Thomas Munro (#12)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello hackers,

Here's a quick update at the end of the second week of CF1.

status | w1 | w2
------------------------+-----+-----
Committed | 32 | 41
Moved to next CF | 5 | 6
Needs review | 146 | 128
Ready for Committer | 7 | 9
Rejected | 2 | 2
Returned with feedback | 2 | 2
Waiting on Author | 29 | 35
Withdrawn | 8 | 8

It looks like we continued our commit rate of around 10/week, punted
one to the next CF, and returned/rejected nothing.

Last week I highlighted 20 'Needs review' patches whose threads hadn't
seen traffic for the longest time as places that could use some
attention if our goal is to move all of these patches closer to their
destiny. A few of them made some progress and one was committed.
Here are another 20 like that -- these are threads have been silent
for 24 to 90 days. That means they mostly apply and pass basic
testing (or I'd probably have reported the failure on the thread and
they wouldn't be on this list). Which means you can test them!

2080 | Minimizing pg_stat_statements performanc | {"Raymond Martin"}
2103 | Fix failure of identity columns if there | {"Laurenz Albe"}
1472 | SQL/JSON: functions | {"Fedor
Sigaev","Alexander Korotkov","Nikita Glukhov","Oleg Bartunov"}
2124 | Introduce spgist quadtree @<(point,circl | {"Matwey V. Kornilov"}
1306 | pgbench - another attempt at tap test fo | {"Fabien Coelho"}
2126 | Rearrange postmaster startup order to im | {"Tom Lane"}
2128 | Fix issues with "x SIMILAR TO y ESCAPE N | {"Tom Lane"}
2102 | Improve Append/MergeAppend EXPLAIN outpu | {"David Rowley"}
1774 | Block level parallel vacuum | {"Masahiko Sawada"}
2086 | pgbench - extend initialization phase co | {"Fabien Coelho"}
1348 | BRIN bloom and multi-minmax indexes | {"Tomas Vondra"}
2183 | Opclass parameters | {"Nikita Glukhov"}
1854 | libpq trace log | {"Aya Iwata"}
2147 | Parallel grouping sets | {"Richard Guo"}
2148 | vacuumlo: report the number of large obj | {"Timur Birsh"}
1984 | Fix performance issue in foreign-key-awa | {"David Rowley"}
1911 | anycompatible and anycompatiblearray pol | {"Pavel Stehule"}
2048 | WIP: Temporal primary and foreign keys | {"Paul Jungwirth"}
2160 | Multi insert in CTAS/MatView | {"Paul Guo","Taylor Vesely"}
2154 | Race conditions with TAP test for syncre | {"Michael Paquier"}

--
Thomas Munro
https://enterprisedb.com

#14Thomas Munro
thomas.munro@gmail.com
In reply to: Thomas Munro (#13)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello hackers,

Here are the stats at the end of week 3 of the CF:

status | w1 | w2 | w3
------------------------+-----+-----+-----
Committed | 32 | 41 | 49
Moved to next CF | 5 | 6 | 6
Needs review | 146 | 128 | 114
Ready for Committer | 7 | 9 | 10
Rejected | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2
Waiting on Author | 29 | 35 | 39
Withdrawn | 8 | 8 | 9

Here is the last batch of submissions that I want to highlight. These
13 are all marked as "Needs review", but haven't yet seen any email
traffic since the CF began:

2119 | Use memcpy in pglz decompression | {"Andrey
Borodin","Владимир Лесков"}
2169 | Remove HeapTuple and Buffer dependency f | {"Ashwin Agrawal"}
2172 | fsync error handling in pg_receivewal, p | {"Peter Eisentraut"}
1695 | Global shared meta cache | {"Takeshi Ideriha"}
2175 | socket_timeout in interfaces/libpq | {"Ryohei Nagaura"}
2096 | psql - add SHOW_ALL_RESULTS option | {"Fabien Coelho"}
2023 | NOT IN to ANTI JOIN transformation | {"James Finnerty","Zheng Li"}
2064 | src/test/modules/dummy_index -- way to t | {"Nikolay Shaplov"}
1712 | Remove self join on a unique column | {"Alexander Kuzmenkov"}
2180 | Optimize pglz compression | {"Andrey
Borodin","Владимир Лесков"}
2179 | Fix support for hypothetical indexes usi | {"Julien Rouhaud"}
2025 | SimpleLruTruncate() mutual exclusion (da | {"Noah Misch"}
2069 | Expose queryid in pg_stat_activity in lo | {"Julien Rouhaud"}

--
Thomas Munro
https://enterprisedb.com

#15Thomas Munro
thomas.munro@gmail.com
In reply to: Thomas Munro (#14)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hello,

Here are the numbers at the end of the 4th week, with just a few days to go:

status | w1 | w2 | w3 | w4
------------------------+-----+-----+-----+-----
Committed | 32 | 41 | 49 | 59
Moved to next CF | 5 | 6 | 6 | 6
Needs review | 146 | 128 | 114 | 106
Ready for Committer | 7 | 9 | 10 | 7
Rejected | 2 | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2 | 2
Waiting on Author | 29 | 35 | 39 | 39
Withdrawn | 8 | 8 | 9 | 10

One observation is that the number marked "Ready for Committer" floats
around 7-10, and that's also about how many get committed each week
(around 20 were already committed pre-'fest), which seems like a clue
that things are moving through that part of the state transition
diagram reasonably well.

--
Thomas Munro
https://enterprisedb.com

#16Thomas Munro
thomas.munro@gmail.com
In reply to: Thomas Munro (#15)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Hi all,

CF1 officially ends in about 8 hours, when August arrives on the
volcanic islands of Howard and Baker, according to CURRENT_TIMESTAMP
AT TIME ZONE '+12'. I'll probably mark it closed at least 8 hours
later than that because I'll be asleep. Anything that is waiting on
author and hasn't had any recent communication, I'm planning to mark
as returned with feedback. Anything that is clearly making good
progress but isn't yet ready for committer, I'm going to move to the
next CF. If you're a patch owner or reviewer and you can help move
your patches in the right direction, or have other feedback on the
appropriate state for any or all patches, then please speak up, I'd
really appreciate it. In all cases please feel free to change the
state or complain if you think I or someone else got it wrong; if I
recall correctly there is a way to get from "returned" to "moved to
next CF", perhaps via an intermediate state. Thanks!

--
Thomas Munro
https://enterprisedb.com

#17Robert Eckhardt
reckhardt@pivotal.io
In reply to: Thomas Munro (#16)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Thu, Aug 1, 2019 at 12:10 AM Thomas Munro <thomas.munro@gmail.com> wrote:

Hi all,

CF1 officially ends in about 8 hours, when August arrives on the
volcanic islands of Howard and Baker, according to CURRENT_TIMESTAMP
AT TIME ZONE '+12'. I'll probably mark it closed at least 8 hours
later than that because I'll be asleep. Anything that is waiting on
author and hasn't had any recent communication, I'm planning to mark
as returned with feedback. Anything that is clearly making good
progress but isn't yet ready for committer, I'm going to move to the
next CF. If you're a patch owner or reviewer and you can help move
your patches in the right direction, or have other feedback on the
appropriate state for any or all patches, then please speak up, I'd
really appreciate it. In all cases please feel free to change the
state or complain if you think I or someone else got it wrong; if I
recall correctly there is a way to get from "returned" to "moved to
next CF", perhaps via an intermediate state. Thanks!

As a normal lurker on hackers, it has been nice seeing the weekly updates.
Thanks for those.

-- Rob

Show quoted text

--
Thomas Munro

https://urldefense.proofpoint.com/v2/url?u=https-3A__enterprisedb.com&amp;d=DwIBaQ&amp;c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&amp;r=51tHa8Iv1xJ6zHVF3Sip1AlXYA5E-AYBfRUwz6SDvrs&amp;m=zzunjUZWnsNXR62PvYhl6kzf6VG6mHBPRpJodFEHOKg&amp;s=b09bCdTOGVhOmxdWbWwiTx0FedVeDW7Ol0EJV6pN_BQ&amp;e=

#18Pavlo Golub
pavlo.golub@cybertec.at
In reply to: Robert Eckhardt (#17)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Greetings, Robert.

You wrote 2019-08-01, 07:30:

On Thu, Aug 1, 2019 at 12:10 AM Thomas Munro <thomas.munro@gmail.com> wrote:

Hi all,

CF1 officially ends in about 8 hours,  when August arrives on the
volcanic islands of Howard and Baker, according to CURRENT_TIMESTAMP
AT TIME ZONE '+12'.  I'll probably mark it closed at least 8 hours
later than that because I'll be asleep.  Anything that is waiting on
author and hasn't had any recent communication, I'm planning to mark
as returned with feedback.  Anything that is clearly making good
progress but isn't yet ready for committer, I'm going to move to the
next CF.  If you're a patch owner or reviewer and you can help move
your patches in the right direction, or have other feedback on the
appropriate state for any or all patches, then please speak up, I'd
really appreciate it.  In all cases please feel free to change the
state or complain if you think I or someone else got it wrong; if I
recall correctly there is a way to get from "returned" to "moved to
next CF", perhaps via an intermediate state.  Thanks!

As a normal lurker on hackers, it has been nice seeing the weekly updates. Thanks for those. 

Yeap! Great job! Please, do the same for the rest of our lifes. :)

-- Rob
 

--
Thomas Munro
https://urldefense.proofpoint.com/v2/url?u=https-3A__enterprisedb.com&amp;d=DwIBaQ&amp;c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&amp;r=51tHa8Iv1xJ6zHVF3Sip1AlXYA5E-AYBfRUwz6SDvrs&amp;m=zzunjUZWnsNXR62PvYhl6kzf6VG6mHBPRpJodFEHOKg&amp;s=b09bCdTOGVhOmxdWbWwiTx0FedVeDW7Ol0EJV6pN_BQ&amp;e=

--
Kind regards,
Pavlo mailto:pavlo.golub@cybertec.at

#19Thomas Munro
thomas.munro@gmail.com
In reply to: Pavlo Golub (#18)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Thu, Aug 1, 2019 at 7:12 PM Pavlo Golub <pavlo.golub@cybertec.at> wrote:

As a normal lurker on hackers, it has been nice seeing the weekly updates. Thanks for those.

Yeap! Great job! Please, do the same for the rest of our lifes. :)

I guess the CF app could show those kind of metrics, but having a
written report from a human seems to be a good idea (I got it from
Alvaro's blog[1]https://www.2ndquadrant.com/en/blog/managing-a-postgresql-commitfest/). The CF is now closed, and here are the final
numbers:

status | w1 | w2 | w3 | w4 | final
------------------------+----+----+----+----+-------
Committed | 32 | 41 | 49 | 59 | 64
Moved to next CF | 5 | 6 | 6 | 6 | 145
Rejected | 2 | 2 | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2 | 2 | 9
Withdrawn | 8 | 8 | 9 | 10 | 11

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

[1]: https://www.2ndquadrant.com/en/blog/managing-a-postgresql-commitfest/

--
Thomas Munro
https://enterprisedb.com

#20Michael Paquier
michael@paquier.xyz
In reply to: Thomas Munro (#19)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Fri, Aug 02, 2019 at 12:18:12PM +1200, Thomas Munro wrote:

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

Thanks Thomas for your efforts in making this possible.
--
Michael

#21Tom Lane
tgl@sss.pgh.pa.us
In reply to: Michael Paquier (#20)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

Michael Paquier <michael@paquier.xyz> writes:

On Fri, Aug 02, 2019 at 12:18:12PM +1200, Thomas Munro wrote:

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

Thanks Thomas for your efforts in making this possible.

+several --- this is a lot of tedious work, but it definitely helps.

regards, tom lane

#22Amit Langote
amitlangote09@gmail.com
In reply to: Thomas Munro (#19)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Fri, Aug 2, 2019 at 9:18 AM Thomas Munro <thomas.munro@gmail.com> wrote:

On Thu, Aug 1, 2019 at 7:12 PM Pavlo Golub <pavlo.golub@cybertec.at> wrote:

As a normal lurker on hackers, it has been nice seeing the weekly updates. Thanks for those.

Yeap! Great job! Please, do the same for the rest of our lifes. :)

I guess the CF app could show those kind of metrics, but having a
written report from a human seems to be a good idea (I got it from
Alvaro's blog[1]). The CF is now closed, and here are the final
numbers:

status | w1 | w2 | w3 | w4 | final
------------------------+----+----+----+----+-------
Committed | 32 | 41 | 49 | 59 | 64
Moved to next CF | 5 | 6 | 6 | 6 | 145
Rejected | 2 | 2 | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2 | 2 | 9
Withdrawn | 8 | 8 | 9 | 10 | 11

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

Thank you Thomas!

Regards,
Amit

#23Julien Rouhaud
rjuju123@gmail.com
In reply to: Amit Langote (#22)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

On Fri, Aug 2, 2019 at 6:55 AM Amit Langote <amitlangote09@gmail.com> wrote:

On Fri, Aug 2, 2019 at 9:18 AM Thomas Munro <thomas.munro@gmail.com> wrote:

On Thu, Aug 1, 2019 at 7:12 PM Pavlo Golub <pavlo.golub@cybertec.at> wrote:

As a normal lurker on hackers, it has been nice seeing the weekly updates. Thanks for those.

Yeap! Great job! Please, do the same for the rest of our lifes. :)

I guess the CF app could show those kind of metrics, but having a
written report from a human seems to be a good idea (I got it from
Alvaro's blog[1]). The CF is now closed, and here are the final
numbers:

status | w1 | w2 | w3 | w4 | final
------------------------+----+----+----+----+-------
Committed | 32 | 41 | 49 | 59 | 64
Moved to next CF | 5 | 6 | 6 | 6 | 145
Rejected | 2 | 2 | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2 | 2 | 9
Withdrawn | 8 | 8 | 9 | 10 | 11

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

Thank you Thomas!

Thanks a lot Thomas!

#24Fabien COELHO
coelho@cri.ensmp.fr
In reply to: Thomas Munro (#19)
1 attachment(s)
Re: Commitfest 2019-07, the first of five* for PostgreSQL 13

I guess the CF app could show those kind of metrics, but having a
written report from a human seems to be a good idea (I got it from
Alvaro's blog[1]). The CF is now closed, and here are the final
numbers:

status | w1 | w2 | w3 | w4 | final
------------------------+----+----+----+----+-------
Committed | 32 | 41 | 49 | 59 | 64
Moved to next CF | 5 | 6 | 6 | 6 | 145
Rejected | 2 | 2 | 2 | 2 | 2
Returned with feedback | 2 | 2 | 2 | 2 | 9
Withdrawn | 8 | 8 | 9 | 10 | 11

In percentages, we returned and rejected 5%, withdrew 5%, committed
28%, and pushed 62% to the next 'fest. That's a wrap. Thanks
everyone.

[1] https://www.2ndquadrant.com/en/blog/managing-a-postgresql-commitfest/

Thanks.

Attached a small graphical display of CF results over time.

--
Fabien.

Attachments:

cf.pngimage/png; name=cf.pngDownload
�PNG


IHDR��l��bKGD������� IDATx���w\SW��'ad�A�LADYJ�Q�V�����Z�U�t����_��Z�-�C�Fu��
�TPD� a����#�C�$7�����'���s�������H$�B!��j#B!�B�g��#�B!�0qG!�BH
`��B!����!�B!5��;B!�Bjw�B!��&�!�B�L�B!�R��#�B!�0qG!�BH
`��B!����!�B!5 ��===}������T*���2,,,33�s��h�"ccc]]�i����_�R�B!�'�H$�o���������633������)//�y����'�x<///�����u�������<ss�KB!�����w���S{{�u�����>�d�������'@yy�������w���c)B!�B�����[XXhjjjii���;wn��������������e)E!�Bh�RT�������\TT��G�����_|�������sM77�'O�����X�B!������vCCC���������uqqg2�c���\���H$544�h4���������W�M �B!�k
������d�Xeeex������@$�H�W�%��U�|��G����DR��4H�{	������I�����HQ���������s�������+W����1���\��b�H$CC�KB!��>9�F��5���X��������s����a���G�H/E!�Bh���.:?������rrr?
+//ONN?���HLL|��7d)E!�Bh��� �)S�����3���������~���IHH

�7n����z�K���������=���p��|;!y���#|;!9����)���?����c�<x�f����}||������GK*���DDD���?\.�����=�F�����{���|;!y���#|;!9�����S��|��Cr�o'$/�^Br�o'$G�vR4���
����z��i�!��KH������N�k |���!�BHE`�;B!�B�&�!�B�E��:���������ZZZ���,����(J��FGGo����f�'������o���}n!$$�J�^�pAr���j���+W�<p�@rrr``��xMM������YMM����V�Zu�����Gw�����a���G������`/]*��#:��4<=u���(B!D�q���?�x���?�����=::Z�4������,{����m��~6�E||�����.RRR$�SRR�t:��x��A��&&&�����)"0��RY;��!:�B	wYM�4i���.<s������C�d9k��e�o�Vtl}fmm=l��.�{pp���c�����$	�xGG	WA!�R����D���b��L&S|$///,,����F�������J*����<�RS\:{�l�6b��o����[�u����F�D"����ei*66v���T*u��Qg���rMMM��_��7 ((����|>_\������/I�������$ci$w������ 88XGG���i��}2�a��k������h����@~~������T������������H$RZZ���?�@"����+I�$��������:a���rT!�B���x�����������N�8���&&&����233		���~�,�5���}}}?~�g���/FDD������W�Z���WRRRRRr����JJJ�?���s||�_|QXX�9��/jkk���@`` ���s�444���Hw�I�.�m`���2g��3f�:u*  `����.]�1�������M�6��'�����a��=�/_����f��!����ihh���(~���H��:?������f��m������^��sT!�Bj'�������f777���&$$<xP<t$22r��!���:::0u�T�������.-H�������yS\,>�������L&�����TTT���K\\�Lgg�	&t�$>>~��i�����<%%���;55�B��7������g������)))���c���r;�l6{��=���:��1#55�����O�%0�s��A���[�d�AAAc������w�����LLJJ��q�P(LNN^�b��}��l���nRR�������$-���xyy���k��wIT!�Bj{�e5n�8===++��k��Y����?.����4w�\q
d2y������kr8�����JJ����H$����7o�89��������q20l�0kkkq�zJJ����������������������/�B�6m��1�Drss+++�%0����4iR�#<o������355�R��D���H\:y���7o������444DFFR(������w�@���Y�����8*�B!u�=��:v����mmm�����������p�B�������w��IM�@ ��.�fCC�@ :t�,�Ho��dr8++���t~z�����6I76^�tI$���L�:U|P<�=88���t����&fhh(I��B��������t>"##���o�����WOO���>  @� s8�7n��{���������?))������f����v$]�bZZZ�FB!��&�����tqq��S��=z��
o����������+V�\)�t�5


555���{$�)ccc
��b�:d2���������AAA��x���[�n��s'::Z|0  �������$K`��X��=�f���k���feeu.uss�{���=88����666���~~~�!�BHE�P�^�����o�������R��&M�~���������%�&�Bg��n�$����)������� �_ZZ���C�c�Ht��y�81q^�m�6�H���+>���_\\|��i:�>~��n_�.�I'=�n�D������������t�����TI�~�����8:�.cl!�B�O��{RR���K�N������������
2���c��E��������M����#���s�zxx�����������������?��v�����######_>Kz�;v466������oW�\����%����g����o���������������j,..~����T�����[UUUo��F��\\\�����?���!Y�R�����&L�����ux90���-���/����_����#]���}���U��������~RRR�q2}�1zt?[�/
OO�C@!���?Tf���MMM�/���-,,����K�rss;2��{������xm1�7e���s�N]]��[�N�4)//���\�q��D����1c�o���b�������������FSS����w�"^|��������LOO��qcDD�����[�t����7�X�l�7�|�d2�������75y���'On��q��-6666l�������������X``��3g$�'��������+W^^R�����nR{���y���~~~�����������]���������x��s���?q�=|��- �B�I$����:;;K�?~��w����_��}�z�jhh��{�Fw��y���%K�$&&�����r��;;w��v$����DFF�>}�����@:���,Z�����/�� ��Jjg@M���K����!��S\j*���Y;�W�����R����F�Iz����;7t�PI_���uppp||���]5�X�����g�z{{�s< :�R1���	�W��*���HPq����!��s
�����nnn������������3����������k���=y����M�q�]zz��������o�Nt,!�^$h��k��_�<b
!1
�fvG�������F�����]Bt
.�]��d~����f����_�jU@@���NVV����'N����cii)��e�N###�H���@���\�K����M�����v3�4s�������B�+�X9=��i �iQ,��<&�7z�9U�������0b
�	��b�������7+��
���6}������7o:99u['%%%((���>��m�������8qBR��o����/+++��}�Ty�;B!���t$��W�����I�������A�v��������+��C��y�o�<u�.��pf�����������mmm333�O����l��b�H$��=zB�����4�I�����zI�6C�C��+hH��wP�5��EP~��������6�����'�cO@l

I�y<�[o����������!�2���tquu�$�b�����
�>N!���`�@�U�J��R97����B`PUkyb�j���9�~��
�F(�����0b-X���g�/�'�|>�����]�t��d������/z�����J���aaaqqq�����<+**����$�����W�^����K��M�&�����P��.��
�=Z]]-������;��,�0���^��^3�gt��a�P�������x��q
���zz
2>�s�DB���h,_���&�c��|�?q��������-[V[[{���A'''����3gZYY������egg:t���f����j�������.\-��I__��
r����{���$O{�e�P����!��o��]WoT��r����l�]�p"��
���s+n/����a1��[���� "�����[#9��~

=q�D\\�����\�d����MMM������\���r����?.eZ*R�)S����Bh������3RA�!,~������iP���C������
/��	�_p
:�_�=??_�q�������b�X<����������|�����c�X,VKK����G�%��\�������h4??���T�KcccG�I�RG�%�Z��[�n���P�T[[�]�vI����/X�����J��w�m|�://o���&&&4m���~�m������ZZZ���}���������� y�1��C��P}������������DG�`�\�����]B<~&1.y�����,������������5�455uuusss���\]]cbb���bbbBBBn��1n�8�^���4��Y�f������6""���{zzJ.�f��~���>����%..n��
:::�1<}����a��y&&&%%%�~����w����'fgg:::���������8//�����m��_��O?}���~�B��|��k�e��==M!�o���b<=	���	�.�^y_����>`_=�c �����+���S}||n��5u�������
���
�����AAA������d2222&L�0c����]�v;vl����+��??%%���g��5����xxx������
.**z�������'�VUU�[���_~9y�dXXX7����M�����!�h���t��
��������
�����8��cP�w
�Y���k��O��BH��ow4�>|���cR���>��MJJZ�z�$?&��3g��j�^*�222>��3q�>>>�/G"����+y���o�>}��������������+++k������"777������'�����	��^�|9!!���_^/B����H��\g?!:��j��������Gt(r����w���2�%�BY,����8pZ�A����"��0qG=����<9���������������@ �x��J�L&����F
tyj``@�P$O���������)22������o}}}������������A :�Uw�f���?8a������������VoTA;�X
���@���1�b�@�l����#f6�^ya�p^
�W�&GH����0�;~�Ao�B/��;�5

�+V�\�������
����L&����������TjG�KMM
�3��G��Y�F�~hVV��,CCCMM���r)a�>}z��������'_x�R~k��5���"�)�
��c�pX��,/9�������k��;x�=���k�z��������8�s���"HD�D(N����;��~�S��;#0wA�F�R'M�t���;vt����D"���$$$|����#���>6l���H$:s��{�u|�|��IKKK{{{�H����9�?}���1�B	<~�xTT���n��^�ti������?y����V__��T"�r:z�k������4C���cGt(�$�C�W��.!J�@�0#��� ��j�k)����,jot$��Pzh�`;l����q�m����}������w��v�������������w~o���������^{m����V�b0K�.�t�����|���L&S����3g~��'qyhh�/��fkk{���#G�t>q��>>>������y��Inn���;�����|���i��C��������$�WL����H��J���2���zA�Y0 :�q� m>�$�K��p�?p�3����bJt@��*�AY,��w_��
��A�>0��`���Wj�J�b�z����pww���������lll455?~�dl�����'�<yr���[�l�����aC��]WW766v��5������;w�\�|�����^�z����@ ���?{�l�i�������7n����p8vvvK�.}9��'&$$L�:u��y�O������&����$Y�IN=���N-$��O8,&:0�@�hyJt��^
�6C�6���������"��8/-_Yc!�����_pXv@KO�!*R�L�����)�r�!�T���H���P�/�����<���t�����L��B���_$�y������{�������E`5]
��pY�X��L}V�9�"S����b���`'h��+`5C��$u����$�N��k����h���0�(hv?��HB.d�������t�`�Jp����E
5���3PM���8�
���b0t��}�V�|:)3�*u!L�e��;B�W�x�<�8u0�S��Nt@��nv��a���������S�q��ZH{j�G��)`�6���c�E4@Y,<=��|�e���3W�#S��O[������,0qGh�����)x|�n�p��Wp|���
A;����Y����������*u7!�-�8�<F����T�;��g����@3'f~-�nG�zs1W'i�E8,�7A��������U��x-)0q�&�
"�lxOO���R�L��������7*Y�~$�S%�+�+��8-���?�V�i�7u?M��	���f�������:v�\"���$4������������O�>��L�L�e��;B�������u����r������,S}�����~rZ^���'�@�xC���L�
��`d$�V�u�*�6��d�W�����]������#��KO@��>��h4+�}�-�^.����z���'%%9r$--������r��i�6m233�T`0����x�"�������g���#e,��0q�������w���������{yy}���s��%:.�����m��������oK6l��Ho���P��.�!V�X"`���C��L/�	�G�����+�w����A�5�IN-��>V���	��W�E�*!un�qe	,Ca������3�'�H����HV���$M��}(P-^��-�f	������yi#Of���~P-���R�|:)38u���O�1q�4iRSS����mmm���onn������<�����`DGG���n�����://������W�&�}����k��9r�����������];s�L||���3��-&&���C�o�����j���


������,�����5��>_B��j}K�-��P��xz�����n9&]T�U���h/d�R��Fz�t�G(�r���6Oy��T��#8}N�@�H>
Jz����D>mf$2���"����N}����Atp����]��bbb���%O����}��������?������8y�d�8q�����;v���c)����\�p IDAT7o�]�v���'O�oJ
}�Q^^��#66X�l��e���A��v��W�R�P��A�y���X��0~��"Ss"!d���?h~W�`��@5�&h�I����B�' ��#n��~9�C�VpX#V����4�\�d�I�uh-�w���H�1Z��R\�J����s��&M��������sC���`mm/K)�����S(���I�.6f��q���'$$L�8�F���5������
6XXX��{����F�999�={~��'GGG==�)S�<{�����_���u��n����H"�H$�����G���������h4??������;r�H*�:j��3g����D��R���o��:<��_Y����x�j�r ���U���A�BH{��Cb(\�����#��#�5�3�pB�� �����p�.y����Z0$�B�\H{2>��������9�~�?��xz
�b����Y���\����,��N���/p�=�
��!�#(=�Y�a�.�����nn�����v����v�����6�&�T��*����������z����_}����N�jii��i���_NN��]���---,���<x��;��������\.722r���III�{[_l��������yyy���I������\???WW���==�������7n�?�$%%��?��Y{���������������~QQ��P��b�Y��W�Zz��"D���n��	�d��@}�k�:,"!T�����8~N�A���
�'P���PuY�c���&�L&��O?����5k�����c;�122�D


4Mz���H��n��)**���0566655988H����_���]�tI����999}��wW`������2e
���ZXX;v���X�_���9<<���F2?�������
�d�������G"##�������S�N������������(���82����&L��k����!<:%G�]a��D|H{��T�xbU�Z��C�=��@H�4?�����[p|l�BC^�H�\���#F<T�t&�mmms��iii�z���F���"���$[�R)pr�|���gffFFFJ����&'?���P(!!����fff�����W�oN�={&I�{[_v\.7))i������d���3cbb@$edd|��g��|||�hA�%�@�9x���1K��������Q��TM�}H�-eD���J�5��=�`�q�������T]BQ�;���={vNNNRR��������Y���c�X$�����R$/���%%����� 
-,^X�������@����P�
�B�<��B�@{{{�����b�x�}��8p@rP `2������)]�"%i,��#��p��z]�H��W������>��T��B�F!�;��{������<<^X`���533������a���{^��"9
�|�2���v��8���~�K���je�+V�X�r������
��B&�������qP�'T_%,F
d��_	@������o%:�B�$�Ue�|�����]�v��__�.�aaa�������o���,�H�"##9��e�������eggS�Too���XIiYYYjjjPP��C�P(]z���R��&M�~��������D"���$$$H����>|��[�
0�l�����������E{	�A9���s1kG��G�=��q\\��e�jkk%��999�g������w�^�p�d�%}}�
6��I/Er��������[����C�SCCCbbbll���
[�l�6m��i����[ZZ6o�L��###����+����w���/�J3f��Gv��������nccS__�����o�����^{m����V�b0K�.�R����A��e��� �r��Ew"@�����b~9}�T!��*��~��-���O
��?hii]�r%"""""������?~���R\Mz)����W{yy���{���uuu���g���1c���^�t)**j���ZZZAAA�}��d-Hez��7�-[��7�0�L++���������gffFEEEFF666����?^2rf���'O���q��-[lll6l� K�n�aY%P���j%:0��Q�U��^�n,��t0t#:	 3�Lt!�EQ;�*����E�����G��1���@��f���8�J�7��gg��!��Y�W�QPj��
�B�H5��(���������B�x��)D�"'\&$��iD��BH�0qG�^k9����us��t�X����CZ�B�4hz@t!�w����\(�J�@�%	���J���+�"`��<5�����ZNt!��w���������whg���~�#�Zm���)o���8B)	&��W�C�yx���p�"3!�`<��Pz��_p�]�e�a�Bj
w�Pw��Ox�p�D��H�VH~���:��)���^"!�q �R*����P���'�H��/���x�"�D"�H��_WrH!!!3g�]x����b���pq4~7��v��JHyCE����EA���Bh�w�$:::G�����{:9rDOO����������YD��Y �$+�������E�WQM�l���O��E*n�%:�B��w�$s�����?%O��;7w�\C��Je��HQH�\<�������(f0f�be��MtR�[ 9�v��0qGJ�x�������l����X���x�����'�h4�Y�f���>}�D"���u�<}���c���������h4??�����5cccG�I�RG�u�����z	��*�\qC��rh����/o<=At��^W����q �"&�HI�������9"~z�����~�Bya��+W�����:::�N������������>}
aaaG��T����z���E� 77w���555111�����YHH��CBRR����������������������

����!1J�A�����3��%�'p%��D��B�`8�)��E��l��k��������o����bu����_���]�tISS�����������R��y��?~|��md2N�8!�.\���C�ILL�����S�zxxDGG���@TT���K\\��Dgg�	&(��	&BM"<��gq ����A�l��t�C�f\�1���G!�W����g��


�����������������=33����g�`kk���1#s��E�������gHH���%��MJJ�;w�8k2�<s����4�D���g����������U����%�[Cb(��b����*HySU����N���&��h�z������w�<&&&��O?r�HNN�x�Kg


B������A�������{{{q�~���;w��G��X,��o��HN��L&�������l�������G��&i��$A���9�6<mC��s�i�yn.��X��)9��Gd���b����d�w��3��p,���WVVn��-333''���������^Rz��������MLL���$O����/^���r������3r�H����x����~[(�������������MLL��I$�{����������������������@CCc��+W�|�����
���&�ihh(�S)M����7���\�)B�%W���n�L7e�
T�'t���,�~��\��Y����[g�h/d2�?q!�F"����h�!��������f��T�O��<yr��)///__����n�������ci���<o��)c������[�n�4iR^^������D��9s��9s����Q�Too����o��F<Z���,55��?��Y�hQtt�_�u����s���t���&M�~���;��v������� YB���������
S�}B���QT_S��O���c��c���5���i�Tz%E[(�<�y���[$N��J�+�?0p����Z/��n$�����"$�r�n�s���]'��7���g�!E��.^�����W%�����G�~�����sss'O�,n���q��;w����B������t��-��M�6mZxxxKK�����tzdd�����������^QQ���~��]���������666���YYY�}�v���z����n��j�*��t�R*����T:f6���?������y)GJ������&��F��%�w���B��#��S�2r����)�]�^j7�����1R���@�gw�����(�'��)������h4���s��
:T�����uppp||<&��Dhh��K����.\�����w����u��h��U�Vu~����{fffTTTdddcc�������%#g&O�|����7n�����f��
2%�f��H�����yP�#�(=
�+���z��%����X��X4��0iF54�gTm�l�1dt�b����&]>�	�;�����r�y�Z�'?���T��_"�Y���m,��jK�f�S�����H%	ulN������+e�y���!Y�Im�/�"���$)�+������O>�v����Acc#�N�:u��;$�&\\\���._�,��s�������{ )�.RE�lx��Tt��������h4�R�zZq��R6���1Sn��A����'����2���C�J��U��7��X������[�Zk����-�d�S�m��LI��x_WGJSo^�Q-��M@H�f��3(25U��2����V�
��������{���srr,--��dJ6�322�D


Rw�.�b����Ot(�����
UI�~:b�]�Ork���@�y i�T_���g/����� ������U]�vh��h��y��`0B|P[(4��-�[��u����l���J����1+�g�P���������t*�B���woooooo��3fL�<9((h�����m�HD���u{��M�����,B�A�wRy<�����W���u�4Uq/�6.�+�4�����K��9x��z��N��*���9�s�R�?\2���]N�CC'�AM�����ho5ik4le��2�-����T�k$oM�3���-�J&3}��������4��1�a�b/A�:���������������]��c�X$����p���!�-h*R���B[��u+���nZO7����S��U1E���n����3���4u�b�'�.����$g��M<������dR�l�#�#�D��V��6��F����Z*[<t���Q#�7ybdpo� ��w�L[?&�rB*����P]��
��|���\]]%I�X~~��a�p��*/B���kTT�/F��5yF���h+g0�B����4����<�%���E�c{j��b>w�H�z�N=U�t>�C�-���i��<�$sk���^������"$'�N��|�dC{�x�bee���K�O������������@��}xx���DH��p;�~)�u���^N�"xsPE�6���t2�)��JS���,-e����y����������i���[��7=�)�cU)��K�����}���?5Yy�
��I��^E"���g���������MMM---���`��iVVV���zzz����277���655�7n�������h�L�����������\U
0|6�\�����N9z��i��Q����>#]���������(D���Y��������j���=��](\x����r		!���Ue��.������rp��.\�]�v�8q����l6���r����7o��x�w���&""����r����{��5��F/�&�h i})o�N�5�ZB����.2��etz+y�v�����W��]$:
b��|x������B��6��O���	_�g�����e��|��J�-�����<�BHU�c��|������i�������3u-jt�TS���n�AA���R����':ek�
�m���T�������mD�DD5;��i�K=q�Z�lT� ���M�T&����
E{�����}��.N���NPLAh��Qww�R�
F�>��V��J���B�U{�y+��������R������I�����/-�����A���gi4(`�.L���r s%<����{�"�����"Z~�,�&��0�D�m�����T
���C��Mth��dt�9��
j������_5���-B����,0qG���
R�@���K���}t�D�G4���qf�F����@���2���=�}1h�<������VMt\���*��
]rJG \x�"����.�0q�&�H�������V�r	�������1�A	f?}`[��Q(\����u :
5c�X����5�������*��G�v,�P��w�p����"�D�<�m����/���`�.L���zzn}�}7��^����u�d�2M,���f�=�Q��7��DtY>����.i�g�ri�.�}�PGGi�R]62���vE�H��;v�!D�r>������;ff���'A��| i��pM��Dt��7�����(�o�z�~�t�?&\�Y;$X�&�~-���*B{�"�	i�@��W��9.8����������y���q�u�J�!u��n�>�1-=7���"pR�M��;�j4=$���
��#4�4���R�v��{���2#T��%��&:
y��'x���]q�����}O�R6j��jNt8
�3{z�/QWF��Y�n�GT�`$�@���z-,
��j�qGj��"����WV�6<��e9U[�1
:>L���-DG!G�����M-�c���m���5��������}QA�oM�/��x~'��G���x�Y�d��1���B�G�����*���F�j'��w�DP�r����#)����!f�j���^�n�?DG!U#���Nt����&�����$5�D"���*����8:L�z�����d��V�	�-<�L��4��A�F77��}lZ}C��X��&�����:>n.�gg��b8�{b��r"�Lx��R��Et ��fth��B���F���s��������.�#?8k�Ft/�������A�$�7Y�?1s�26k%��[����^Wf[��]�-��K5`�.L��Jk})o���Z<c�C^����e�R]6��n�������	+���6��	W0��p��8�It,��n����[*�����v���GD��K�c[o���tD��!�o4#���Y��(��NU�-�1q�&�Hu1R m�8VO���
0dD������F_i�M����s�T��P�_[1��9uYED��s�',-]���/X�{���At �/#j�'�7u�����.�T���U��x`T�Jj��c�r���,�����W(>$M�2
h�A�����h��
��@K4h�����A
:h����[�>��D����2}��al���P'�m��S�@�Nt �G�����m#�
���"�a���\���&:����~t��j{oi	E�����
I�c�]i�}���\[��"��F�k�c����O}9��c�^YY�m�������������{{������/^���r������3r�HK���%�����z`���
*hu����Rt9�e$�\
	9���&K����O:y*:"��9��6�c������_�Nt��--�f<����,���deOt2�Q��)�G	����}��r����u�K+
o���2n��_�0��������;������5))�K�������Ftt������[���������{,}�=(��i*����,V������i}��?�WE%@[����[���{�Z�C���)���i6�H/4���1*��(��L��������R���M63~Jt���b�f����.R>m#���3��!V-*3���'���I^��/����P($��������']���/Y�$11q���P^^����z���;w�X��{������{QP�3����H��1hGS4h��Zz�AM�F�h�;:�;���2��7�n�oC�h�����br���jF� IDATm|�������I
+����^�82/��T��@8�����<����X@`0��	�d_�CE8�����#����@;��iPd62���GR����p,�v8��qu:��VIWU��]���}������sM�>������G=����^!���(\���
�=��,B��4�D�����[��*)���7L�(6$$�w���$�Q�LD�89q=?��-�|Xuc]���&,M�s�_������!O�Nn,�V��3�|	u��-|��G�}����E����Z���:K����{���]�C�


\]];qss�|�r[[�F�^����������b��^mP���P�h��t"���$�duX��]�lr@��c��G_#�p7�by�����]E�;zP�Fj%�+T
����0kWkB�4r�{�{c����z57H�?C��\��Y;4hi��9�s�����Ac�L�i;�X�Nt(}$$�]��n`�f��[���&�R����&���3���c�v>bdd$�h4��R��t�D#YQ��6����T�'����?��_��d&@�?�!2}D�2!���"{�S����\)E�9�m���o�D��1���DG��#�� � �������,7����u5��K3�6gL�q��?FM��o��P]F��)���~F��Q*�`h��(e6�`�l����n����:���������D"��7z�^*E�gm��)**J�i����_(=����������<���w�+��'�vh���*�*k�wJ���I�I$�\	���%DD5��}^��@r�al2�z�n�%�����+6DG����#�v�!�M��=��������k�sf�Y�����/�3�;���Bt,o�w�CH����;����2�<e������
Lg�P���~6;b����%}��������z��A�E"�

{,��������(�J���F�=�����2����&�&�5A�S�5H"���A��YH��]^{�qK���k7�uOtH��4�M��M��5xXk���2��{��� ���}�������6!U��&��~����#����dm��k�����Ey�d�m�!���%`Xk���Eu�&+�/#�����q�w���=���fffv>���?l�0�H��r"��3p�Sy�bH�KO�\�x�g�
V9bi��1�Q�n�ii>��%g���@��xb������	���v�����jjt�-2�J��r4$�+��Gt�Q�u������ :�&����NO�=��$���N{b��nV�����K�N���gyQv�������������A�-�u7�� z�>'�.S��c:���h��@�t����r"Uu�X�����Q���`�z��L�24�2���>��\WV�-#�^s������.����k5���������
��#:��7rd�dn�%��B�����]ii�v��3�v�OV�m��Z�H$:{�,\�x��?�8x�����������x�q�����K�X�������������� ��;�� '��e��v���n�i����k����9-T^3����airXdN�#��j�A�!�`>	�&�o kC����:��^�SD5?��)Q��!������	�� �3���e�K����1
��u��5������X�r]����=���B����6�a0"k5
�r�nB�`��B�{#k��qu:I�V-���;������U��3.\� ~\SS��?�p�\�={��5JRSzi�� ���� �xx�o_v�mf������Jd����3��9�<�.���m�r)�&-N�&����~k�4h�A���Hi��
���lNi���_����~o�BtH�����2���t�2��#�����f���R��j<���?�������a���j�Z1�%�nv�-�����P��Pw�{��#������f����e�������r���E�\�!�����r�t9�4.��m���4��&�S�����������k���
����?i4= 0�f������Hn���1M��k��fj4u�������.��#�-�Y�I2.�d
_�&��lb��9LM1�@s��e��z�=���K��!w�t��T\������3dj�d��s6��Zo��xC���5���p[��V������6hpYm�Zm���������>"%pknN�D�B�|�1�z/i�!��O,9�1�J���'����C�G����yw�*|�Lul��f�X���Yqx6-�-���J��R��GJJ�I���!Y�s
��q�AIO �d�8���=�i�L�����4��;�����H���Xw��������Pd �����|�!�M����o��7R9LMn��I��
�{�"����������j����&ON)��"��i�O������P���D���\�Dn7�x�6�������Ly<��sv�1�Z���v�9/Q�ePk�z��GE6;�/6�0L��{��p�:���g��������y�>�H���p�F�6���k��4�8,-[��^����^��-�����1�h`��0��
�����6	I�Z�����������v?)u����:4�v\	��kX�+��;��MK�rl�Q1����LH$���
�@��~~Z�,��Z�p��$�D�|��g���s[u��tn��H�6irX�&�����xC���qv#������Z��[�t1M:����nR���o����(�>���>f��gz�kF�dc�,��G�W>��/�p(R�����$U,qA	�
�[	Gl�b)�	�1�p_B�-K�a���i4g����,�:��~��\3�Q�����o?���"=B�cEW��#���� ;��,��~WA8����F���@��Y�@��������s�]u����$��3�apB}�����*M����[MxG	�D�����jv��u�.K�
�,m�m��=����#K��q�95��:����'��dZ��Q�����?�pg\��
>�
���X�����;,������`�wy��3��0���}T!t�Dw"g��Y~�gG��A��g�yj��JvY�5�o_��gmOsY�|���b��Q��}���jm�-&c�v��^���C[�Kg���Z�\x�����X-7"��l�����2������9kq������qbo��'!��k���!�������G_��3�b������(�����%�Y�w}�Gl��Dwtn����l-��b�$��}T&�}E���z��C�,�=��z8���������gf�K�b���_��e8��~����eg�3���*I���Jt}Su��������N�M����-��ap�����������g23i���5������]��y�p����0���gG��Y��s�%u���	+B)hyw���/�i����[_�j_�'�O����}T��	[;��+�yy&��pd��L�_$� ����/y�CL>��N�v�&�)��s}`2p<Bi���_���&��+��5�\����&�Ds(�0���x�;c<4�1�vm��������pw�K�J���g�$k���b����_�6�v����T�l��P:rE�|��}w���������MO���(�`p��wjtV.|����j������������E
k(��a��d����j�`�&������B���7n �G������c������)�k�����S<K4�\=XU��{$�I�`��W����{�J�w4�9���\��5��n7��.Jo�Ge��]�����t����1����u�'������K=��<���UB(�\3�3�q�3	����l����B����_���u��w;�N���f��������#�K�\�sL�����`�[���+\���$�Z��1�#�P�9n�E�Q:I�4�7ov���c������,_��]]]�6m�X,�?���+���\���"��a��p6���6p[g��6��%5;���d'q�K�!!�������W��=���o�����G+++W�\	K�,)))y��7m�4��������/���:!����������N��H����loS��[�$����d�ija	+�E����l�I
s�c
1���o��
%��!�P\$m��`0(�p2�>� ??_O�PPP�j�������\s��Ee+,�0!�L+s�l���n���dgX5�5�M�%�`�yK�#�9�	!��M�0��~��c�(��I+�� ���&�l�bmAF�Sr�������2���E��SQ�k�!��l��+**����f�
7����/�����kjjJKK��������?�B� ��m���_�+;/&eFcuF0��������l#��$�����P6e)�U6X����a^��g���`�>����E�X�(�ER�b�"�b��(�.M�#
��e���8K�u�����I5~�F!�,��]���zh����(~����7o^�d��#Grss���w��y�_�p8(�>�o����|���o�����r�Y�������h<S�4� ,�[�>��]t�[�AL�)�H�6j�Qq�]�0�~�]\5�D0�`�	��b�7E�5l#�uBM
���-Z�h��x���+W�\�|��/���/���b%��~���6��=5�vI�U93T�.�s06;��-Ym���,�q�q�
��b��m!���<������5R�}�W��:r:N��B�f���}*�+�'���n��e�����S����z�����B�v����Y��_�_�XJ1'Es���Ww����U��/3�j�[�}�����V��de�_L>1IT��YRLR� �9[����S�G����|��,�������2 ,�f"X�l���%�I���Bh2�����=No�����^ii�P��UWW�����,�y�O�|��]��#;�������K{�;����j��N�Y������l�����Tb��"ifI1�d���������%�|W��
?��m���"�L7�u#B����>�ZTf��D91��ab������D��B5�$S9)7�D+���)s���?��h0��Bq������.JxpW��������������^���u��������o������ZYY�a��Q�<����s�b��e���K���.������cz�Z���u[�[�R�`��v��F�k!����*��F[�#�&���^e�Y���6(ls�����l���d���&0�T�I����[d�e,V���O����m�1q�0��;xDh��4�?�v��^��p�����+��;�48�'��^���2��!@�h�����n
]��;W_-w&�.5'�x���}��Y���7w�\��z����^{��r<x0++dY�?~OO�s�=�/����v��Q}���!���-Z���K�{���A�m3��gK4X��Z5���b���b�0_�(8)i��_K��L8���rd����;�z�����w�8����,Q�,��kK��W"�*��Rv!#1�E
������+��g��^�6�s�f��@�26,ag������}���r2_>&u�����-��L��PW�8�D�����;w�<u����@nn��7�����&''g�����=���={��hEE��-[f��5�>	!������8����#�H������4��iqjQ8R]�FlH���Xr>����S����s�9��cV#��S�S������5z�i�;�����$E�r�1/S&�q]@��q�����R9�BY�S�l6F�p���Hcv�N<�F���7�.m����z[�	��B�d�
�0+�YpZW��xm��<&��TuM�I����R�K�.B�48:%�,E
�l�B�-��-��JrE�����a����B� '�{��a��]
���[^�����aE���0����Ae��G�V:��.�b���}����p����H�+Ro�����m#�8���laq�}w�&r� Z-���T�Pd!by�pv�aLw�4�s�1Go#����1��
w4�\4�������M��F+$�C����S����L�|-�3 v���!��h����h��$��"�}yW��bxkn@$M�r���L����&b��V�h�j'����67PP�h`����#FR�'WI�Sy����MJ�D�N��TD)�Ka�`������O"_zzO2��z�&1h�����ktz'm<�"(��z���	g��E4oA�+�#����4��:kOtN��;G)��)�(�J�M�DA���6��A������LPg&����-i1�:�0��
w49���AmNY���.�K.�\���� ��lb���'���	����T�
@[6|��n$�q��>���\	�@���l����mM��J<���L��.��2[�4���3+/n�KU�4����=���E0��
���	o�&A3/*A��(c�Y��������7bNoM��$�l����w~J�����)>�.�8=�w�9�������5���n����'|i�����OZ��y�����}ML{�%�l�X��.���~"Fr� �����z����b���z������1�r<?|����1	��}T0���H�"&0��U��qb�#�Q&�����Q��uBgj��I����N��������)s������xKk�Tt�I�yk��	���0'��w�l
�JERY���6��� ��tO"1_�_\���v��85�^���X1��L�i�1����
���1R��D�7*�f�c��9�)�pz�Q��>�P�Zr�l�	�K3�!��k�>�u	�I�[w�1�i�$b-xf7RvP;eH{&���3���]_�p�"�O��7��>]zL�z�z��Z�@N�)'����=�e�=��2)�;G8L"�f4�Y��
/�� �b�"��9�����rEN�{Z�3���Mb#�`������}0���PjRY���~�,3Z�Qd��D�%
r�(2�2(Q���F�%l>�v��^Cv�S�r��~�m��H�����?��M��b)C�������1@��V<r�V������]Y���w�OC����OxB�8��HM^���%/��
����cpg	kQ��q����{��"#,��Z�&���4Z���c��R��F��:��.��"����
���������������������KZ���FaA���B��*UX�i���)D��j�UT�)�F%4� 
Q�H8=��\�����_c�d��r�#\=��������`=R�<)$mY����-?7����>z�%p�E���
�u����}TR-��A$f���rA��
'��9�"D��&�|L��E
��F�=�3@��:���Z2d�48������P��"b$���
�[H ��U���'a��,h�p��H���� ���zS�F^��T�;m�r���YG&���G�)^����&>X6�"F6^f����^f��h��.B�^v��Q�rd���2�o2�i���)3�e_�M%�r�*�`�##�4o�������F��R��(�QQF�"�p�_"@�(�d�h@e��F/�^�j�V &35
N��r��
+Ds�1�@O�i�5Z\P��O�t4���~����o���1�����9J�����[l��I�����zW����e����(P2���R��F
��@���8�U�g~�=3�s��+Y��f��>2B���k��<W^����26�4����T�(��<hd�_�P!B�!l�J�3��gN:c2��|L���!CF?�1!�.K����9��_���o%��H�x��v�j�L�R��F����;3����iLr'�D�0�����"<������7��)5�.���qLG�c�}F����b3|8�!��HBir)u��	������g\�z����h��/��\y�`��Z	!���/Bs��`�^tJ�(�;Xg_���D!4u�s'�Y{O��1�zt���E�Z������1��~�������e��������[�Dr��8�|����1�#����s�z����+T��f",�/���JhRaY �r���TUAQ@U��E���#p��ree|y9[T������%���w@PJ�8w�L@UAU�R��D@�@Ui8��jn�IDATP
�
��R��:0�� �YY$#�q:��B�fb2���&���;���)9�K�l�Kg?c�-�]�`��l�!�0�0@�����i �TQ@Qh8�JC!
QY����h� �� ��^����V����SXS*�wuu=����w��F�[�l���kF����K�������s���b���S�������D���~.��
��4�t��Q�����z�<������~��a-M�^/h~?D"�(Zoo��RLv6���de1��A$��"1���,;x�����!�q��2�B�����jg�j���i`21�1�����eb2���0��@�[+Y{�P:x���4�r�5��|KPN���7g��	{4jzs�P����4
����i4
��
@4J�A:0@#���P�ZOO��a�\p�ey���]]]�=���by���;::���\.�������L���2��Lv6#I�b!F�`�I�X���0T���Dh0H���|>b00YY��6Xf�K�K���7K���5KG����f�`Td����|z���P�������p2-U1v;�v3.�t�}���{B@�	������������� ��B�����c`h_�df2���$�8�L��:=���(��~���g�jmmjk�v�tbR5�t�1�,���eI�%V+0#��0�lB� 1�0@oi���7xI���F��j�-���BA(U\�!�����gC���g��c��	@�.x|��z�����@�z!�~���A$�[��)��m�v�=�TVV�\�ZZZJJJ~��_l��i�����d[P�2YYLv6c���|D�x��B��QE�C�����~��G��������1gP�g�nV�gz��Z�&���NWff"��Xv��Ro$4��z{ik������	(u1N'X��$���$"� �(��`4~��W�V�"�����������.�:���[�4
����M��U

~�+�������>�e���Q�U\����3��lN�p�':�0���8�i�,K�+|=ig�������ZK���e�����B��	�0v;B$	������_��9x�@��������z����_�@4z��'Ji0����{����������&�4��7u����)���_���_���m���������G�-�)�eY��)(`rr��,b�1�8BPJ	M��5�_���g�j��jG��������e��$v�e����R���H��w�^��K��P����UMbLV�Z�$����� Q�����D�	;����v0H��z=�����-��j�
D�����o[G� �4��(
�!��
�i0z��@@�/��N$�e=�����c33��AD��|�o��}v���PU�����UW���:;�3g�3g���"��#����N�������t������?�8
	���R�	QU��QmlLv9�b�2�,SP���3yyLf&c��hT��������jG����w
G��h������	c����X���D���m�A��Z@�*��P4M@�����K����,k>(���aM��f37c��099�o�����V,{����R}�,��h�z?����b:0~�����n����Z����w��y��8J���9���s����d�!�&��Ov	B�RT�wH��N)U2���GaB!�J��_�@N����`}a��K����*B!�B� ��{iiiMM��-��������!�BMq����[����o�>�ikkkee�-����R!�B!�t�5�,�������Z������������.B!�B��Z�:;;{��={�D�����-[���5+��B!�B(�R.�#�B!�.�Z}�B!�B���!�B�4��!�B�4��!�B�4��!�B�4��!�B�4�����O?���{g��a6�KJJ6l����5�]]]w�}����X,k��9~�������~�����@ijj��{��%���L�A�d�_u����g��e��f�-^�xh�_4���.�z����-J�q��������?_�zuVV�$I.��sg�%Q�������f�����O~�����#B�'�q_�bE�m����x�;��?���r=z�j��,�.���Z]��������r������_�p��`0����666
�y����W���y��������o�9G�$~�	���?=���W������fsUU���K�����)�����/��r�w��S�~��_?��3�>�l�%J������/^\VV�����L��[�~���;v������u�(��W������K��������7n4���X,�:���������Ow�������t���PYY�?=s���`x���������l�����w������������U���F����#����(u��.]����"�444���(���:=������N��,�n�{��5q;�|��Nk����������9r���/��P��bW����j��+V�Ps�|����r�J�iAA��U���}�)������ M�[
(�W��x�
M��6QM�b\n�zpjJ�����.]:m������U�h4����f��rg���5���:}��W+V��[�`���n���w��i���bp��_|eee���������/(++khh�B��aEE�(�����o?u�TlK�R\���������c�����lQQ������p����IWYYy���{��'F�D�!����{��y���:s�LWW�o��'N<��#�(6JM1�N�h�h4�b2����cWX46��{{{�x������������c�k����]qo�$=��C���w�����O~��'K�,ioo�K�Q��mujkk���}��g�~���?�x��U�?��/������4���[�f�w�������4w�����={�x<���q���;w�t�Mq):J=��NW_}�����tvv666�B��6I�X��]���B��o�=����eY}#��2�.Z�hh���k��\�r���/��2��� ��I�4�����o�z��p���755��w�{��'���&����!~�����[�~=��:b^�jkk����Y�f���+F�������O�q�~�B�[����
~���?���O=�T0|���?��(�R��{$�����9���c���C��N����J��K���c}�e��y<����(���:edd��~���-�W���|����+8J9q=5���;�`��L��NO>�$!d��]��r��5k����,[�l��
�/=J1��N��w����x���������<�v�Z��qQ��0)�eY�����_|��G����TZZZSS3|Kuuuqq� �x#EQ&�H�R\����epx�v�1�CLb�>5m������!C�[�����Gg��=<W-X����m���Pz�������������jii��kWmmmEEE,���"��(w�y�'�|�k����_��u�����-s���ZYYy�-��r��������������I�Qj�_u�������>��g����l���������khh����~�3lM�
�W�rrr������������j�M�&�x��A(++�����ukmm��>���1bSp�������������rrr���Fsrr���������_��t:���x��h4�}�v��D)}��w�;����9rd������^�W�R7�tSeeeSS��c�^{��_��Wyyyo���(�I>f7��N3f�����^}�U�������3������i����|�(>�W�t/����}�^�u�����D���$��m�>��3��x����7�����'���M2��NG�y������:��?���������}��$�T��i�G��I�t6lzAGG�]w�e���f���__SS3�#Y�/���k��?��i�����v;�qn�����oooO�����_u�����m����r���go��-���+�uI��i��UTT$��P���:}��V������W_ZdMJ��N


+W����F�q��9�����i�><4�8�4B!�B)/��#�B!�.��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4��!�B�4����,���IEND�B`�