5.0.77 released Reproducible: Always
I've had no trouble building mysql-community-5.0.77 by simply bumping the ebuild and the mysql-extras patchset with the percona 77-b13 patches. As before, I left out the mirror_binlog patch. However, I did add the percona innodb_dict_size_limit patch in slot 1014. Note that with the new 1101_all_innodb_rw_lock-percona-5.0.77-b13.patch mysql-community will no longer compile with GCC-3: +#ifdef HAVE_ATOMIC_BUILTINS +/* This value means NOT_LOCKED */ +#define RW_LOCK_BIAS 0x00100000 +#else +#error HAVE_ATOMIC_BUILTINS is not defined. Do you use enough new GCC or compatibles? +#error Or do you use exact options for CFLAGS? +#error e.g. (for x86_32): "-m32 -march=i586 -mtune=i686" +#error e.g. (for Sparc_64): "-m64 -mcpu=v9" +#error Otherwise, this build may be slower than normal version. +#endif Previously there was not an #else statement defined in this patch.
I'm using gcc-4.3 perhaps you could check if your index is different from mine? the order and what not? all the patches apply cleanly I just get build errors. 86_64-pc-linux-gnu-g++ -DEMBEDDED_LIBRARY -DMYSQL_SERVER -DDEFAULT_MYSQL_HOME="\"/usr\"" -DDATADIR="\"/var/lib/mysql\"" -DSHAREDIR="\"/usr/share/mysql\"" -I. -I../include -I../innobase/include -I../innobase/include -I../include -I../include -I../sql -I../sql -I../sql/examples -I../regex -DDBUG_OFF -O2 -pipe -DHAVE_ERRNO_AS_DEFINE=1 -fno-exceptions -fno-strict-aliasing -felide-constructors -fno-rtti -fno-implicit-templates -fno-implicit-templates -fno-exceptions -fno-rtti -MT field_conv.o -MD -MP -MF .deps/field_conv.Tpo -c -o field_conv.o field_conv.cc In file included from lib_sql.cc:34: ../sql/mysqld.cc: In function ‘int init_server_components()’: ../sql/mysqld.cc:3436: error: ‘make_master_open_index’ was not declared in this scope ../sql/mysqld.cc:3488: error: ‘make_master’ was not declared in this scope make[3]: *** [lib_sql.o] Error 1 make[3]: *** Waiting for unfinished jobs.... mv -f .deps/derror.Tpo .deps/derror.Po mv -f .deps/field_conv.Tpo .deps/field_conv.Po mv -f .deps/field.Tpo .deps/field.Po make[3]: Leaving directory `/mnt/sda8/tmp/portage/dev-db/mysql-community-5.0.77/work/mysql/libmysqld' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/mnt/sda8/tmp/portage/dev-db/mysql-community-5.0.77/work/mysql/libmysqld' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/mnt/sda8/tmp/portage/dev-db/mysql-community-5.0.77/work/mysql' make: *** [all] Error 2 I was talking about this on the mailing list as I was trying to keep my silly trying to understand the mysql-extras process off the bugtracker. I've not yet tried removing the binlog-mirroring stuff.
xenoterracide: You're still applying the mirror_binlog.patch. Look more closely at the SRPM specfile, it doesn't apply it (%patch6 is commented out). Here's the data from the SRPM specfile, with line numbers at the start. Use the patch number to match the numbering (with an offset) in the Gentoo patchset. Part 1 (ordering/numbering): 123 Patch1: show_patches.patch 124 Patch2: microslow_innodb.patch 125 Patch3: userstatv2.patch 126 Patch4: microsec_process.patch 127 Patch5: innodb_io_patches.patch 128 Patch6: mirror_binlog.patch 129 Patch7: mysqld_safe_syslog.patch 130 Patch8: innodb_locks_held.patch 131 Patch9: innodb_show_bp.patch 132 Patch10: innodb_show_hashed_memory.patch 133 Patch11: innodb_check_fragmentation.patch 134 Patch12: innodb_io_pattern.patch 135 Patch13: innodb_fsync_source.patch 136 Patch14: innodb_dict_size_limit.patch 137 Patch100: split_buf_pool_mutex_fixed_optimistic_safe.patch 138 Patch101: innodb_rw_lock.patch Part 2 (critically important, is the details of which patches are applied): 261 %prep 262 %setup -n mysql-%{mysqlversion} 263 %patch1 -p1 264 %patch2 -p1 265 %patch3 -p1 266 %patch4 -p1 267 %patch5 -p1 268 #%patch6 -p1 269 %patch7 -p1 270 %patch8 -p1 271 %patch9 -p1 272 %patch10 -p1 273 %patch11 -p1 274 %patch12 -p1 275 %patch13 -p1 276 %patch14 -p1 277 %if %{perconahighperf} 278 %patch100 -p1 279 %patch101 -p1 280 %endif Also with respect to testing, please see the test instructions on the mysql stabilisation bugs.
gengor: should I just wrap that code in 1101 with an ifdef checking the GCC version?
> 136 Patch14: innodb_dict_size_limit.patch > 137 Patch100: split_buf_pool_mutex_fixed_optimistic_safe.patch > 138 Patch101: innodb_rw_lock.patch why are these 100 and 101 not 15/16 ?
xeno: because Percona is saving the base 0xx numbering for non highperf patches.
5.0.77 in the tree now. xenoterracide: if your C and build-foo is up to speed, feel free to muck about on the patch from bug 238487 to solve amarok's build issues.