Gentoo Archives: gentoo-commits

From: "Robin H. Johnson (robbat2)" <robbat2@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-db/mysql: ChangeLog mysql-5.1.46.ebuild
Date: Tue, 27 Apr 2010 05:48:07
Message-Id: 20100427054800.910162C04C@corvid.gentoo.org
1 robbat2 10/04/27 05:48:00
2
3 Modified: ChangeLog
4 Added: mysql-5.1.46.ebuild
5 Log:
6 Latest release from upstream. Please note that plugin handling has changed a lot now in the eclass, and with it PBXT and XtraDB are handled slightly differently for building.
7 (Portage version: 2.2_rc67/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.532 dev-db/mysql/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/mysql/ChangeLog?rev=1.532&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/mysql/ChangeLog?rev=1.532&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/mysql/ChangeLog?r1=1.531&r2=1.532
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/dev-db/mysql/ChangeLog,v
19 retrieving revision 1.531
20 retrieving revision 1.532
21 diff -p -w -b -B -u -u -r1.531 -r1.532
22 --- ChangeLog 26 Apr 2010 18:59:06 -0000 1.531
23 +++ ChangeLog 27 Apr 2010 05:48:00 -0000 1.532
24 @@ -1,6 +1,13 @@
25 # ChangeLog for dev-db/mysql
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/ChangeLog,v 1.531 2010/04/26 18:59:06 grobian Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/ChangeLog,v 1.532 2010/04/27 05:48:00 robbat2 Exp $
29 +
30 +*mysql-5.1.46 (27 Apr 2010)
31 +
32 + 27 Apr 2010; Robin H. Johnson <robbat2@g.o> +mysql-5.1.46.ebuild:
33 + Latest release from upstream. Please note that plugin handling has changed
34 + a lot now in the eclass, and with it PBXT and XtraDB are handled slightly
35 + differently for building.
36
37 26 Apr 2010; Fabian Groffen <grobian@g.o> mysql-5.1.45-r1.ebuild:
38 Marked ~x86-solaris
39
40
41
42 1.1 dev-db/mysql/mysql-5.1.46.ebuild
43
44 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/mysql/mysql-5.1.46.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-db/mysql/mysql-5.1.46.ebuild?rev=1.1&content-type=text/plain
46
47 Index: mysql-5.1.46.ebuild
48 ===================================================================
49 # Copyright 1999-2010 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/mysql-5.1.46.ebuild,v 1.1 2010/04/27 05:48:00 robbat2 Exp $
52
53 MY_EXTRAS_VER="20100427-0534Z"
54 EAPI=2
55
56 # PBXT
57 PBXT_VERSION='1.0.10-rc'
58 # XtraDB
59 PERCONA_VER='5.1.45-10' XTRADB_VER='1.0.6-10'
60
61 inherit toolchain-funcs mysql
62 # only to make repoman happy. it is really set in the eclass
63 IUSE="$IUSE"
64
65 # REMEMBER: also update eclass/mysql*.eclass before committing!
66 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-solaris"
67
68 # When MY_EXTRAS is bumped, the index should be revised to exclude these.
69 # This is often broken still
70 EPATCH_EXCLUDE='02040_all_embedded-library-shared-5.1.43.patch '
71
72 DEPEND="|| ( >=sys-devel/gcc-3.4.6 >=sys-devel/gcc-apple-4.0 )"
73 RDEPEND="!media-sound/amarok[embedded]"
74
75 # Please do not add a naive src_unpack to this ebuild
76 # If you want to add a single patch, copy the ebuild to an overlay
77 # and create your own mysql-extras tarball, looking at 000_index.txt
78
79 # Official test instructions:
80 # USE='berkdb -cluster embedded extraengine perl ssl community' \
81 # FEATURES='test userpriv -usersandbox' \
82 # ebuild mysql-X.X.XX.ebuild \
83 # digest clean package
84 src_test() {
85 # Bug #213475 - MySQL _will_ object strenously if your machine is named
86 # localhost. Also causes weird failures.
87 [[ "${HOSTNAME}" == "localhost" ]] && die "Your machine must NOT be named localhost"
88
89 emake check || die "make check failed"
90 if ! use "minimal" ; then
91 if [[ $UID -eq 0 ]]; then
92 die "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
93 fi
94 has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
95 cd "${S}"
96 einfo ">>> Test phase [test]: ${CATEGORY}/${PF}"
97 local retstatus_unit
98 local retstatus_ns
99 local retstatus_ps
100 local t
101 addpredict /this-dir-does-not-exist/t9.MYI
102
103 # Ensure that parallel runs don't die
104 export MTR_BUILD_THREAD="$((${RANDOM} % 100))"
105
106 # archive_gis really sucks a lot, but it's only relevant for the
107 # USE=extraengines case
108 case ${PV} in
109 5.0.42)
110 mysql_disable_test "archive_gis" "Totally broken in 5.0.42"
111 ;;
112
113 5.0.4[3-9]|5.0.[56]*|5.0.70|5.0.87)
114 [ "$(tc-endian)" == "big" ] && \
115 mysql_disable_test \
116 "archive_gis" \
117 "Broken in 5.0.43-70 and 5.0.87 on big-endian boxes only"
118 ;;
119 esac
120
121 # This was a slight testcase breakage when the read_only security issue
122 # was fixed.
123 case ${PV} in
124 5.0.54|5.0.51*)
125 mysql_disable_test \
126 "read_only" \
127 "Broken in 5.0.51-54, output in wrong order"
128 ;;
129 esac
130
131 # Ditto to read_only
132 [ "${PV}" == "5.0.51a" ] && \
133 mysql_disable_test \
134 "view" \
135 "Broken in 5.0.51, output in wrong order"
136
137 # x86-specific, OOM issue with some subselects on low memory servers
138 [ "${PV}" == "5.0.54" ] && \
139 [ "${ARCH/x86}" != "${ARCH}" ] && \
140 mysql_disable_test \
141 "subselect" \
142 "Testcase needs tuning on x86 for oom condition"
143
144 # Broke with the YaSSL security issue that didn't affect Gentoo.
145 [ "${PV}" == "5.0.56" ] && \
146 for t in openssl_1 rpl_openssl rpl_ssl ssl \
147 ssl_8k_key ssl_compress ssl_connect ; do \
148 mysql_disable_test \
149 "$t" \
150 "OpenSSL tests broken on 5.0.56"
151 done
152
153 # New test was broken in first time
154 # Upstream bug 41066
155 # http://bugs.mysql.com/bug.php?id=41066
156 [ "${PV}" == "5.0.72" ] && \
157 mysql_disable_test \
158 "status2" \
159 "Broken in 5.0.72, new test is broken, upstream bug #41066"
160
161 # The entire 5.0 series has pre-generated SSL certificates, they have
162 # mostly expired now. ${S}/mysql-tests/std-data/*.pem
163 # The certs really SHOULD be generated for the tests, so that they are
164 # not expiring like this. We cannot do so ourselves as the tests look
165 # closely as the cert path data, and we do not have the CA key to regen
166 # ourselves. Alternatively, upstream should generate them with at least
167 # 50-year validity.
168 #
169 # Known expiry points:
170 # 4.1.*, 5.0.0-5.0.22, 5.1.7: Expires 2013/09/09
171 # 5.0.23-5.0.77, 5.1.7-5.1.22?: Expires 2009/01/27
172 # 5.0.78-5.0.90, 5.1.??-5.1.42: Expires 2010/01/28
173 #
174 # mysql-test/std_data/untrusted-cacert.pem is MEANT to be
175 # expired/invalid.
176 case ${PV} in
177 5.0.*|5.1.*|5.4.*|5.5.*)
178 for t in openssl_1 rpl_openssl rpl.rpl_ssl rpl.rpl_ssl1 ssl ssl_8k_key \
179 ssl_compress ssl_connect rpl.rpl_heartbeat_ssl ; do \
180 mysql_disable_test \
181 "$t" \
182 "These OpenSSL tests break due to expired certificates"
183 done
184 ;;
185 esac
186
187 # These are also failing in MySQL 5.1 for now, and are believed to be
188 # false positives:
189 #
190 # main.mysql_comment, main.mysql_upgrade, main.information_schema,
191 # funcs_1.is_columns_mysql funcs_1.is_tables_mysql funcs_1.is_triggers:
192 # fails due to USE=-latin1 / utf8 default
193 #
194 # main.mysql_client_test:
195 # segfaults at random under Portage only, suspect resource limits.
196 #
197 # main.not_partition:
198 # Failure reason unknown at this time, must resolve before package.mask
199 # removal FIXME
200 case ${PV} in
201 5.1.*|5.4.*|5.5.*)
202 for t in main.mysql_client_test main.mysql_comments \
203 main.mysql_upgrade \
204 main.information_schema \
205 main.not_partition funcs_1.is_columns_mysql \
206 funcs_1.is_tables_mysql funcs_1.is_triggers; do
207 mysql_disable_test "$t" "False positives in Gentoo"
208 done
209 ;;
210 esac
211
212 use profiling && use community \
213 || mysql_disable_test main.profiling \
214 "Profiling test needs profiling support"
215
216 if [ "${PN}" == "mariadb" ]; then
217 for t in \
218 parts.part_supported_sql_func_ndb \
219 parts.partition_auto_increment_ndb ; do
220 mysql_disable_test $t "ndb not supported in mariadb"
221 done
222 fi
223
224 # This fail with XtraDB in place of normal InnoDB
225 # TODO: test if they are broken with the rest of the Percona patches
226 if xtradb_patch_available && use xtradb ; then
227 for t in main.innodb innodb.innodb_bug51378 \
228 main.information_schema_db main.mysqlshow \
229 main.innodb-autoinc main.innodb_bug21704 \
230 main.innodb_bug44369 main.innodb_bug46000 \
231 main.index_merge_innodb ; do
232 mysql_disable_test $t "tests broken in xtradb"
233 done
234 fi
235
236 # create directories because mysqladmin might make out of order
237 mkdir -p "${S}"/mysql-test/var-{ps,ns}{,/log}
238
239 # We run the test protocols seperately
240 emake test-unit
241 retstatus_unit=$?
242 [[ $retstatus_unit -eq 0 ]] || eerror "test-unit failed"
243
244 emake test-ns force="--force --vardir=${S}/mysql-test/var-ns"
245 retstatus_ns=$?
246 [[ $retstatus_ns -eq 0 ]] || eerror "test-ns failed"
247 has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
248
249 emake test-ps force="--force --vardir=${S}/mysql-test/var-ps"
250 retstatus_ps=$?
251 [[ $retstatus_ps -eq 0 ]] || eerror "test-ps failed"
252 has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
253
254 # TODO:
255 # When upstream enables the pr and nr testsuites, we need those as well.
256
257 # Cleanup is important for these testcases.
258 pkill -9 -f "${S}/ndb" 2>/dev/null
259 pkill -9 -f "${S}/sql" 2>/dev/null
260 failures=""
261 [[ $retstatus_unit -eq 0 ]] || failures="${failures} test-unit"
262 [[ $retstatus_ns -eq 0 ]] || failures="${failures} test-ns"
263 [[ $retstatus_ps -eq 0 ]] || failures="${failures} test-ps"
264 has usersandbox $FEATURES && eerror "Some tests may fail with FEATURES=usersandbox"
265 [[ -z "$failures" ]] || die "Test failures: $failures"
266 einfo "Tests successfully completed"
267 else
268 einfo "Skipping server tests due to minimal build."
269 fi
270 }