mariadb/src
Dave Wells b611db04c2 cleanup error handling in toku_brt_loader_open, toku_loader_open
git-svn-id: file:///svn/toku/tokudb@20331 c7de825b-a66e-492c-adef-691d508d4ae1
2013-04-16 23:59:12 -04:00
..
lock_tree [t:2504] Bug fix, do not attempt to update accountability counters when toku_lt_acquire_range_read_lock() or toku_lt_acquire_range_write_lock() is called with NULL tree. 2013-04-16 23:59:11 -04:00
range_tree c++ize the ydb and locktree include files refs[t:2511] 2013-04-16 23:59:08 -04:00
tests Merge in memory management for the extractor thread. Refs . [t:2613]. 2013-04-16 23:59:12 -04:00
elocks.c merge 3.0.5 -c 18481 to main refs[t:2467] 2013-04-16 23:59:04 -04:00
errors.c Addresses Merge [12079] into main (pthreads-win32 for windows) 2013-04-16 23:57:53 -04:00
export.map Closes [t:2612] Make separate override functions for use by toku_os_write(), toku_os_full_write(), toku_os_pwrite(), and toku_os_full_pwrite(). Modify src/tests/diskfull.c to use new override functions. 2013-04-16 23:59:11 -04:00
loader.c cleanup error handling in toku_brt_loader_open, toku_loader_open 2013-04-16 23:59:12 -04:00
loader.h [t:2504] Improve engine status. 2013-04-16 23:59:11 -04:00
Makefile Merge the changes from 2499d onto the main line. Fixes . close[t:2499]. 2013-04-16 23:59:09 -04:00
README Rename 2007-07-13 19:37:47 +00:00
tokuglobals.py fix the library globals error filter 2013-04-16 23:59:11 -04:00
ydb-internal.h [t:2504] Improve engine status. 2013-04-16 23:59:11 -04:00
ydb.c Closes [t:2612] Make separate override functions for use by toku_os_write(), toku_os_full_write(), toku_os_pwrite(), and toku_os_full_pwrite(). Modify src/tests/diskfull.c to use new override functions. 2013-04-16 23:59:11 -04:00
ydb.h c++ize the ydb and locktree include files refs[t:2511] 2013-04-16 23:59:08 -04:00
ydb_lib.c closes[t:2515] Accurately distinguish between 32bit and 64bit windows 2013-04-16 23:59:06 -04:00
ydb_load.h closes[t:2483] Fix recovery bug in loader. 2013-04-16 23:59:05 -04:00

cd ~/yobiduck/ydb/src
make


cd ~/mysql/bdbi/mysql-5.0.27/
export LD_RUN_PATH=/home/bradley/yobiduck/ydb/src
./configure --with-berkeley-db-includes=/home/bradley/yobiduck/ydb/include --with-berkeley-db --with-berkeley-db-libs=/home/bradley/yobiduck/ydb/src --prefix=/home/bradley/usr

make

make install

#This one may not be needed
~/mysql/bdbi/usr/bin/mysql_install_db

#
pushd /home/bradley/mysql/bdbi/usr/ ; /home/bradley/mysql/bdbi/usr//bin/mysqld_safe &
popd

~/mysql/bdbi/usr/bin/mysql -u root
mysql> show databases;
mysql> create database yobitest;
mysql> use yobitest;
mysql> create table t1 (i int) engine=bdb;

Look for the error in /home/bradley/mysql/bdbi/usr/var/yobert.err



----
This links right:
 LD_LIBRARY_PATH=/home/bradley/mysql/bdbi/usr/lib/mysql/ ldd sql/mysqld
----
This works, 
 LD_LIBRARY_PATH=/home/bradley/mysql/bdbi/usr/lib/mysql/ /home/bradley/mysql/bdbi/usr//bin/mysqld
producing the following in the log

061208 16:11:35  InnoDB: Started; log sequence number 0 43655
ydb.c:78 db_env_create flags=0

----
 the LD_RUN_PATH thing above works.


--- on laptop I did this instead:

export LD_RUN_PATH=/home/bradley/yobiduck/ydb/src
./configure --with-berkeley-db-includes=/home/bradley/yobiduck/ydb/include --with-berkeley-db --with-berkeley-db-libs=/home/bradley/yobiduck/src --prefix=/home/bradley/usr

make
make install
/home/bradley/usr/bin/mysql_install_db 
/home/bradley/usr/bin/mysqld_safe &
/home/bradley/usr/bin/mysql -u root
~/mysql/bdbi/usr/bin/mysql -u root
mysql> show databases;
mysql> create database yobitest;
mysql> use yobitest;
mysql> create table t1 (i int) engine=bdb;

Look for the error in ~/usr/var/localhost.localdomain.err

---
To clean up after a total screwup:

rm -rf ~/usr/var/

Didn't manage to clean it up very well.

---
Goal: compiler mysql wiht debugging

export LD_RUN_PATH=/home/bradley/yobiduck/ydb/src
./configure CFLAGS="-g -O2" --with-berkeley-db-includes=/home/bradley/yobiduck/ydb/include --with-berkeley-db --with-berkeley-db-libs=/home/bradley/yobiduck/src --prefix=/home/bradley/usr

If you want to debug, you might need to start mysqld without using mysqld_safe.
Here is one way to do it:

gdb ~/usr/libexec/mysqld
(gdb) run --basedir=/home/bradley/usr --datadir=/home/bradley/usr/var --pid-file=/home/bradley/usr/var/localhost.localdomain.pid --skip-external-locking


That was screwed up (the configure args were wrong.)  Try again:

---
export LD_RUN_PATH=/home/bradley/yobiduck/ydb/src
./configure CXXFLAGS="-g -O2" CFLAGS="-g -O2" --with-berkeley-db-includes=/home/bradley/yobiduck/ydb/include --with-berkeley-db --with-berkeley-db-libs=/home/bradley/yobiduck/ydb/src --prefix=/home/bradley/usr

gdb ~/usr/libexec/mysqld
(gdb) run --basedir=/home/bradley/usr --datadir=/home/bradley/usr/var --pid-file=/home/bradley/usr/var/localhost.localdomain.pid --skip-external-locking