diff --git a/Changelog b/Changelog index f034aad6..a98d7267 100644 --- a/Changelog +++ b/Changelog @@ -1,5 +1,32 @@ Changelog for Percona Toolkit +v3.5.6 released 2023-12-21 + +* Feature PR-669: Add pt-galera-log-explainer +* Improvement PT-1860: pt-osc case sensitivity issue (Thanks to Ivan Kruglov for the contribution) +* Improvement PR-388: Check undefined skip check slave lag schema change (Thanks to Chrys Swingler for the contribution) +* Improvement PR-471: Support adding explain output for slow query in JSON report as well (Thanks to Ayush Goyal for the contribution) +* Improvement PR-509: added new hook before_die (Thanks to Ilaria Migliozzi for the contribution) +* Improvement PR-681: Introduce EditorConfig (Thanks to Viktor Szépe for the contribution) +* Improvement PR-691: Fix newly discovered typos (Thanks to Viktor Szépe for the contribution) +* Improvement PR-706: Follow PR-429 unstop option with testcase (Thanks to fraff for the contribution) +* Improvement PR-712: ARM64 support for macOS +* Improvement PR-713: Fix MongoDB StorageEngine (Thanks to Viktor Szépe for the contribution) +* Improvement PR-714: Fix MongoDB Security (Thanks to Viktor Szépe for the contribution) +* Improvement PR-715: Fix variable collision with imported package name (Thanks to Viktor Szépe for the contribution) +* Improvement PR-716: Make OrderedBy not exported (Thanks to Viktor Szépe for the contribution) +* Improvement PR-720: build Go tools from top Makefile (Thanks to Sami Ahlroos and Yoann La Cancellera for the contribution) +* Fixed bug PT-2064: pt-archiver: Can't call method "rollback" on an undefined value (Thanks to Jakob for the contribution) +* Fixed bug PT-2083: Pt-archiver --charset option is not working for MySQL8.0 +* Fixed bug PT-2109: pt-mysql-summary throws an error when using sql_mode="ANSI_QUOTES" +* Fixed bug PT-2207: pt-archiver doesn't work when ANSI_QUOTES is set in sql_mode +* Fixed bug PT-2211: This pstack return error code line number (Thanks to Zongzhi Chen for the contribution) +* Fixed bug PT-2268: pt-online-schema-change 3.5.5 breaks on mysql5.7 with server_id 0 +* Fixed bug PT-2277: pt-visual-explain errors out on some valid inputs (Thanks to Jason Ng for the contribution) +* Fixed bug PT-2279: Option --charset is confusing when set to utf8mb4 +* Fixed bug PT-2281: provide container name for copying files in the dump +* Fixed bug PT-2286: CVE reported in Percona Toolkit version 3.5.5 related to GO (Thanks to Kushal Haldar for reporting this issue) + v3.5.5 released 2023-10-03 * Feature PR-645: Add after nibble hook to pt-online-schema-change (Thanks to Marcelo HP Ferreira for the contribution) diff --git a/config/deb/rules b/config/deb/rules index f342701f..a055414a 100755 --- a/config/deb/rules +++ b/config/deb/rules @@ -5,7 +5,7 @@ build: build-stamp build-stamp: dh_testdir perl Makefile.PL INSTALLDIRS=vendor - $(MAKE) + VERSION=3.5.6 $(MAKE) touch build-stamp clean: diff --git a/config/rpm/percona-toolkit.spec b/config/rpm/percona-toolkit.spec index 1291711c..3d7f43a0 100644 --- a/config/rpm/percona-toolkit.spec +++ b/config/rpm/percona-toolkit.spec @@ -40,11 +40,12 @@ visit http://www.percona.com/software/. %build %{__perl} Makefile.PL INSTALLDIRS=vendor < /dev/null #sed -i '499d' Makefile -make %{?_smp_mflags} +VERSION=3.5.6 make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT -make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT +VERSION=3.5.6 make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT +for file in $(diff -rq bin/ $RPM_BUILD_ROOT/usr/bin | awk '{print $NF}'); do cp bin/$file $RPM_BUILD_ROOT/usr/bin || true; done find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';' find $RPM_BUILD_ROOT -type d -depth -exec rmdir {} 2>/dev/null ';' find $RPM_BUILD_ROOT -type f -name 'percona-toolkit.pod' -exec rm -f {} ';' diff --git a/config/scripts/pt_builder.sh b/config/scripts/pt_builder.sh index 42807801..77b9474e 100644 --- a/config/scripts/pt_builder.sh +++ b/config/scripts/pt_builder.sh @@ -160,7 +160,7 @@ install_go() { rm -rf /usr/local/go /usr/local/go1.8 /usr/local/go1.9 mv go1.9 /usr/local/ ln -s /usr/local/go1.9 /usr/local/go - GO_VERSION=1.21.1 + GO_VERSION=1.21.5 wget --progress=dot:giga https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz -O /tmp/golang.tar.gz tar -C /usr/local -xzf /tmp/golang.tar.gz update-alternatives --install "/usr/bin/go" "go" "/usr/local/go/bin/go" 0 @@ -233,7 +233,7 @@ install_deps() { sleep 1 done fi - if [ $DEBIAN_VERSION = bionic -o $DEBIAN_VERSION = focal -o $DEBIAN_VERSION = bullseye -o $DEBIAN_VERSION = buster -o $DEBIAN_VERSION = xenial -o $DEBIAN_VERSION = jammy ]; then + if [ $DEBIAN_VERSION = bionic -o $DEBIAN_VERSION = focal -o $DEBIAN_VERSION = bullseye -o $DEBIAN_VERSION = buster -o $DEBIAN_VERSION = bookworm -o $DEBIAN_VERSION = jammy -o $DEBIAN_VERSION = xenial ]; then until apt-get update; do echo "waiting" sleep 1 @@ -370,12 +370,6 @@ build_rpm(){ rm -fr rpmbuild mkdir -vp rpmbuild/{SOURCES,SPECS,BUILD,SRPMS,RPMS} cp $SRC_RPM rpmbuild/SRPMS/ - - cd rpmbuild/SPECS - echo '%undefine _missing_build_ids_terminate_build' | cat - percona-toolkit.spec > pt.spec && mv pt.spec percona-toolkit.spec - echo '%define debug_package %{nil}' | cat - percona-toolkit.spec > pt.spec && mv pt.spec percona-toolkit.spec - sed -i "s/@@ARHITECTURE@@/x86_64/" percona-toolkit.spec - # cd $WORKDIR RHEL=$(rpm --eval %rhel) ARCH=$(echo $(uname -m) | sed -e 's:i686:i386:g') @@ -521,7 +515,23 @@ build_deb(){ mkdir -p $WORKDIR/deb cp $WORKDIR/*.*deb $WORKDIR/deb cp $WORKDIR/*.*deb $CURDIR/deb + if [ "x$DEBIAN_VERSION" = "xjammy" ]; then + for dir in $WORKDIR/deb $CURDIR/deb; do + cd $dir + COMP=gzip + for i in *.deb; do + echo "$i" + mkdir "$i.extract" + dpkg-deb -R "$i" "$i.extract" + rm "$i" + dpkg-deb -b "-Z$COMP" "$i.extract" "$i" + rm -rf "$i.extract" + done + done + fi + cd $WORKDIR } +#=========================== #main export GIT_SSL_NO_VERIFY=1 CURDIR=$(pwd) diff --git a/docs/percona-toolkit.pod b/docs/percona-toolkit.pod index c54054fe..04f061b2 100644 --- a/docs/percona-toolkit.pod +++ b/docs/percona-toolkit.pod @@ -575,6 +575,6 @@ Place, Suite 330, Boston, MA 02111-1307 USA. =head1 VERSION -Percona Toolkit v3.5.6 released 2023-12-18 +Percona Toolkit v3.5.6 released 2023-12-20 =cut diff --git a/docs/release_notes.rst b/docs/release_notes.rst index 49a6ca62..2453151d 100644 --- a/docs/release_notes.rst +++ b/docs/release_notes.rst @@ -1,6 +1,45 @@ Percona Toolkit *************** +v3.5.6 released 2023-12-21 +============================== + +New Features +------------------------------------------------------------ + +* `PR-669`: Add pt-galera-log-explainer + +Improvements +------------------------------------------------------------ + +* :jirabug:`PT-1860`: pt-osc case sensitivity issue (Thanks to ikruglov implementing this improvement) +* `PR-388`: Check undefined skip check slave lag schema change (Thanks to Chrys Swingler for the contribution) +* `PR-471`: Support adding explain output for slow query in JSON +report as well (Thanks to Ayush Goyal for the contribution) +* `PR-509`: added new hook before_die (Thanks to Ilaria Migliozzi for the contribution) +* `PR-681`: Introduce EditorConfig (Thanks to Viktor Szépe for the contribution) +* `PR-691`: Fix newly discovered typos (Thanks to Viktor Szépe for the contribution) +* `PR-706`: Follow PR-429 unstop option with testcase (Thanks to fraff for the contribution) +* `PR-712`: ARM64 support for macOS +* `PR-713`: Fix MongoDB StorageEngine (Thanks to Viktor Szépe for the contribution) +* `PR-714`: Fix MongoDB Security (Thanks to Viktor Szépe for the contribution) +* `PR-715`: Fix variable collision with imported package name (Thanks to Viktor Szépe for the contribution) +* `PR-716`: Make OrderedBy not exported (Thanks to Viktor Szépe for the contribution) +* `PR-720`: build Go tools from top Makefile (Thanks to Sami Ahlroos and Yoann La Cancellera for the contribution) + +Bugs Fixed +------------ + +* :jirabug:`PT-2064`: pt-archiver: Can't call method "rollback" on an undefined value (Thanks to Jakob for the contribution) +* :jirabug:`PT-2083`: Pt-archiver --charset option is not working for MySQL8.0 (Thanks to Yijian Zhang for reporting this issue) +* :jirabug:`PT-2109`: pt-mysql-summary throws an error when using sql_mode="ANSI_QUOTES" +* :jirabug:`PT-2207`: pt-archiver doesn't work when ANSI_QUOTES is set in sql_mode +* :jirabug:`PT-2211`: This pstack return error code line number (Thanks to Zongzhi Chen for the contribution) +* :jirabug:`PT-2268`: pt-online-schema-change 3.5.5 breaks on mysql5.7 with server_id 0 (Thanks to Hristo Mitev for reporting this issue) +* :jirabug:`PT-2277`: pt-visual-explain errors out on some valid inputs (Thanks to Jason Ng for the contribution) +* :jirabug:`PT-2279`: Option --charset is confusing when set to utf8mb4 +* :jirabug:`PT-2281`: provide container name for copying files in the dump +* :jirabug:`PT-2286`: CVE reported in Percona Toolkit version 3.5.5 related to GO (Thanks to Kushal Haldar for reporting this issue) v3.5.5 released 2023-10-03 ============================== @@ -9,7 +48,7 @@ New Features ------------------------------------------------------------ * :jirabug:`PT-2168`: PT-OSC shouldn't fail while unable to monitor a replica node -* `PR-645`: Add after nibble hook to pt-online-schema-change (Thanks to Marcelo HP Ferreira for the implementing this feature) +* `PR-645`: Add after nibble hook to pt-online-schema-change (Thanks to Marcelo HP Ferreira for implementing this feature) * :jirabug:`PT-2258`: Pass tbl as argument for on_copy_rows_after_nibble Improvements diff --git a/go.mod b/go.mod index c880452a..802dcea4 100644 --- a/go.mod +++ b/go.mod @@ -25,7 +25,7 @@ require ( github.com/sirupsen/logrus v1.9.3 github.com/stretchr/testify v1.8.4 go.mongodb.org/mongo-driver v1.13.1 - golang.org/x/crypto v0.16.0 + golang.org/x/crypto v0.17.0 golang.org/x/exp v0.0.0-20230321023759-10a507213a29 gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 k8s.io/api v0.28.4 diff --git a/go.sum b/go.sum index c1c572c7..ef24f919 100644 --- a/go.sum +++ b/go.sum @@ -129,8 +129,8 @@ golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY= -golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= +golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= +golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/exp v0.0.0-20230321023759-10a507213a29 h1:ooxPy7fPvB4kwsA2h+iBNHkAbp/4JxTSwCmvdjEYmug= golang.org/x/exp v0.0.0-20230321023759-10a507213a29/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=