Merge lp:~percona-core/percona-server/percona-server-tokudb-rc into lp:percona-server/5.6
- percona-server-tokudb-rc
- Merge into 5.6
Proposed by
Tomislav Plavcic
Status: | Merged |
---|---|
Approved by: | Alexey Kopytov |
Approved revision: | no longer in the source branch. |
Merged at revision: | 614 |
Proposed branch: | lp:~percona-core/percona-server/percona-server-tokudb-rc |
Merge into: | lp:percona-server/5.6 |
Diff against target: |
1026 lines (+801/-13) (has conflicts) 12 files modified
VERSION (+5/-0) build-ps/build-binary.sh (+30/-3) build-ps/debian/changelog (+6/-0) build-ps/debian/control.tokudb (+266/-0) build-ps/debian/percona-server-tokudb-5.6.files (+3/-0) build-ps/debian/percona-server-tokudb-5.6.postinst (+18/-0) build-ps/debian/rules (+1/-1) build-ps/debian/rules.tokudb (+279/-0) build-ps/percona-server.spec (+178/-8) scripts/mysqld_safe.sh (+13/-0) sql/handler.h (+1/-0) storage/innobase/include/univ.i (+1/-1) Text conflict in VERSION |
To merge this branch: | bzr merge lp:~percona-core/percona-server/percona-server-tokudb-rc |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alexey Kopytov (community) | Approve | ||
Laurynas Biveinis | Pending | ||
Review via email: mp+223199@code.launchpad.net |
This proposal supersedes a proposal from 2014-06-13.
Commit message
Description of the change
Release branch for Release 5.6.17-66.0 (TokuDB RC)
To post a comment you must log in.
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote : Posted in a previous version of this proposal | # |
review:
Needs Information
Revision history for this message
Tomislav Plavcic (tplavcic) wrote : Posted in a previous version of this proposal | # |
Hi Laurynas,
regarding the jemalloc loading I have sent you mail that I sent to Vadim and his response - as I had same concerns. But basically he says it's ok, although feel free to comment it more if you think different.
Revision history for this message
Tomislav Plavcic (tplavcic) wrote : | # |
The problem with change in sql/handler.h is that without it it won't compile (see link below):
http://
So we need to see what to do about it - will also write comment on the tokudb mailing list - there was some thread about this.
Revision history for this message
Alexey Kopytov (akopytov) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'VERSION' |
2 | --- VERSION 2014-06-11 13:45:54 +0000 |
3 | +++ VERSION 2014-06-16 07:08:31 +0000 |
4 | @@ -1,4 +1,9 @@ |
5 | MYSQL_VERSION_MAJOR=5 |
6 | MYSQL_VERSION_MINOR=6 |
7 | +<<<<<<< TREE |
8 | MYSQL_VERSION_PATCH=19 |
9 | MYSQL_VERSION_EXTRA=-66.1 |
10 | +======= |
11 | +MYSQL_VERSION_PATCH=17 |
12 | +MYSQL_VERSION_EXTRA=-66.0 |
13 | +>>>>>>> MERGE-SOURCE |
14 | |
15 | === modified file 'build-ps/build-binary.sh' |
16 | --- build-ps/build-binary.sh 2014-06-11 13:45:54 +0000 |
17 | +++ build-ps/build-binary.sh 2014-06-16 07:08:31 +0000 |
18 | @@ -24,6 +24,7 @@ |
19 | CRYPTO_LIBRARY='' |
20 | TAG='' |
21 | # |
22 | +CMAKE_BUILD_TYPE='' |
23 | COMMON_FLAGS='' |
24 | # |
25 | # Some programs that may be overriden |
26 | @@ -164,6 +165,24 @@ |
27 | export CC=${CC:-gcc} |
28 | export CXX=${CXX:-g++} |
29 | |
30 | +# TokuDB cmake flags |
31 | +if test -d "$SOURCEDIR/storage/tokudb" |
32 | +then |
33 | + CMAKE_OPTS="${CMAKE_OPTS:-} -DBUILD_TESTING=OFF -DUSE_GTAGS=OFF -DUSE_CTAGS=OFF -DUSE_ETAGS=OFF -DUSE_CSCOPE=OFF" |
34 | + |
35 | + if test "x$CMAKE_BUILD_TYPE" != "xDebug" |
36 | + then |
37 | + CMAKE_OPTS="${CMAKE_OPTS:-} -DTOKU_DEBUG_PARANOID=OFF" |
38 | + else |
39 | + CMAKE_OPTS="${CMAKE_OPTS:-} -DTOKU_DEBUG_PARANOID=ON" |
40 | + fi |
41 | + |
42 | + if [[ $CMAKE_OPTS == *WITH_VALGRIND=ON* ]] |
43 | + then |
44 | + CMAKE_OPTS="${CMAKE_OPTS:-} -DUSE_VALGRIND=ON" |
45 | + fi |
46 | +fi |
47 | + |
48 | # |
49 | if [ -n "$(which rpm)" ]; then |
50 | export COMMON_FLAGS=$(rpm --eval %optflags | sed -e "s|march=i386|march=i686|g") |
51 | @@ -235,9 +254,17 @@ |
52 | ( |
53 | cd "$INSTALLDIR/usr/local/" |
54 | |
55 | - $TAR czf "$WORKDIR_ABS/$PRODUCT_FULL.tar.gz" \ |
56 | - --owner=0 --group=0 "$PRODUCT_FULL/" |
57 | - |
58 | + find $PRODUCT_FULL ! -type d ! -iname "*tdb*.h" -a ! -iname "*toku*" | sort > $WORKDIR_ABS/tokudb_server.list |
59 | + $TAR --owner=0 --group=0 -czf "$WORKDIR_ABS/$PRODUCT_FULL.tar.gz" -T $WORKDIR_ABS/tokudb_server.list |
60 | + rm -f $WORKDIR_ABS/tokudb_server.list |
61 | + |
62 | + if test -e "$PRODUCT_FULL/lib/mysql/plugin/ha_tokudb.so" |
63 | + then |
64 | + TARGETTOKU=$(echo $PRODUCT_FULL | sed 's/.Linux/.TokuDB.Linux/') |
65 | + find $PRODUCT_FULL ! -type d -iname "*toku*" -o -iname "*tdb*.h" > $WORKDIR_ABS/tokudb_plugin.list |
66 | + $TAR --owner=0 --group=0 -czf "$WORKDIR_ABS/$TARGETTOKU.tar.gz" -T $WORKDIR_ABS/tokudb_plugin.list |
67 | + rm -f $WORKDIR_ABS/tokudb_plugin.list |
68 | + fi |
69 | ) |
70 | |
71 | # Clean up |
72 | |
73 | === modified file 'build-ps/debian/changelog' |
74 | --- build-ps/debian/changelog 2014-06-11 13:45:54 +0000 |
75 | +++ build-ps/debian/changelog 2014-06-16 07:08:31 +0000 |
76 | @@ -1,3 +1,9 @@ |
77 | +percona-server-5.6 (5.6.17-rel66.0) unstable; urgency=low |
78 | + |
79 | + * Added packaging changes regarding TokuDB |
80 | + |
81 | + -- Tomislav Plavcic <tomislav.plavcic@percona.com> Mon, 26 May 2014 08:28:27 +0200 |
82 | + |
83 | percona-server-5.6 (5.6.17-rel65.0) unstable; urgency=low |
84 | |
85 | * Fixed provides/breaks/replaces for client/server debian packages |
86 | |
87 | === added file 'build-ps/debian/control.tokudb' |
88 | --- build-ps/debian/control.tokudb 1970-01-01 00:00:00 +0000 |
89 | +++ build-ps/debian/control.tokudb 2014-06-16 07:08:31 +0000 |
90 | @@ -0,0 +1,266 @@ |
91 | +Source: percona-server-5.6 |
92 | +Section: database |
93 | +Priority: extra |
94 | +Maintainer: Percona Server Development Team <mysql-dev@percona.com> |
95 | +Uploaders: George Lorch <george.lorch@percona.com>, |
96 | + Alexey Bychko <alexey.bychko@percona.com> |
97 | +Build-Depends: libtool (>= 1.4.2-7), |
98 | + procps, |
99 | + debhelper (>= 7.0.50~), |
100 | + file (>= 3.28), |
101 | + libncurses5-dev (>= 5.0-6), |
102 | + perl (>= 5.6.0), |
103 | + libwrap0-dev (>= 7.6-8.3), |
104 | + zlib1g-dev (>= 1:1.1.3-5), |
105 | + libreadline-dev, |
106 | + psmisc, |
107 | + po-debconf, |
108 | + chrpath, |
109 | + ghostscript, |
110 | + gawk, |
111 | + bison, |
112 | + lsb-release, |
113 | + cmake, |
114 | + gcc (>= 4.4), |
115 | + g++ (>= 4.4), |
116 | + libaio-dev[linux-any], |
117 | + libpam-dev, |
118 | + libssl-dev |
119 | +Standards-Version: 3.9.4 |
120 | +Homepage: http://www.percona.com/software/percona-server/ |
121 | +Vcs-Bzr: lp:percona-server/5.6 |
122 | + |
123 | +Package: percona-server-tokudb-5.6 |
124 | +Section: database |
125 | +Architecture: any |
126 | +Depends: percona-server-server-5.6 (= ${binary:Version}), libjemalloc1 (>= 3.3.0), ${misc:Depends} |
127 | +Description: TokuDB engine plugin for Percona Server |
128 | + . |
129 | + TokuDB is a storage engine for MySQL and MariaDB that is specifically |
130 | + designed for high performance on write-intensive workloads. It achieves |
131 | + this via Fractal Tree indexing. TokuDB is a scalable, ACID and MVCC compliant |
132 | + storage engine that provides indexing-based query improvements, offers online |
133 | + schema modifications, and reduces slave lag for both hard disk drives and flash memory. |
134 | + . |
135 | + This package includes the TokuDB plugin library. |
136 | + |
137 | +Package: libperconaserverclient18.1 |
138 | +Section: libs |
139 | +Architecture: any |
140 | +Depends: percona-server-common-5.6, ${misc:Depends}, ${shlibs:Depends} |
141 | +Replaces: libpercona-server-client16, libperconaserverclient18 |
142 | +Description: Percona Server database client library |
143 | + Percona Server is a fast, stable and true multi-user, |
144 | + multi-threaded SQL database server. SQL (Structured Query Language) |
145 | + is the most popular database query language in the world. The main |
146 | + goals of Percona Server are speed, robustness and ease of use. |
147 | + . |
148 | + This package includes the client library. |
149 | + |
150 | +Package: libperconaserverclient18.1-dev |
151 | +Architecture: any |
152 | +Section: libdevel |
153 | +Depends: libperconaserverclient18.1 (= ${binary:Version}), |
154 | + zlib1g-dev, ${misc:Depends} |
155 | +Breaks: libperconaserverclient18-dev, |
156 | + libperconaserverclient16-dev, |
157 | + libperconaserverclient15-dev, |
158 | + libperconaserverclient14-dev, |
159 | + libperconaserverclient12-dev, |
160 | + libperconaserverclient10-dev, |
161 | + libmysqlclient-dev, |
162 | + libmysqlclient18-dev, |
163 | + libmariadbclient-dev |
164 | +Replaces: libperconaserverclient18-dev, |
165 | + libperconaserverclient16-dev, |
166 | + libperconaserverclient15-dev, |
167 | + libperconaserverclient14-dev, |
168 | + libperconaserverclient12-dev, |
169 | + libperconaserverclient10-dev, |
170 | + libpercona-xtradb-client-dev, |
171 | + libmariadbclient-dev |
172 | +Provides: libmysqlclient-dev |
173 | +Description: Percona Server database development files |
174 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
175 | + database server. SQL (Structured Query Language) is the most popular |
176 | + database query language in the world. The main goals of Percona Server are |
177 | + speed, robustness and ease of use. |
178 | + . |
179 | + This package includes development libraries and header files. |
180 | + |
181 | +Package: percona-server-common-5.6 |
182 | +Section: database |
183 | +Architecture: any |
184 | +Depends: ${misc:Depends} |
185 | +Description: Percona Server database common files (e.g. /etc/mysql/my.cnf) |
186 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
187 | + database server. SQL (Structured Query Language) is the most popular database |
188 | + query language in the world. The main goals of Percona Server are speed, |
189 | + robustness and ease of use. |
190 | + . |
191 | + This package includes files needed by all versions of the client library |
192 | + (e.g. /etc/mysql/my.cnf). |
193 | + |
194 | +Package: percona-server-client-5.6 |
195 | +Architecture: any |
196 | +Depends: debianutils (>=1.6), |
197 | + libdbi-perl, |
198 | + percona-server-common-5.6 (>= ${source:Version}), |
199 | + libperconaserverclient18.1 (>= ${source:Version}), |
200 | + ${shlibs:Depends}, |
201 | + ${misc:Depends} |
202 | +Provides: mysql-client, |
203 | + virtual-mysql-client, |
204 | + virtual-mysql-client-core |
205 | +Breaks: mysql-client-5.0, |
206 | + mysql-client-core-5.1, |
207 | + mysql-client-core-5.5, |
208 | + mysql-client-5.1, |
209 | + mysql-client-5.5, |
210 | + mysql-client-5.6, |
211 | + percona-xtradb-client-5.0, |
212 | + percona-server-client-5.1, |
213 | + percona-server-client-5.5, |
214 | + mariadb-client, |
215 | + mariadb-client-core-5.5, |
216 | + mariadb-client-5.5, |
217 | + virtual-mysql-client, |
218 | + virtual-mysql-client-core |
219 | +Replaces: mysql-client-5.0, |
220 | + mysql-client-core-5.1, |
221 | + mysql-client-core-5.5, |
222 | + mysql-client-5.1, |
223 | + mysql-client-5.5, |
224 | + mysql-client-5.6, |
225 | + percona-xtradb-client-5.0, |
226 | + percona-server-client-5.1, |
227 | + percona-server-client-5.5, |
228 | + mariadb-client, |
229 | + mariadb-client-core-5.5, |
230 | + mariadb-client-5.5, |
231 | + virtual-mysql-client, |
232 | + virtual-mysql-client-core |
233 | +Description: Percona Server database client binaries |
234 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
235 | + database server. SQL (Structured Query Language) is the most popular database |
236 | + query language in the world. The main goals of Percona Server are speed, |
237 | + robustness and ease of use. |
238 | + . |
239 | + This package includes the client binaries and the additional tools |
240 | + innotop and mysqlreport. |
241 | + |
242 | +Package: percona-server-server-5.6 |
243 | +Architecture: any |
244 | +Suggests: tinyca |
245 | +Pre-Depends: percona-server-common-5.6 (>= ${source:Version}), |
246 | + adduser (>= 3.4.0), |
247 | + debconf |
248 | +Depends: percona-server-client-5.6 (>= ${source:Version}), |
249 | + libdbi-perl, |
250 | + libdbd-mysql-perl, |
251 | + perl (>= 5.6), |
252 | + ${shlibs:Depends}, |
253 | + ${misc:Depends}, |
254 | + psmisc, |
255 | + passwd, |
256 | + lsb-base (>= 3.0-10) |
257 | +Provides: mysql-server, |
258 | + virtual-mysql-server, |
259 | + virtual-mysql-server-core |
260 | +Breaks: mysql-server-5.0, |
261 | + mysql-server-5.1, |
262 | + mysql-server-5.5, |
263 | + mysql-server-5.6, |
264 | + mysql-server-core-5.1, |
265 | + percona-xtradb-server-5.0, |
266 | + percona-server-server-5.1, |
267 | + percona-server-server-5.5, |
268 | + mariadb-server, |
269 | + mariadb-server-core-5.5, |
270 | + mariadb-server-5.5, |
271 | + virtual-mysql-server, |
272 | + virtual-mysql-server-core |
273 | +Replaces: mysql-server-5.0, |
274 | + mysql-server-5.1, |
275 | + mysql-server-5.5, |
276 | + mysql-server-5.6, |
277 | + mysql-server-core-5.1, |
278 | + percona-xtradb-server-5.0, |
279 | + percona-server-server-5.1, |
280 | + percona-server-server-5.5, |
281 | + mariadb-server, |
282 | + mariadb-server-core-5.5, |
283 | + mariadb-server-5.5, |
284 | + virtual-mysql-server, |
285 | + virtual-mysql-server-core |
286 | +Description: Percona Server database server binaries |
287 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
288 | + database server. SQL (Structured Query Language) is the most popular database |
289 | + query language in the world. The main goals of Percona Server are speed, |
290 | + robustness and ease of use. |
291 | + . |
292 | + This package includes the server binaries. |
293 | + |
294 | +Package: percona-server-server |
295 | +Section: database |
296 | +Architecture: any |
297 | +Depends: percona-server-server-5.6, ${misc:Depends} |
298 | +Description: Percona Server database server |
299 | + (metapackage depending on the latest version) |
300 | + This is an empty package that depends on the current "best" version of |
301 | + percona-server-server (currently percona-server-server-5.6), as determined |
302 | + by the Percona Server maintainers. Install this package if in doubt |
303 | + about which Percona Server version you need. That will install the version |
304 | + recommended by the package maintainers. |
305 | + . |
306 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
307 | + database server. SQL (Structured Query Language) is the most popular database |
308 | + query language in the world. The main goals of Percona Server are speed, |
309 | + robustness and ease of use. |
310 | + |
311 | +Package: percona-server-client |
312 | +Section: database |
313 | +Architecture: any |
314 | +Depends: percona-server-client-5.6, ${misc:Depends} |
315 | +Description: Percona Server database client |
316 | + (metapackage depending on the latest version) |
317 | + This is an empty package that depends on the current "best" version of |
318 | + percona-server-client (currently percona-server-client-5.6), as determined |
319 | + by the Percona Server maintainers. Install this package if in doubt |
320 | + about which Percona Server version you want, as this is the one we consider |
321 | + to be in the best shape. |
322 | + |
323 | +Package: percona-server-test-5.6 |
324 | +Architecture: any |
325 | +Depends: percona-server-client-5.6 (>= ${source:Version}), |
326 | + percona-server-server-5.6 (>= ${source:Version}), |
327 | + ${misc:Depends}, |
328 | + ${shlibs:Depends} |
329 | +Description: Percona Server database test suite |
330 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
331 | + database server. SQL (Structured Query Language) is the most popular database |
332 | + query language in the world. The main goals of Percona Server are speed, |
333 | + robustness and ease of use. |
334 | + . |
335 | + This package includes the Percona Server test framework that provides |
336 | + a means for verifying that Percona Server and its client programs |
337 | + operate according to expectations |
338 | + |
339 | +Package: percona-server-source-5.6 |
340 | +Architecture: any |
341 | +Depends: ${misc:Depends}, ${shlibs:Depends} |
342 | +Description: Percona Server 5.6 source |
343 | + This package includes the source code to Percona Server as configured before |
344 | + building. |
345 | + |
346 | +Package: percona-server-5.6-dbg |
347 | +Architecture: any |
348 | +Section: debug |
349 | +Depends: percona-server-server-5.6 (= ${binary:Version}), ${misc:Depends} |
350 | +Description: Debugging package for Percona Server |
351 | + Percona Server is a fast, stable and true multi-user, multi-threaded SQL |
352 | + database server. SQL (Structured Query Language) is the most popular database |
353 | + query language in the world. The main goals of Percona Server are speed, |
354 | + robustness and ease of use. |
355 | + . |
356 | + This package contains the debugging symbols for the Percona Server binaries. |
357 | |
358 | === added file 'build-ps/debian/percona-server-tokudb-5.6.files' |
359 | --- build-ps/debian/percona-server-tokudb-5.6.files 1970-01-01 00:00:00 +0000 |
360 | +++ build-ps/debian/percona-server-tokudb-5.6.files 2014-06-16 07:08:31 +0000 |
361 | @@ -0,0 +1,3 @@ |
362 | +usr/lib/mysql/plugin/ha_tokudb.so |
363 | +usr/bin/tokuftdump |
364 | +usr/include/tdb-internal.h |
365 | |
366 | === added file 'build-ps/debian/percona-server-tokudb-5.6.postinst' |
367 | --- build-ps/debian/percona-server-tokudb-5.6.postinst 1970-01-01 00:00:00 +0000 |
368 | +++ build-ps/debian/percona-server-tokudb-5.6.postinst 2014-06-16 07:08:31 +0000 |
369 | @@ -0,0 +1,18 @@ |
370 | +#!/bin/bash -e |
371 | + |
372 | +# Some postinstall info about TokuDB |
373 | +if [ -z "$2" ]; then |
374 | + echo -e "\n\n * This release of Percona Server is distributed with TokuDB storage engine." |
375 | + echo -e " * Run the following commands to enable the TokuDB storage engine in Percona Server:\n" |
376 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb SONAME 'ha_tokudb.so';\"" |
377 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_file_map SONAME 'ha_tokudb.so';\"" |
378 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_fractal_tree_info SONAME 'ha_tokudb.so';\"" |
379 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_fractal_tree_block_map SONAME 'ha_tokudb.so';\"" |
380 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_trx SONAME 'ha_tokudb.so';\"" |
381 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_locks SONAME 'ha_tokudb.so';\"" |
382 | + echo -e "\tmysql -e \"INSTALL PLUGIN tokudb_lock_waits SONAME 'ha_tokudb.so';\"" |
383 | + echo -e "\n * See http://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_intro.html for more details\n\n" |
384 | +fi |
385 | + |
386 | +#DEBHELPER# |
387 | +exit 0 |
388 | |
389 | === modified file 'build-ps/debian/rules' |
390 | --- build-ps/debian/rules 2014-06-11 13:45:54 +0000 |
391 | +++ build-ps/debian/rules 2014-06-16 07:08:31 +0000 |
392 | @@ -137,7 +137,7 @@ |
393 | rm -rf $(builddir) |
394 | |
395 | debconf-updatepo |
396 | - rm -f $(EXPORTED_SOURCE_TARBALL) |
397 | + # rm -f $(EXPORTED_SOURCE_TARBALL) |
398 | dh_clean -v |
399 | |
400 | |
401 | |
402 | === added file 'build-ps/debian/rules.tokudb' |
403 | --- build-ps/debian/rules.tokudb 1970-01-01 00:00:00 +0000 |
404 | +++ build-ps/debian/rules.tokudb 2014-06-16 07:08:31 +0000 |
405 | @@ -0,0 +1,279 @@ |
406 | +#!/usr/bin/make -f |
407 | + |
408 | +export DH_VERBOSE=1 |
409 | +export DEB_BUILD_HARDENING=1 |
410 | + |
411 | +PACKAGE=percona-server-5.6 |
412 | +PS_VERSION_EXTRA = '@@PERCONA_VERSION_EXTRA@@' |
413 | +REVISION = '@@REVISION@@' |
414 | +COMPILATION_COMMENT_RELEASE = "Percona Server (GPL), Release $(PS_VERSION_EXTRA), Revision $(REVISION)" |
415 | + |
416 | +TMP=$(CURDIR)/debian/tmp/ |
417 | +prefix=/usr |
418 | + |
419 | +ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH) |
420 | +ARCH_OS = $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS) |
421 | +NCPU = $(shell grep -c processor /proc/cpuinfo) |
422 | +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) |
423 | +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) |
424 | + |
425 | +export MYSQL_BUILD_CC=$(DEB_HOST_GNU_TYPE)-gcc$(USE_THIS_GCC_VERSION) |
426 | +export MYSQL_BUILD_CXX=$(DEB_HOST_GNU_TYPE)-g++$(USE_THIS_GCC_VERSION) |
427 | + |
428 | +DEB_SOURCE_PACKAGE ?= $(strip $(shell egrep '^Source: ' debian/control | cut -f 2 -d ':')) |
429 | +DEB_VERSION ?= $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ') |
430 | +DEB_NOEPOCH_VERSION ?= $(shell echo $(DEB_VERSION) | cut -d: -f2-) |
431 | +DEB_UPSTREAM_VERSION ?= $(shell echo $(DEB_NOEPOCH_VERSION) | sed 's/-[^-]*$$//') |
432 | +DEB_UPSTREAM_VERSION_MAJOR_MINOR := $(shell echo $(DEB_UPSTREAM_VERSION) | sed -r -n 's/^([0-9]+\.[0-9]+).*/\1/p') |
433 | +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) |
434 | + |
435 | +EXPORTED_SOURCE_TARBALL = debian/percona-server-source-5.6.tar.gz |
436 | + |
437 | +DISTRIBUTION = $(shell lsb_release -i -s) |
438 | + |
439 | +MYSQL_SRC = $(shell pwd) |
440 | + |
441 | +#MAKE_TEST_TARGET=test-mtr |
442 | +ifneq ($(findstring fulltest,$(DEB_BUILD_OPTIONS)),) |
443 | +# make test-bt is the testsuite run by the MySQL build team |
444 | +# before a release, but it is long |
445 | + MAKE_TEST_TARGET=test-bt |
446 | +endif |
447 | + |
448 | +USE_ASSEMBLER=--enable-assembler |
449 | + |
450 | +ifneq (,$(filter $(ARCH), amd64 i386)) |
451 | + TESTSUITE_FAIL_CMD=exit 1 |
452 | +else |
453 | + TESTSUITE_FAIL_CMD=true |
454 | +endif |
455 | + |
456 | +builddir = builddir |
457 | + |
458 | +configure: patch configure-stamp |
459 | + |
460 | +configure-stamp: |
461 | + @echo "RULES.$@" |
462 | + dh_testdir |
463 | + |
464 | +ifneq ($(ARCH_OS),hurd) |
465 | + if [ ! -d /proc/self ]; then echo "/proc IS NEEDED" 1>&2; exit 1; fi |
466 | +endif |
467 | + |
468 | + [ ! -d python-for-subunit2junitxml ] || rm -rf python-for-subunit2junitxml |
469 | + |
470 | + ( test -d $(builddir) || mkdir $(builddir) ) && cd $(builddir) && \ |
471 | + sh -c 'PATH=$${MYSQL_BUILD_PATH:-"/bin:/usr/bin"} \ |
472 | + CC=$${MYSQL_BUILD_CC:-gcc} \ |
473 | + CFLAGS=$${MYSQL_BUILD_CFLAGS:-"-O2 -g -fno-strict-aliasing"} \ |
474 | + CXX=$${MYSQL_BUILD_CXX:-g++} \ |
475 | + CXXFLAGS=$${MYSQL_BUILD_CXXFLAGS:-"-O3 -g -felide-constructors -fno-exceptions -fno-rtti -fno-strict-aliasing"} \ |
476 | + cmake -DCMAKE_INSTALL_PREFIX=/usr \ |
477 | + \ |
478 | + -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \ |
479 | + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ |
480 | + -DWITH_LIBWRAP=ON \ |
481 | + -DWITH_ZLIB=system \ |
482 | + -DWITH_SSL=system \ |
483 | + -DCOMPILATION_COMMENT=$(COMPILATION_COMMENT_RELEASE) \ |
484 | + -DSYSTEM_TYPE="debian-linux-gnu" \ |
485 | + -DINSTALL_LAYOUT=RPM \ |
486 | + -DINSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \ |
487 | + -DINSTALL_PLUGINDIR=lib/mysql/plugin \ |
488 | + -DWITH_EMBEDDED_SERVER=OFF \ |
489 | + -DWITH_INNODB_MEMCACHED=ON \ |
490 | + -DWITH_ARCHIVE_STORAGE_ENGINE=ON \ |
491 | + -DWITH_BLACKHOLE_STORAGE_ENGINE=ON \ |
492 | + -DWITH_FEDERATED_STORAGE_ENGINE=ON \ |
493 | + -DWITH_PAM=ON -DWITH_EXTRA_CHARSETS=all \ |
494 | + -DWITH_VALGRIND=OFF -DUSE_VALGRIND=OFF -DDEBUG_EXTNAME=OFF -DBUILD_TESTING=OFF -DUSE_GTAGS=OFF \ |
495 | + -DUSE_CTAGS=OFF -DUSE_ETAGS=OFF -DUSE_CSCOPE=OFF -DTOKU_DEBUG_PARANOID=OFF ..' |
496 | + |
497 | + touch $@ |
498 | + |
499 | +build: build-arch build-indep |
500 | +build-arch: build-stamp |
501 | +build-indep: build-stamp |
502 | + |
503 | +build-stamp: configure |
504 | + @echo "RULES.$@" |
505 | + dh_testdir |
506 | + |
507 | + [ -f $(EXPORTED_SOURCE_TARBALL) ] || tar -zcf $(EXPORTED_SOURCE_TARBALL) \ |
508 | + --exclude=debian . \ |
509 | + --transform="s,^\./,percona-server-5.6/," |
510 | + |
511 | + cd $(builddir) && $(MAKE) -j$(NCPU) VERBOSE=1 |
512 | + |
513 | +ifeq ($(findstring nocheck,$(DEB_BUILD_OPTIONS)),) |
514 | + # Don't know why the following is necessary... |
515 | + cp unittest/unit.pl $(builddir)/unittest/ |
516 | + cp -r mysql-test/* $(builddir)/mysql-test/ |
517 | + cp -r sql/share/* $(builddir)/sql/share/ |
518 | + cp -r scripts/*sql $(builddir)/scripts/ |
519 | + if [ ! -f testsuite-stamp ] ; then \ |
520 | + (cd $(builddir) && $(MAKE) test-unit) || $(TESTSUITE_FAIL_CMD) ; \ |
521 | + cd $(builddir) && $(MAKE) $(MAKE_TEST_TARGET) || $(TESTSUITE_FAIL_CMD) ; \ |
522 | + fi |
523 | +endif |
524 | + |
525 | + touch testsuite-stamp |
526 | + |
527 | + touch build-stamp |
528 | + |
529 | +clean: clean-patched |
530 | + rm -rf debian/patched |
531 | + |
532 | +clean-patched: |
533 | + @echo "RULES.clean-patched" |
534 | + dh_testdir |
535 | + dh_testroot |
536 | + rm -f configure-stamp* |
537 | + rm -f build-stamp* |
538 | + rm -f testsuite-stamp |
539 | + |
540 | + [ ! -f Makefile ] || $(MAKE) clean |
541 | + [ ! -d mysql-test/var ] || rm -rf mysql-test/var |
542 | + [ ! -d python-for-subunit2junitxml ] || rm -rf python-for-subunit2junitxml |
543 | + |
544 | + rm -rf $(builddir) |
545 | + |
546 | + debconf-updatepo |
547 | + # rm -f $(EXPORTED_SOURCE_TARBALL) |
548 | + dh_clean -v |
549 | + |
550 | + |
551 | +install: build |
552 | + @echo "RULES.$@" |
553 | + dh_testdir |
554 | + dh_testroot |
555 | + dh_prep |
556 | + dh_installdirs |
557 | + |
558 | + # make install (trailing slash needed for innobase) |
559 | + (cd $(builddir) && $(MAKE) install DESTDIR=$(TMP)/) |
560 | + |
561 | + # After installing, remove rpath to make lintian happy. |
562 | + set +e; \ |
563 | + find ./debian/tmp/ -type f -print0 \ |
564 | + | xargs -0 --no-run-if-empty chrpath -k 2>/dev/null \ |
565 | + | fgrep RPATH= \ |
566 | + | cut -d: -f 1 \ |
567 | + | xargs --no-run-if-empty chrpath -d; \ |
568 | + set -e |
569 | + |
570 | + # libperconaserverclient: move shared libraries (but not the rest like libheap.a & co) |
571 | + # libmysqlclient_r is now a symlink to libmysqlclient. But it is |
572 | + # created wrong by the cmake build system and points at |
573 | + # libmysqlclient.so instead of the corresponding versioned lib. |
574 | + for i in `ls $(TMP)/usr/lib/$(DEB_HOST_MULTIARCH)/libperconaserverclient.so*` ; do \ |
575 | + rlib=`basename $$i | sed -e 's/libperconaserverclient\./libperconaserverclient_r./'` ;\ |
576 | + ln -sf `basename $$i` $(TMP)/usr/lib/$(DEB_HOST_MULTIARCH)/$$rlib ;\ |
577 | + done |
578 | + |
579 | + # libmysqlclient-dev: forgotten header file since 3.23.25? |
580 | + #cp $(BUILDDIR)/include/my_config.h $(TMP)/usr/include/mysql/ |
581 | + #cp include/my_dir.h $(TMP)/usr/include/mysql/ |
582 | + # install libmysqld built with -FPIC |
583 | + install -d -m 0755 -o root -g root $(TMP)/usr/lib/percona-server |
584 | + #install -m 0644 -o root -g root $(BUILDDIR_PIC)/libmysqld/libmysqld.a $(TMP)/usr/lib/mysql/libmysqld_pic.a |
585 | + # mysql_config won't report the -fPIC, so give libmysqld-pic users a way to get their flags |
586 | + #install -m 0755 -o root -g root $(BUILDDIR_PIC)/scripts/mysql_config $(TMP)/usr/bin/mysql_config_pic |
587 | + |
588 | + # mysql-common: We now provide our own config file. |
589 | + install -d $(TMP)/etc/mysql |
590 | + #install -m 0644 debian/additions/my.cnf $(TMP)/etc/mysql/my.cnf |
591 | + |
592 | + # mysql-client |
593 | + #FIXME install -m 0755 debian/additions/mysqlreport $(TMP)/usr/bin/ |
594 | + #FIXME install -m 0755 debian/additions/innotop/innotop $(TMP)/usr/bin/ |
595 | + #FIXME install -m 0644 debian/additions/innotop/innotop.1 $(TMP)/usr/share/man/man1/ |
596 | + |
597 | + # mysql-server |
598 | + mkdir -p $(TMP)/usr/share/doc/percona-server-5.6/examples |
599 | + mv $(TMP)/usr/share/mysql/*cnf $(TMP)/usr/share/doc/percona-server-5.6/examples/ |
600 | + rm -vf $(TMP)/usr/share/mysql/mi_test_all* \ |
601 | + $(TMP)/usr/share/mysql/mysql-log-rotate \ |
602 | + $(TMP)/usr/share/mysql/mysql.server \ |
603 | + $(TMP)/usr/share/mysql/binary-configure |
604 | + nm -n $(builddir)/sql/mysqld |gzip -9 > $(TMP)/usr/share/doc/percona-server-5.6/mysqld.sym.gz |
605 | + # FIXME install -m 0755 debian/additions/echo_stderr $(TMP)/usr/share/mysql/ |
606 | + install -m 0755 debian/additions/debian-start $(TMP)/etc/mysql/ |
607 | + install -m 0755 debian/additions/debian-start.inc.sh $(TMP)/usr/share/mysql/ |
608 | + |
609 | + # install AppArmor profile |
610 | + # FIXME install -D -m 644 debian/apparmor-profile $(TMP)/etc/apparmor.d/usr.sbin.mysqld |
611 | + # install Apport hook |
612 | + # FIXME install -D -m 644 debian/mysql-server-5.6.py $(TMP)/usr/share/apport/package-hooks/source_mysql-5.6.py |
613 | + |
614 | + install -D -m 0644 $(EXPORTED_SOURCE_TARBALL) $(TMP)/usr/src/percona-server/`basename $(EXPORTED_SOURCE_TARBALL)` |
615 | + |
616 | + dh_movefiles |
617 | + |
618 | +# Build architecture-independent files here. |
619 | +binary-indep: build install |
620 | + @echo "RULES.binary-indep" |
621 | + dh_testdir -i |
622 | + dh_testroot -i |
623 | + dh_installdebconf -i |
624 | + dh_installdocs -i |
625 | + dh_installexamples -i |
626 | + dh_installmenu -i |
627 | + dh_installlogrotate -i |
628 | + dh_installinit -i |
629 | + dh_installcron -i |
630 | + dh_installman -i |
631 | + dh_installinfo -i |
632 | + dh_installlogcheck -i |
633 | + dh_installchangelogs -i |
634 | + dh_link -i |
635 | + dh_compress -i |
636 | + dh_fixperms -i |
637 | + dh_installdeb -i |
638 | + dh_perl -i |
639 | + dh_gencontrol -i |
640 | + dh_md5sums -i |
641 | + dh_builddeb -i |
642 | + |
643 | +binary-arch: build install |
644 | + @echo "RULES.binary-arch" |
645 | + dh_testdir |
646 | + dh_testroot |
647 | + |
648 | + dh_installdebconf -a |
649 | + dh_installdocs -a |
650 | + dh_installexamples -a |
651 | + dh_installmenu -a |
652 | + dh_installlogrotate -a --name mysql-server |
653 | + if [ "$(DISTRIBUTION)" = "Ubuntu" ]; then if [ "$(DISTRELEASE)" != "lucid"]; then dh_apparmor -pmysql-server-5.5 --profile-name=usr.sbin.mysqld; fi; fi |
654 | + # Start mysql in runlevel 19 before 20 where apache, proftpd etc gets |
655 | + # started which might depend on a running database server. |
656 | + dh_installinit -a --name=mysql -- defaults 19 21 |
657 | + dh_installcron -a --name mysql-server |
658 | + dh_installman -a |
659 | + dh_installinfo -a |
660 | + dh_installlogcheck -a |
661 | + dh_installchangelogs -a |
662 | + dh_strip -a --dbg-package=percona-server-5.6-dbg |
663 | + dh_lintian |
664 | + dh_link -a # .so muss nach .so.1.2.3 installier werden! |
665 | + dh_compress -a |
666 | + dh_fixperms -a |
667 | + dh_makeshlibs -a |
668 | + dh_installdeb -a |
669 | + dh_perl -a |
670 | + #dh_shlibdeps -a -l debian/libmysqlclient16/usr/lib -L libmysqlclient16 |
671 | + dh_shlibdeps -a |
672 | + dh_gencontrol -a |
673 | + dh_md5sums -a |
674 | + dh_builddeb -a |
675 | + |
676 | +binary: binary-indep binary-arch |
677 | + |
678 | +override_dh_auto_install: |
679 | + dh_auto_install |
680 | + |
681 | +.PHONY: clean clean-patched configure build binary binary-indep binary-arch install patch |
682 | + |
683 | +override_dh_installinit: |
684 | + dh_installinit --name=mysql --error-handler=: |
685 | |
686 | === modified file 'build-ps/percona-server.spec' |
687 | --- build-ps/percona-server.spec 2014-06-11 13:45:54 +0000 |
688 | +++ build-ps/percona-server.spec 2014-06-16 07:08:31 +0000 |
689 | @@ -30,6 +30,19 @@ |
690 | %define percona_server_version @@PERCONA_VERSION@@ |
691 | %define revision @@REVISION@@ |
692 | |
693 | +# |
694 | +%bcond_with tokudb |
695 | +# |
696 | +%if %{with tokudb} |
697 | + %define TOKUDB_FLAGS -DWITH_VALGRIND=OFF -DUSE_VALGRIND=OFF -DDEBUG_EXTNAME=OFF -DBUILD_TESTING=OFF -DUSE_GTAGS=OFF -DUSE_CTAGS=OFF -DUSE_ETAGS=OFF -DUSE_CSCOPE=OFF |
698 | + %define TOKUDB_DEBUG_ON -DTOKU_DEBUG_PARANOID=ON |
699 | + %define TOKUDB_DEBUG_OFF -DTOKU_DEBUG_PARANOID=OFF |
700 | +%else |
701 | + %define TOKUDB_FLAGS %{nil} |
702 | + %define TOKUDB_DEBUG_ON %{nil} |
703 | + %define TOKUDB_DEBUG_OFF %{nil} |
704 | +%endif |
705 | +# |
706 | %define mysqld_user mysql |
707 | %define mysqld_group mysql |
708 | %define mysqldatadir /var/lib/mysql |
709 | @@ -227,6 +240,9 @@ |
710 | Distribution: %{distro_description} |
711 | License: Copyright (c) 2000, 2010, %{mysql_vendor}. All rights reserved. Use is subject to license terms. Under %{license_type} license as shown in the Description field. |
712 | Source: http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-%{mysql_version}-%{percona_server_version}/source/%{src_dir}.tar.gz |
713 | +%if %{with tokudb} |
714 | +Source1: http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-%{mysql_version}-%{percona_server_version}/source/%{src_dir}.tokudb.tar.gz |
715 | +%endif |
716 | URL: http://www.percona.com/ |
717 | Packager: Percona MySQL Development Team <mysqldev@percona.com> |
718 | Vendor: %{percona_server_vendor} |
719 | @@ -273,11 +289,26 @@ |
720 | If you want to access and work with the database, you have to install |
721 | package "Percona-Server-client%{product_suffix}" as well! |
722 | |
723 | +%if %{with tokudb} |
724 | +# ---------------------------------------------------------------------------- |
725 | +%package -n Percona-Server-tokudb%{product_suffix} |
726 | +Summary: Percona Server - TokuDB |
727 | +Group: Applications/Databases |
728 | +Requires: Percona-Server-server%{product_suffix} = %{version}-%{release} |
729 | +Requires: Percona-Server-shared%{product_suffix} = %{version}-%{release} |
730 | +Requires: Percona-Server-client%{product_suffix} = %{version}-%{release} |
731 | +Requires: jemalloc >= 3.3.0 |
732 | +Provides: tokudb-plugin = %{version}-%{release} |
733 | + |
734 | +%description -n Percona-Server-tokudb%{product_suffix} |
735 | +This package contains the TokuDB plugin for Percona Server %{version}-%{release} |
736 | +%endif |
737 | + |
738 | # ---------------------------------------------------------------------------- |
739 | %package -n Percona-Server-client%{product_suffix} |
740 | Summary: Percona Server - Client |
741 | Group: Applications/Databases |
742 | -Requires: Percona-Server-shared%{product_suffix} |
743 | +Requires: Percona-Server-shared%{product_suffix} |
744 | Provides: mysql-client MySQL-client mysql MySQL |
745 | Conflicts: Percona-SQL-client-50 Percona-Server-client-51 Percona-Server-client-55 |
746 | |
747 | @@ -331,6 +362,9 @@ |
748 | ############################################################################## |
749 | %prep |
750 | %setup -n %{src_dir} |
751 | +%if %{with tokudb} |
752 | +%setup -n %{src_dir} -T -D -b 1 |
753 | +%endif |
754 | ############################################################################## |
755 | %build |
756 | |
757 | @@ -350,7 +384,11 @@ |
758 | RPM_OPT_FLAGS= |
759 | %endif |
760 | # |
761 | +%if %{with tokudb} |
762 | +RPM_OPT_FLAGS= |
763 | +%else |
764 | RPM_OPT_FLAGS=$(echo ${RPM_OPT_FLAGS} | sed -e 's|-march=i386|-march=i686|g') |
765 | +%endif |
766 | # |
767 | export PATH=${MYSQL_BUILD_PATH:-$PATH} |
768 | export CC=${MYSQL_BUILD_CC:-${CC:-gcc}} |
769 | @@ -399,7 +437,8 @@ |
770 | -DINSTALL_SUPPORTFILESDIR=share/percona-server \ |
771 | -DMYSQL_UNIX_ADDR="/var/lib/mysql/mysql.sock" \ |
772 | -DFEATURE_SET="%{feature_set}" \ |
773 | - -DCOMPILATION_COMMENT="%{compilation_comment_debug}" |
774 | + -DCOMPILATION_COMMENT="%{compilation_comment_debug}" %{TOKUDB_FLAGS} %{TOKUDB_DEBUG_ON} |
775 | + |
776 | echo BEGIN_DEBUG_CONFIG ; egrep '^#define' include/config.h ; echo END_DEBUG_CONFIG |
777 | make %{?_smp_mflags} |
778 | ) |
779 | @@ -419,7 +458,8 @@ |
780 | -DINSTALL_SUPPORTFILESDIR=share/percona-server \ |
781 | -DMYSQL_UNIX_ADDR="/var/lib/mysql/mysql.sock" \ |
782 | -DFEATURE_SET="%{feature_set}" \ |
783 | - -DCOMPILATION_COMMENT="%{compilation_comment_release}" |
784 | + -DCOMPILATION_COMMENT="%{compilation_comment_release}" %{TOKUDB_FLAGS} %{TOKUDB_DEBUG_OFF} |
785 | + |
786 | echo BEGIN_NORMAL_CONFIG ; egrep '^#define' include/config.h ; echo END_NORMAL_CONFIG |
787 | make %{?_smp_mflags} |
788 | ) |
789 | @@ -452,7 +492,7 @@ |
790 | %install |
791 | |
792 | RBR=$RPM_BUILD_ROOT |
793 | -MBD=$RPM_BUILD_DIR/percona-server-%{mysql_version}-%{percona_server_version} |
794 | +MBD=$RPM_BUILD_DIR/%{src_dir} |
795 | |
796 | # Ensure that needed directories exists |
797 | install -d $RBR%{_sysconfdir}/{logrotate.d,init.d} |
798 | @@ -484,7 +524,9 @@ |
799 | # Install logrotate and autostart |
800 | install -m 644 $MBD/release/support-files/mysql-log-rotate $RBR%{_sysconfdir}/logrotate.d/mysql |
801 | install -m 755 $MBD/release/support-files/mysql.server $RBR%{_sysconfdir}/init.d/mysql |
802 | - |
803 | +# |
804 | +%{__rm} -f $RBR/%{_prefix}/README* |
805 | +# |
806 | # Delete the symlinks to the libraries from the libdir. These are created by |
807 | # ldconfig(8) afterwards. |
808 | rm -f $RBR%{_libdir}/libmysqlclient*.so.18 |
809 | @@ -898,6 +940,30 @@ |
810 | echo "=====" >> $STATUS_HISTORY |
811 | |
812 | |
813 | +%if %{with tokudb} |
814 | +# ---------------------------------------------------------------------------- |
815 | +%post -n Percona-Server-tokudb%{product_suffix} |
816 | + |
817 | +if [ $1 -eq 1 ] ; then |
818 | + echo "" |
819 | + echo "* This release of Percona Server is distributed with TokuDB storage engine." |
820 | + echo "* Run the following commands to enable the TokuDB storage engine in Percona Server:" |
821 | + echo "" |
822 | + echo "mysql -e \"INSTALL PLUGIN tokudb SONAME 'ha_tokudb.so';\"" |
823 | + echo "mysql -e \"INSTALL PLUGIN tokudb_file_map SONAME 'ha_tokudb.so';\"" |
824 | + echo "mysql -e \"INSTALL PLUGIN tokudb_fractal_tree_info SONAME 'ha_tokudb.so';\"" |
825 | + echo "mysql -e \"INSTALL PLUGIN tokudb_fractal_tree_block_map SONAME 'ha_tokudb.so';\"" |
826 | + echo "mysql -e \"INSTALL PLUGIN tokudb_trx SONAME 'ha_tokudb.so';\"" |
827 | + echo "mysql -e \"INSTALL PLUGIN tokudb_locks SONAME 'ha_tokudb.so';\"" |
828 | + echo "mysql -e \"INSTALL PLUGIN tokudb_lock_waits SONAME 'ha_tokudb.so';\"" |
829 | + echo "" |
830 | + echo "* See http://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_intro.html for more details" |
831 | + echo "" |
832 | +fi |
833 | +%endif |
834 | +# ---------------------------------------------------------------------------- |
835 | + |
836 | + |
837 | # ---------------------------------------------------------------------- |
838 | # Clean up the BuildRoot after build is done |
839 | # ---------------------------------------------------------------------- |
840 | @@ -982,8 +1048,57 @@ |
841 | %attr(755, root, root) %{_sbindir}/mysqld-debug |
842 | %attr(755, root, root) %{_sbindir}/rcmysql |
843 | %attr(644, root, root) %{_libdir}/mysql/plugin/daemon_example.ini |
844 | -%attr(755, root, root) %{_libdir}/mysql/plugin/*.so* |
845 | -%attr(755, root, root) %{_libdir}/mysql/plugin/debug/*.so* |
846 | + |
847 | +#plugins |
848 | +%attr(755, root, root) %{_libdir}/mysql/plugin/adt_null.so |
849 | +%attr(755, root, root) %{_libdir}/mysql/plugin/auth.so |
850 | +%attr(755, root, root) %{_libdir}/mysql/plugin/auth_socket.so |
851 | +%attr(755, root, root) %{_libdir}/mysql/plugin/auth_test_plugin.so |
852 | +%attr(755, root, root) %{_libdir}/mysql/plugin/innodb_engine.so |
853 | +%attr(755, root, root) %{_libdir}/mysql/plugin/libdaemon_example.so |
854 | +%attr(755, root, root) %{_libdir}/mysql/plugin/libfnv1a_udf.* |
855 | +%attr(755, root, root) %{_libdir}/mysql/plugin/libfnv_udf.* |
856 | +%attr(755, root, root) %{_libdir}/mysql/plugin/libmemcached.so |
857 | +%attr(755, root, root) %{_libdir}/mysql/plugin/libmurmur_udf.* |
858 | +%attr(755, root, root) %{_libdir}/mysql/plugin/mypluglib.so |
859 | +%attr(755, root, root) %{_libdir}/mysql/plugin/qa_auth_client.so |
860 | +%attr(755, root, root) %{_libdir}/mysql/plugin/qa_auth_interface.so |
861 | +%attr(755, root, root) %{_libdir}/mysql/plugin/qa_auth_server.so |
862 | +%attr(755, root, root) %{_libdir}/mysql/plugin/semisync_master.so |
863 | +%attr(755, root, root) %{_libdir}/mysql/plugin/semisync_slave.so |
864 | +%attr(755, root, root) %{_libdir}/mysql/plugin/validate_password.so |
865 | +%attr(755, root, root) %{_libdir}/mysql/plugin/auth_pam.so |
866 | +%attr(755, root, root) %{_libdir}/mysql/plugin/auth_pam_compat.so |
867 | +%attr(755, root, root) %{_libdir}/mysql/plugin/dialog.so |
868 | +%attr(755, root, root) %{_libdir}/mysql/plugin/handlersocket.so |
869 | + |
870 | +# %attr(755, root, root) %{_libdir}/mysql/plugin/debug/*.so* |
871 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/adt_null.so |
872 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/auth.so |
873 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/auth_pam.so |
874 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/auth_pam_compat.so |
875 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/auth_socket.so |
876 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/auth_test_plugin.so |
877 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/dialog.so |
878 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/innodb_engine.so |
879 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/libdaemon_example.so |
880 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/libfnv1a_udf.* |
881 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/libfnv_udf.* |
882 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/libmemcached.so |
883 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/libmurmur_udf.* |
884 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/mypluglib.so |
885 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/qa_auth_client.so |
886 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/qa_auth_interface.so |
887 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/qa_auth_server.so |
888 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/semisync_master.so |
889 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/semisync_slave.so |
890 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/validate_password.so |
891 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/handlersocket.so |
892 | +# Audit Log and Scalability Metrics files |
893 | +%attr(755, root, root) %{_libdir}/mysql/plugin/audit_log.so |
894 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/audit_log.so |
895 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/scalability_metrics.so |
896 | +%attr(755, root, root) %{_libdir}/mysql/plugin/scalability_metrics.so |
897 | |
898 | %if %{WITH_TCMALLOC} |
899 | %attr(755, root, root) %{_libdir}/mysql/%{malloc_lib_target} |
900 | @@ -992,7 +1107,48 @@ |
901 | %attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql |
902 | %attr(755, root, root) %{_sysconfdir}/init.d/mysql |
903 | |
904 | -%attr(755, root, root) %{_datadir}/percona-server/ |
905 | +# %attr(755, root, root) %{_datadir}/percona-server/ |
906 | +%attr(755, root, root) %{_datadir}/percona-server/binary-configure |
907 | +%attr(755, root, root) %{_datadir}/percona-server/bulgarian |
908 | +%attr(755, root, root) %{_datadir}/percona-server/charsets |
909 | +%attr(755, root, root) %{_datadir}/percona-server/czech |
910 | +%attr(755, root, root) %{_datadir}/percona-server/danish |
911 | +%attr(755, root, root) %{_datadir}/percona-server/dictionary.txt |
912 | +%attr(755, root, root) %{_datadir}/percona-server/dutch |
913 | +%attr(755, root, root) %{_datadir}/percona-server/english |
914 | +%attr(755, root, root) %{_datadir}/percona-server/errmsg-utf8.txt |
915 | +%attr(755, root, root) %{_datadir}/percona-server/estonian |
916 | +%attr(755, root, root) %{_datadir}/percona-server/fill_help_tables.sql |
917 | +%attr(755, root, root) %{_datadir}/percona-server/french |
918 | +%attr(755, root, root) %{_datadir}/percona-server/german |
919 | +%attr(755, root, root) %{_datadir}/percona-server/greek |
920 | +%attr(755, root, root) %{_datadir}/percona-server/hungarian |
921 | +%attr(755, root, root) %{_datadir}/percona-server/innodb_memcached_config.sql |
922 | +%attr(755, root, root) %{_datadir}/percona-server/italian |
923 | +%attr(755, root, root) %{_datadir}/percona-server/japanese |
924 | +%attr(755, root, root) %{_datadir}/percona-server/korean |
925 | +%attr(755, root, root) %{_datadir}/percona-server/magic |
926 | +%attr(755, root, root) %{_datadir}/percona-server/my-default.cnf |
927 | +%attr(755, root, root) %{_datadir}/percona-server/mysqld_multi.server |
928 | +%attr(755, root, root) %{_datadir}/percona-server/mysql-log-rotate |
929 | +%attr(755, root, root) %{_datadir}/percona-server/mysql_security_commands.sql |
930 | +%attr(755, root, root) %{_datadir}/percona-server/mysql.server |
931 | +%attr(755, root, root) %{_datadir}/percona-server/mysql_system_tables_data.sql |
932 | +%attr(755, root, root) %{_datadir}/percona-server/mysql_system_tables.sql |
933 | +%attr(755, root, root) %{_datadir}/percona-server/mysql_test_data_timezone.sql |
934 | +%attr(755, root, root) %{_datadir}/percona-server/norwegian |
935 | +%attr(755, root, root) %{_datadir}/percona-server/norwegian-ny |
936 | +%attr(755, root, root) %{_datadir}/percona-server/polish |
937 | +%attr(755, root, root) %{_datadir}/percona-server/portuguese |
938 | +%attr(755, root, root) %{_datadir}/percona-server/romanian |
939 | +%attr(755, root, root) %{_datadir}/percona-server/russian |
940 | +%attr(755, root, root) %{_datadir}/percona-server/SELinux |
941 | +%attr(755, root, root) %{_datadir}/percona-server/serbian |
942 | +%attr(755, root, root) %{_datadir}/percona-server/slovak |
943 | +%attr(755, root, root) %{_datadir}/percona-server/solaris |
944 | +%attr(755, root, root) %{_datadir}/percona-server/spanish |
945 | +%attr(755, root, root) %{_datadir}/percona-server/swedish |
946 | +%attr(755, root, root) %{_datadir}/percona-server/ukrainian |
947 | |
948 | # ---------------------------------------------------------------------------- |
949 | %files -n Percona-Server-client%{product_suffix} |
950 | @@ -1044,6 +1200,16 @@ |
951 | %{_libdir}/*.so |
952 | |
953 | # ---------------------------------------------------------------------------- |
954 | +%if %{with tokudb} |
955 | +%files -n Percona-Server-tokudb%{product_suffix} |
956 | +%attr(-, root, root) |
957 | +%{_bindir}/tokuftdump |
958 | +%{_includedir}/tdb-internal.h |
959 | +%{_libdir}/mysql/plugin/ha_tokudb.so |
960 | +%attr(755, root, root) %{_libdir}/mysql/plugin/debug/ha_tokudb.so |
961 | +%endif |
962 | + |
963 | +# ---------------------------------------------------------------------------- |
964 | %files -n Percona-Server-shared%{product_suffix} |
965 | %defattr(-, root, root, 0755) |
966 | # Shared libraries (omit for architectures that don't support them) |
967 | @@ -1076,6 +1242,10 @@ |
968 | %doc %attr(644, root, man) %{_mandir}/man1/mysqltest_embedded.1* |
969 | |
970 | %changelog |
971 | +* Mon May 26 2014 Tomislav Plavcic <tomislav.plavcic@percona.com> |
972 | + |
973 | +- Added packaging changes regarding TokuDB |
974 | + |
975 | * Thu Feb 10 2011 Ignacio Nin <ignacio.nin@percona.com> |
976 | |
977 | - Removed lines which prevented -debuginfo packages from being built. |
978 | |
979 | === modified file 'scripts/mysqld_safe.sh' |
980 | --- scripts/mysqld_safe.sh 2014-03-16 08:15:10 +0000 |
981 | +++ scripts/mysqld_safe.sh 2014-06-16 07:08:31 +0000 |
982 | @@ -375,6 +375,19 @@ |
983 | |
984 | |
985 | # |
986 | +# Add jemalloc to ld_preload - needed for TokuDB |
987 | +# |
988 | +for libjemall in "/usr/lib64" "/usr/lib/x86_64-linux-gnu" "/usr/lib" |
989 | +do |
990 | +if test -f "$libjemall/libjemalloc.so.1" |
991 | +then |
992 | + add_mysqld_ld_preload "$libjemall/libjemalloc.so.1" |
993 | + break |
994 | +fi |
995 | +done |
996 | + |
997 | + |
998 | +# |
999 | # First, try to find BASEDIR and ledir (where mysqld is) |
1000 | # |
1001 | |
1002 | |
1003 | === modified file 'sql/handler.h' |
1004 | --- sql/handler.h 2014-06-04 14:48:06 +0000 |
1005 | +++ sql/handler.h 2014-06-16 07:08:31 +0000 |
1006 | @@ -395,6 +395,7 @@ |
1007 | DB_TYPE_MEMCACHE, |
1008 | DB_TYPE_FALCON, |
1009 | DB_TYPE_MARIA, |
1010 | + DB_TYPE_TOKUDB=41, |
1011 | /** Performance schema engine. */ |
1012 | DB_TYPE_PERFORMANCE_SCHEMA, |
1013 | DB_TYPE_FIRST_DYNAMIC=42, |
1014 | |
1015 | === modified file 'storage/innobase/include/univ.i' |
1016 | --- storage/innobase/include/univ.i 2014-06-11 13:45:54 +0000 |
1017 | +++ storage/innobase/include/univ.i 2014-06-16 07:08:31 +0000 |
1018 | @@ -47,7 +47,7 @@ |
1019 | #define INNODB_VERSION_BUGFIX MYSQL_VERSION_PATCH |
1020 | |
1021 | #ifndef PERCONA_INNODB_VERSION |
1022 | -#define PERCONA_INNODB_VERSION 65.0 |
1023 | +#define PERCONA_INNODB_VERSION 66.0 |
1024 | #endif |
1025 | |
1026 | /* Enable UNIV_LOG_ARCHIVE in XtraDB */ |
sql/handler.h change is spurious and will be reverted in trunk after this is merged.
mysqld_safe.sh patch means that jemalloc will always be loaded if found in the checked paths, regardless of TokuDB presence, with no option to avoid it. Was this agreed on somewhere?