From 988a74f1404142a2646ee5d907f71f6f6d919597 Mon Sep 17 00:00:00 2001 From: Zac Blanco Date: Fri, 10 Jan 2025 12:01:40 -0800 Subject: [PATCH] Remove testing-mysql-server-5 mysql 5 is EOL. 8.4 is supported until ~2032 --- pom.xml | 1 - testing-mysql-server-5/pom.xml | 77 --------------- testing-mysql-server-5/repack-mysql-5.sh | 98 ------------------- .../presto/testing/mysql/EmbeddedMySql5.java | 83 ---------------- .../testing/mysql/TestingMySqlServer.java | 46 --------- .../testing/mysql/TestTestingMySqlServer.java | 36 ------- 6 files changed, 341 deletions(-) delete mode 100644 testing-mysql-server-5/pom.xml delete mode 100755 testing-mysql-server-5/repack-mysql-5.sh delete mode 100644 testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/EmbeddedMySql5.java delete mode 100644 testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/TestingMySqlServer.java delete mode 100644 testing-mysql-server-5/src/test/java/com/facebook/presto/testing/mysql/TestTestingMySqlServer.java diff --git a/pom.xml b/pom.xml index 3525d66..8a31be3 100644 --- a/pom.xml +++ b/pom.xml @@ -42,7 +42,6 @@ testing-mysql-server-base - testing-mysql-server-5 testing-mysql-server-8 diff --git a/testing-mysql-server-5/pom.xml b/testing-mysql-server-5/pom.xml deleted file mode 100644 index fce94b1..0000000 --- a/testing-mysql-server-5/pom.xml +++ /dev/null @@ -1,77 +0,0 @@ - - 4.0.0 - - - com.facebook.presto - testing-mysql-server-root - 0.8-SNAPSHOT - - - testing-mysql-server-5 - testing-mysql-server-5 - - - ${project.parent.basedir} - - - - - com.facebook.presto - testing-mysql-server-base - - - - com.google.guava - guava - - - - mysql - mysql-connector-java - 5.1.48 - runtime - - - - - org.testng - testng - test - - - - com.facebook.presto - testing-mysql-server-base - test-jar - ${project.version} - test - - - - - - - org.codehaus.mojo - exec-maven-plugin - 1.6.0 - - - generate-resources - - exec - - - ${basedir}/repack-mysql-5.sh - - - - - - - - - ${project.build.directory}/generated-resources - - - - diff --git a/testing-mysql-server-5/repack-mysql-5.sh b/testing-mysql-server-5/repack-mysql-5.sh deleted file mode 100755 index 091e48d..0000000 --- a/testing-mysql-server-5/repack-mysql-5.sh +++ /dev/null @@ -1,98 +0,0 @@ -#!/bin/bash - -set -eu - -VERSION=5.7.22 -BASEURL="https://dev.mysql.com/get/Downloads/MySQL-5.7" -PPC64LE_BASEURL="http://yum.mariadb.org/10.2/centos/7/ppc64le/rpms/" - -LINUX_BASE=mysql-$VERSION-linux-glibc2.12-x86_64 -LINUX_PPC64LE_RPM=MariaDB-server-10.2.36-1.el7.centos.ppc64le.rpm -OSX_BASE=mysql-$VERSION-macos10.13-x86_64 - -TAR=tar -command -v gtar >/dev/null && TAR=gtar - -if ! $TAR --version | grep -q "GNU tar" -then - echo "GNU tar is required." - echo "Hint: brew install gnu-tar" - $TAR --version - exit 100 -fi - -STRIP=strip -command -v gstrip >/dev/null && STRIP=gstrip - -if ! $STRIP --version | grep -q "GNU strip" -then - echo "GNU strip is required." - echo "Hint: brew install binutils" - exit 100 -fi - -set -x - -cd $(dirname $0) - -RESOURCES=target/generated-resources - -mkdir -p dist $RESOURCES - -LINUX_NAME=$LINUX_BASE.tar.gz -LINUX_DIST=dist/$LINUX_NAME - -LINUX_PPC64LE_DIST=dist/$LINUX_PPC64LE_RPM - -OSX_NAME=$OSX_BASE.tar.gz -OSX_DIST=dist/$OSX_NAME - -test -e $LINUX_DIST || curl -L -o $LINUX_DIST "$BASEURL/$LINUX_NAME" --fail -test -e $LINUX_PPC64LE_DIST || curl -L -o $LINUX_PPC64LE_DIST "$PPC64LE_BASEURL/$LINUX_PPC64LE_RPM" --fail -test -e $OSX_DIST || curl -L -o $OSX_DIST "$BASEURL/$OSX_NAME" --fail - -PACKDIR=$(mktemp -d "${TMPDIR:-/tmp}/mysql.XXXXXXXXXX") -$TAR -xf $LINUX_DIST -C $PACKDIR -pushd $PACKDIR/$LINUX_BASE -$STRIP bin/mysqld -$TAR -czf $OLDPWD/$RESOURCES/mysql-Linux-amd64.tar.gz \ - COPYING \ - README \ - docs/INFO* \ - share/*.sql \ - share/*.txt \ - share/charsets \ - share/english \ - bin/mysqld -popd -rm -rf $PACKDIR - -PACKDIR=$(mktemp -d "${TMPDIR:-/tmp}/mysql.XXXXXXXXXX") -cp $LINUX_PPC64LE_DIST $PACKDIR/ -pushd $PACKDIR -rpm2cpio $LINUX_PPC64LE_RPM | cpio -idm -mkdir -p mysql-Linux-ppc64le/bin mysql-Linux-ppc64le/lib64 mysql-Linux-ppc64le/share mysql-Linux-ppc64le/data -cp usr/bin/mysql_install_db mysql-Linux-ppc64le/bin/ -cp usr/bin/my_print_defaults mysql-Linux-ppc64le/bin/ -cp usr/bin/resolveip mysql-Linux-ppc64le/bin/ -cp usr/sbin/mysqld mysql-Linux-ppc64le/bin/ -cp -r usr/lib64/* mysql-Linux-ppc64le/lib64/ -cp -r usr/share/mysql mysql-Linux-ppc64le/share/ -$TAR -C ./mysql-Linux-ppc64le -czf $OLDPWD/$RESOURCES/mysql-Linux-ppc64le.tar.gz bin lib64 share data -popd -rm -rf $PACKDIR - -PACKDIR=$(mktemp -d "${TMPDIR:-/tmp}/mysql.XXXXXXXXXX") -$TAR -xf $OSX_DIST -C $PACKDIR -pushd $PACKDIR/$OSX_BASE -$TAR -czf $OLDPWD/$RESOURCES/mysql-Mac_OS_X-x86_64.tar.gz \ - COPYING \ - README \ - docs/INFO* \ - share/*.sql \ - share/*.txt \ - share/charsets \ - share/english \ - bin/mysqld -popd -rm -rf $PACKDIR diff --git a/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/EmbeddedMySql5.java b/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/EmbeddedMySql5.java deleted file mode 100644 index 1003179..0000000 --- a/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/EmbeddedMySql5.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.facebook.presto.testing.mysql; - -import com.google.common.collect.ImmutableList; - -import java.io.IOException; -import java.util.List; - -final class EmbeddedMySql5 - extends AbstractEmbeddedMySql -{ - public EmbeddedMySql5(MySqlOptions mySqlOptions) - throws IOException - { - super(mySqlOptions); - } - - @Override - public List getInitializationArguments() - { - ImmutableList.Builder iList = ImmutableList.builder() - .add( - "--no-defaults", - "--skip-sync-frm", - "--innodb-flush-method=nosync", - "--datadir=" + getDataDirectory()); - - if (isMariadb) { - return iList.add("--basedir=" + getBaseDirectory()).build(); - } - else { - return iList.add("--initialize-insecure").build(); - } - } - - @Override - public List getStartArguments() - { - ImmutableList.Builder iList = ImmutableList.builder() - .add( - "--no-defaults", - "--default-time-zone=+00:00", - "--skip-sync-frm", - "--innodb-flush-method=nosync", - "--innodb-flush-log-at-trx-commit=0", - "--innodb-doublewrite=0", - "--bind-address=localhost", - "--port=" + String.valueOf(getPort()), - "--datadir=" + getDataDirectory(), - "--socket=" + getSocketDirectory()); - - if (isMariadb) { - return iList - .add( - "--basedir=" + getBaseDirectory(), - "--plugin-dir=" + getMariadbPluginDirectory(), - "--log-error=" + getDataDirectory() + "mariadb.log", - "--pid-file=" + getDataDirectory() + "mariadb.pid") - .build(); - } - else { - return iList - .add( - "--skip-ssl", - "--disable-partition-engine-check", - "--explicit_defaults_for_timestamp", - "--lc_messages_dir=" + getShareDirectory()) - .build(); - } - } -} diff --git a/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/TestingMySqlServer.java b/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/TestingMySqlServer.java deleted file mode 100644 index 8ce10a2..0000000 --- a/testing-mysql-server-5/src/main/java/com/facebook/presto/testing/mysql/TestingMySqlServer.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.facebook.presto.testing.mysql; - -import java.util.Arrays; - -import static java.lang.String.format; - -public final class TestingMySqlServer - extends AbstractTestingMySqlServer -{ - public TestingMySqlServer(String user, String password, String... databases) - throws Exception - { - this(user, password, Arrays.asList(databases)); - } - - public TestingMySqlServer(String user, String password, Iterable databases) - throws Exception - { - this(user, password, databases, MySqlOptions.builder().build()); - } - - public TestingMySqlServer(String user, String password, Iterable databases, MySqlOptions mySqlOptions) - throws Exception - { - super(new EmbeddedMySql5(mySqlOptions), user, password, databases); - } - - @Override - public String getJdbcUrl(String database) - { - return format("jdbc:mysql://localhost:%s/%s?user=%s&password=%s&useSSL=false", getPort(), database, getUser(), getPassword()); - } -} diff --git a/testing-mysql-server-5/src/test/java/com/facebook/presto/testing/mysql/TestTestingMySqlServer.java b/testing-mysql-server-5/src/test/java/com/facebook/presto/testing/mysql/TestTestingMySqlServer.java deleted file mode 100644 index 812c993..0000000 --- a/testing-mysql-server-5/src/test/java/com/facebook/presto/testing/mysql/TestTestingMySqlServer.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.facebook.presto.testing.mysql; - -import static java.util.Arrays.asList; - -public class TestTestingMySqlServer - extends AbstractTestTestingMySqlServer -{ - // for ppc64le, mariadb 10.2.x is used as an alternative for mysql 5.7 - private static final boolean isMariadb = System.getProperty("os.arch").equals("ppc64le"); - - @Override - public String getMySqlVersion() - { - return (isMariadb ? "5.5.5-10.2.32-MariaDB" : "5.7.22"); - } - - @Override - public AbstractTestingMySqlServer createMySqlServer(String user, String password, String... databases) - throws Exception - { - return new TestingMySqlServer(user, password, asList(databases), MySqlOptions.builder().build()); - } -}