In many cases, binaries can no longer dump core after calling setuid().
Where the PR_SET_DUMPABLE macro is set, use the prctl() system call
to tell the kernel that it's allowed to dump the core of the server.
Don't try determine stack direction at configure time
compiler_flag.m4:
Use AC_TRY_COMPILE and AC_TRY_LINK instead of AC_TRY_RUN where possible
misc.m4, configure.in:
Use fourth argument to AC_TRY_RUN, to be used in cross compilation
Don't try determine stack direction at configure time
- Since isinf() portability across various platforms and
compilers is a complicated question, we should not use
it directly. Instead, the my_isinf() macro should be used,
which is defined as an alias to the system-defined isinf()
if it is safe to use, or a workaround implementation otherwise
DragonflyBSD misc patches
The bug reporter anticipated a problem, instead of experiencing one.
IRC conversation:
<xtraeme> sem_init is defined in librt on NetBSD
solaris uses libposix4 iirc
that's why I sent a patch
<chadmiller> xtraeme: Agreed. But, AFAICT, mysql doesn't use
sem_init() anywhere. Thus my confusion.
<xtraeme> I didn't verify that, but I saw that sem_init wasn't detected
correctly...
why are you checking for sem_init if it's unused then? :-)
<chadmiller> xtraeme: In recent autoconf scripts, we change it to test
for sched_yield() .
<xtraeme> that's ok then
sched_yield is in libc
feel free to close the bug report then :-)
Since isinf() portability across various platforms and compilers is a complicated question, we should not use it directly. Instead, the my_isinf() macro should be used, which is defined as an alias to the system-defined isinf() if it is safe to use, or a workaround implementation otherwise.
renamed. Some new THD proc_info states are new. Directories must be
encountered in make in a specific order, to have symlinks already set.
Move community-server-specific tests into own tests, so that we can
exempt them from testing on enterprise servers.
Add a new autoconf paremeter --{en,dis}able-community-features . The
default is disable for enterprise servers.
Though this is a 5.0 tree, it is only to be merged into the 5.0-community
tree and the global 5.1 tree, never to the 5.0-enterprise tree.
not some other tool (file system checker on Tru64).
Patch originally supplied by Peter O'Gorman, slightly modified by me.
Bug#27739 "build fails on Tru64 due to icheck test in configure"
Replaced hardcoded sover reference with variable.
Removed references to added manpages.
---
BUG#27769
Cleaned up some things to make building the packages go a little smoother.
---
debian/rules really does need to be called from the source root.
---
Fixed two problems with the build caused by adding debian to the source tree
---
Left off the debian/ prefix to the Makefile filter.
---
BUG#27769 - MySQL should include debian packaging dir
Changed substitution variables to match already existing autoconf vars.
Generate debian/control and debian/defs.mk from autoconf now, since we run that
to make a source package.
---
Corrected incorrect variable name
---
Renamed template files to have shorter names.
---
Moved generation of debian/control to dist-hook so make clean won't eat it.
---
A few final changes to make debs build from a source tarball dist.
also control the list of man pages installed, so that they correspond better to the binaries.
This is the second version of this fix, including review comments.
---
Removed reference to debian svn location of debian dir.
Changed verbage of comment to appease Timothy.
---
Removed added manpages that aren't appropriate for our build.
---
Added debian dir to list of dist targets.
Added list of files needed to be distributed in debian dir.
---
Added semi-colons to fix syntax error.
---
BUG#27769 MySQL should include debian packaing dir
Added debian/Makefile to configure.in to support make dist.
Only require the more recent zlibCompileFlags() when
building the server, client zlib don't need it.
Makefile.am:
Always build the bundled zlib static only
configure.in:
Look for dlopen() even if --with-mysqld-ldflags constains "-static",
as this is not the same as the flag to "ld", it just informs
"libtool" to link static with libraries created part of the build,
even if there exists shared versions.
make_binary_distribution.sh:
Real "mysqlmanager" executable might be in ".libs"
B-g#27427: resolveip fails on hostnames with a leading digit
We need inet_aton for the extra/resolveip tool. Some OSes put this
in nonstandard libraries.
Fixed compile-pentium64 scripts
Fixed wrong estimate of update_with_key_prefix in sql-bench
Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1
Fixed unsafe define of uint4korr()
Fixed that --extern works with mysql-test-run.pl
Small trivial cleanups
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries
Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc
Split handle_one_connection() into reusable sub functions.
Split create_new_thread() into reusable sub functions.
Added thread_scheduler; Preliminary interface code for future thread_handling code.
Use 'my_thread_id' for internal thread id's
Make thr_alarm_kill() to depend on thread_id instead of thread
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
In store_globals(), set my_thread_var->id to be thd->thread_id.
Use my_thread_var->id as basis for my_thread_name()
The above changes makes the connection we have between THD and threads more soft.
Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions
Fixed compiler warnings
Fixed core dumps when running with --debug
Removed setting of signal masks (was never used)
Made event code call pthread_exit() (portability fix)
Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called.
Made handling of thread_id and thd->variables.pseudo_thread_id uniform.
Removed one common 'not freed memory' warning from mysqltest
Fixed a couple of usage of not initialized warnings (unlikely cases)
Suppress compiler warnings from bdb and (for the moment) warnings from ndb
to a single statement.
---
Bug#24795: SHOW PROFILE
Profiling is only partially functional on some architectures. Where
there is no getrusage() system call, presently Null values are
returned where it would be required. Notably, Windows needs some love
applied to make it as useful.
Syntax this adds:
SHOW PROFILES
SHOW PROFILE [types] [FOR QUERY n] [OFFSET n] [LIMIT n]
where "n" is an integer
and "types" is zero or many (comma-separated) of
"CPU"
"MEMORY" (not presently supported)
"BLOCK IO"
"CONTEXT SWITCHES"
"PAGE FAULTS"
"IPC"
"SWAPS"
"SOURCE"
"ALL"
It also adds a session variable (boolean) "profiling", set to "no"
by default, and (integer) profiling_history_size, set to 15 by
default.
This patch abstracts setting THDs' "proc_info" behind a macro that
can be used as a hook into the profiling code when profiling
support is compiled in. All future code in this line should use
that mechanism for setting thd->proc_info.
---
Tests are now set to omit the statistics.
---
Adds an Information_schema table, "profiling" for access to
"show profile" data.
---
Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community-3--bug24795
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-community
---
Fix merge problems.
---
Fixed one bug in the query_source being NULL.
Updated test results.
---
Include more thorough profiling tests.
Improve support for prepared statements.
Use session-specific query IDs, starting at zero.
---
Selecting from I_S.profiling is no longer quashed in profiling, as
requested by Giuseppe.
Limit the size of captured query text.
No longer log queries that are zero length.
additional files that specify some actions which are allowed to the MySQL binaries.
Create a new subdirectory "supportfiles/RHEL4-SElinux" for them, and process it.
This fixes bug#12676.
- configure --disable-grant-options defines DISABLE_GRANT_OPTIONS
- configure.js/cmake also updated
- if DISABLE_GRANT_OPTIONS is defined, mysqld no longer recognizes:
--bootstrap
--init-file
--skip-grant-tables
Scripts which rely on those three options are modified to check the environment for MYSQLD_BOOTSTRAP; it should be set to the full path of a mysqld which does handle those options.
For example:
$ export MYSQLD_BOOTSTRAP
$ MYSQLD_BOOTSTRAP=/path/to/full/MySQL/bin/mysqld
$ mysql_install_db
$ make test