Re: [Maria-developers] I would like to run a buildbot
Dan Demeter <dan@apexis.ro> writes:
I would be happy to compile and install the latest CLANG if you want. Currently I am compiling with gcc version 4.4.3 ( the stock one from Ubuntu repos ).
I think the currently configured builder (dan_demeter1) is fine for now. For the other one, it sounds like a good idea to install CLANG.
Actually, I managed to install Build Slave on a VM and it connected and it's running.
Yes, it seems to be working fine, great! I am looking into the test failures, and I may need help with tracking down one of them. We have a test that causes the server to crash like this: 130414 13:57:41 [ERROR] mysqld got signal 6 ; stack_bottom = 0x0 thread_stack 0x48000 mysys/stacktrace.c:247(my_print_stacktrace)[0xb2ef89] sql/signal_handler.cc:153(handle_fatal_signal)[0x71cb1b] ??:0(??)[0x7f82edc528f0] ??:0(??)[0x7f82ec98fa83] sql/mysqld.cc:5556(handle_connections_sockets())[0x51ca2e] sql/mysqld.cc:5007(mysqld_main(int, char**))[0x52359f] ??:0(??)[0x7f82ec8d1c4d] ??:0(_start)[0x516c4d] Writing a core file As you see, there is not much information to go by. Here are some suggestions you can try on the dan_demeter1 host to get more information available: - Install gdb (if not there already). mysql-test-run can use gdb to obtain better stack traces from core files. - Enable core files in current directory (if not enabled already). It looks like mysql-test-run does not find any core file, even though the log says that one is written. Maybe there is some default ubuntu security configuration or something that disables core files, or puts them in a different location? Not 100% sure, but something to check... - Maybe you can install debug symbols for libc (apt-get install libc6-dbg) to attempt to get better information in the stack trace (if not there already). - Maybe Serg (Cc:'ed) has an idea about what to install to get better stack traces than the above. Thanks, - Kristian.
Hi Kristian, The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ? On 15/04/2013 11:26, Kristian Nielsen wrote:
Yes, it seems to be working fine, great!
I am looking into the test failures, and I may need help with tracking down one of them. We have a test that causes the server to crash like this:
130414 13:57:41 [ERROR] mysqld got signal 6 ;
stack_bottom = 0x0 thread_stack 0x48000 mysys/stacktrace.c:247(my_print_stacktrace)[0xb2ef89] sql/signal_handler.cc:153(handle_fatal_signal)[0x71cb1b] ??:0(??)[0x7f82edc528f0] ??:0(??)[0x7f82ec98fa83] sql/mysqld.cc:5556(handle_connections_sockets())[0x51ca2e] sql/mysqld.cc:5007(mysqld_main(int, char**))[0x52359f] ??:0(??)[0x7f82ec8d1c4d] ??:0(_start)[0x516c4d]
Writing a core file
As you see, there is not much information to go by. Here are some suggestions you can try on the dan_demeter1 host to get more information available:
- Install gdb (if not there already). mysql-test-run can use gdb to obtain better stack traces from core files. It was not installed, added to my how-to and installed it on my both hosts
- Enable core files in current directory (if not enabled already). It looks like mysql-test-run does not find any core file, even though the log says that one is written. Maybe there is some default ubuntu security configuration or something that disables core files, or puts them in a different location? Not 100% sure, but something to check... uhm, Not sure how to do this. Is this http://ubuntuforums.org/archive/index.php/t-313498.html the option you are talking about? I can tweak the /etc/security/limits.conf file if needed.
- Maybe you can install debug symbols for libc (apt-get install libc6-dbg) to attempt to get better information in the stack trace (if not there already). Done that!
Check now if you have better debug messages, with gdb and debug symbols installed. If not, then I will take a look on the core file directory. Any other ideas are welcomed :) Regards, Dan
-----Original Message----- From: Maria-developers [mailto:maria-developers- bounces+wlad=montyprogram.com@lists.launchpad.net] On Behalf Of Dan Demeter Sent: Montag, 15. April 2013 15:59 To: Kristian Nielsen Cc: maria-developers@lists.launchpad.net Subject: Re: [Maria-developers] I would like to run a buildbot
Hi Kristian,
The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ?
You can do either with environment variables, or passing compiler as parameter to cmake Variant 1 would be export CC=clang export CXX=clang++ cmake will pick environment then, Variant 2 would be cmake <path> -DCMAKE_C_COMPILER=/path/to/clang -DCMAKE_CXX_COMPILER=/path/to/clang++ HTH Wlad
"Vladislav Vaintroub" <wlad@montyprogram.com> writes:
You can do either with environment variables, or passing compiler as parameter to cmake
Thanks for the info wlad! Dan: note that I will set this up on the Buildbot side. You do not need to do anything on your side except install clang. - Kristian.
Ah, sorry, didn't see the last e-mail. Installed clang on both machines :) Dan On 15/04/2013 17:17, Kristian Nielsen wrote:
"Vladislav Vaintroub" <wlad@montyprogram.com> writes:
You can do either with environment variables, or passing compiler as parameter to cmake Thanks for the info wlad!
Dan: note that I will set this up on the Buildbot side. You do not need to do anything on your side except install clang.
- Kristian.
Hi, That's what I knew also. So it's you who needs to decide which compilers should be used on which host with buildbot ... ? Regards, Dan On 15/04/2013 16:03, Vladislav Vaintroub wrote:
-----Original Message----- From: Maria-developers [mailto:maria-developers- bounces+wlad=montyprogram.com@lists.launchpad.net] On Behalf Of Dan Demeter Sent: Montag, 15. April 2013 15:59 To: Kristian Nielsen Cc: maria-developers@lists.launchpad.net Subject: Re: [Maria-developers] I would like to run a buildbot
Hi Kristian,
The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ? You can do either with environment variables, or passing compiler as parameter to cmake
Variant 1 would be
export CC=clang export CXX=clang++
cmake will pick environment then,
Variant 2 would be
cmake <path> -DCMAKE_C_COMPILER=/path/to/clang -DCMAKE_CXX_COMPILER=/path/to/clang++
HTH Wlad
Dan Demeter <dan@apexis.ro> writes:
The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ?
I will handle this from my side, as desribed by Wlad in another mail. The build currently fails. I think you need to install libncurses5-dev?
- Enable core files in current directory (if not enabled already). It looks
uhm, Not sure how to do this. Is this http://ubuntuforums.org/archive/index.php/t-313498.html the option you
No, this (ulimit -c) should not be needed, I think ...
are talking about? I can tweak the /etc/security/limits.conf file if needed.
Yes, if there is a limit on core file size in limits.conf, then you probably need to remove it, core files can become rather big. But I am not sure here, I was just trying to guess why mysql-test-run was not finding a core file. I am not even sure if the problem is the core is not generated, or if the core is generated but not found for some reason.
Check now if you have better debug messages, with gdb and debug symbols installed. If not, then I will take a look on the core file directory.
Thanks, I will check once a new build has completed and let you know. - Kristian.
Kristian Nielsen <knielsen@knielsen-hq.org> writes:
Dan Demeter <dan@apexis.ro> writes:
The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ?
I will handle this from my side, as desribed by Wlad in another mail.
The build currently fails. I think you need to install libncurses5-dev?
Ok, I set it to use clang, it fails like this: https://buildbot.askmonty.org/buildbot/builders/bld-dan-release/builds/89/st... CMake Error at /usr/share/cmake-2.8/Modules/CMakeDetermineCXXCompiler.cmake:43 (MESSAGE): Could not find compiler set in environment variable CXX: clang++. Do you know if you need to install clang++, or if it is called something else? Wlad?
Check now if you have better debug messages, with gdb and debug symbols installed. If not, then I will take a look on the core file directory.
Thanks, I will check once a new build has completed and let you know.
Hm, no it did not help :-( So yes, please check if you can find any core files. Also, can you let me know exactly which version of Ubuntu (I think you mentioned using that) is installed? 32 or 64 bit? GCC version? Then I could try reproduce myself, I have VMs of most of the Ubuntu's available... - Kristian.
-----Original Message----- From: Kristian Nielsen [mailto:knielsen@knielsen-hq.org] Sent: Dienstag, 16. April 2013 09:36 To: Dan Demeter Cc: maria-developers@lists.launchpad.net; Vladislav Vaintroub Subject: Re: [Maria-developers] I would like to run a buildbot
Kristian Nielsen <knielsen@knielsen-hq.org> writes:
Dan Demeter <dan@apexis.ro> writes:
The other builder is set up now :) I have installed clang on the 2nd host also, but I don't know how to make the mariadb build process use clang instead of gcc / g++ ? Do I need to uninstall gcc / g++ and make a symlink ?
I will handle this from my side, as desribed by Wlad in another mail.
The build currently fails. I think you need to install libncurses5-dev?
Ok, I set it to use clang, it fails like this:
https://buildbot.askmonty.org/buildbot/builders/bld-dan- release/builds/89/steps/compile/logs/stdio
CMake Error at /usr/share/cmake- 2.8/Modules/CMakeDetermineCXXCompiler.cmake:43 (MESSAGE): Could not find compiler set in environment variable CXX:
clang++.
Do you know if you need to install clang++, or if it is called something else? Wlad?
It should probably be just clang . On Ubuntu, I used clang++, but I checked now, it is just a symlink to clang :)
"Vladislav Vaintroub" <wlad@montyprogram.com> writes:
It should probably be just clang .
Thanks, that seems to have worked. Dan, now the next step is to install curses development files: apt-get install libncurses5-dev - Kristian.
Hi Kristian, I will check for core files and version of compiler later tonight. I know for sure I am using Ubuntu 10.04. I have attached also my steps of installing buildbot slave on both my machines. Maybe they help you understand what I (didn't) do. Regards, Dan On 16/04/2013 09:22, Kristian Nielsen wrote:
"Vladislav Vaintroub" <wlad@montyprogram.com> writes:
It should probably be just clang . Thanks, that seems to have worked.
Dan, now the next step is to install curses development files:
apt-get install libncurses5-dev
- Kristian.
participants (3)
-
Dan Demeter
-
Kristian Nielsen
-
Vladislav Vaintroub