# firebird exited on signal 10 (core dumped)



## netaccs (Jun 5, 2018)

Hello.
FreeBSD 9.1 with firebird server 2.1.4 installed. At some time have to upgrade to 2.5.8.
I decide to install on another FreeBSD 11.1. for testing, before upgrade the working one. Install 2.5.8 from ports and started from inetd.
I create backup of my 2.14 db with `gbak -v -t -user SYSDBA -password pass fdb > fbk` and transfer file to the new server. Tried also with `gbak -c -v` options.
The backup/restore procedure works on 2.1.4 db server.

Then I try to restore on the new 2.5.8 server with `gbak -r o -v -user SYSDBA -password masterkey fbk > fdb` but got error:

```
kernel: pid 36211 (gbak), uid 0: exited on signal 10 (core dumped)
```
I try with another database - same result. Trying to add in rc.conf _superserver_, trying to start firebird from /usr/local/etc/rc.d/firebird start/stop script instead of rc.d.
and every time got error -> 
	
	



```
kernel: pid 36202 (fb_inet_server), uid 90: exited on signal 10 [/I]or [I] (gbak), uid 0: exited on signal 10 (core dumped)
```
.
Took another firebird db from other firebird db server. With backup/restore it restores and works on 2.1.4 db server, but can't on 2.5.8
Try to deinstall and clean firebird from ports. Then install from pkg - same result. It seems firebird is working, tcp 3050 is listening, I changed SYSDBA password.
Try all of this to another 11.1p4 distro and I have same result.

What could be the reason of those core dumped errors?

Thanks in advance !


----------



## SirDice (Jun 5, 2018)

FreeBSD 9.1 has been End-of-Life since December 2014 and is not supported any more.
https://www.freebsd.org/security/unsupported.html

As for upgrading the database, a quick skim through the documentation shows it's not easy to do:
https://www.firebirdsql.org/file/co...ading-from-firebird-1-5-to-2-5-and-beyond.pdf


----------



## netaccs (Jun 5, 2018)

Other two db servers are with 11.1.
I have issues both of them, not on ver9.


----------



## SirDice (Jun 6, 2018)

netaccs said:


> FreeBSD 9.1 with firebird server 2.1.4 installed. At some time have to upgrade to 2.5.8.


This implies you're going to update the database on FreeBSD 9.1 at some point in time. Hence the warning. It it just a friendly reminder to stop using FreeBSD 9.


----------



## netaccs (Jun 6, 2018)

It is not problem to perform update, but I have issues with firebird 2.5.8. So if I make upgrade from 9 to 11, probably the issue will remain.

Can I run some debug log or change some value. I think the problem is from firebird, cause I get same error on different databases on two different virtual machines?

Also when I try to create local database I got error:

```
isql-fb
Use CONNECT or CREATE DATABASE to specify a database
SQL> CREATE DATABASE '/test/my.fdb';
Bus error (core dumped)
```
In _/var/log/messages_
kernel: pid 40520 (isql-fb), uid 0: exited on signal 10 (core dumped)


----------



## torindel (Aug 1, 2018)

Note: Firebird was, is and *will be* buggy as h***.

11.2-RELEASE Quick and dirty fix:
* Install clang34 (same as in FreeBSD 10.4) :

```
cd /usr/ports/lang/clang34 && make install
```


* Compile firebird with old clang (this evades all kinds of problems, including iconv/icu problems in /usr/local/libexec/firebird/intl/fbintl.so) :
p.s. don't forget to clean work dir/uninstall your current firebird if you tried to get it to work earlier

```
cd /usr/ports/databases/firebird25-client && make CC=clang34 CXX=clang++34 CPP=clang-cpp34 install
cd /usr/ports/databases/firebird25-server && make CC=clang34 CXX=clang++34 CPP=clang-cpp34 install
```


* Increase semaphores amount for use with small to medium firebird databases (firebird uses semaphores for inter-thread locking -.-) :

```
echo 'kern.ipc.semmni="10240"' >> /boot/loader.conf
echo 'kern.ipc.semmns="20480"' >> /boot/loader.conf
echo 'kern.ipc.semmsl="10240"' >> /boot/loader.conf
```


* Reboot to apply semaphore settings.

* Be happy, your core dump problems (bugs in firebird) should be currently evaded.


----------



## gborsoi (Apr 2, 2020)

Instead of creating another topic, I will continue this one because my problem is similar.
My current server is running FreeBSD 9.2.
I have installed many services, including Firebird 2.5.2
It is a good hardware with 12GB of RAM, 2 processors and 4 SAS disks.
As I have spare discs, I decided to install FreeBSD 12.1 64 bits to test all services before transferring the data and putting it into production. All worked fine except for the Firebird25-server. Bus error.
In LLDB debug it shows error in the fbintl.so library: CVICU_convert_init (charset *) () from /usr/local/libexec/firebird/intl/fbintl.so
As I am stubborn, I tested with FreeBSD 12.1 i386 and to my surprise the Firebird25-server worked 100%.
The problem is that I don't want to install 32bits since I can't take advantage of the 12GB of RAM.
This topic is from 2018 and today we are in 2020. Question: Does anyone have a suggestion on how to solve this problem?
I need to build and install firebird25-server in amd64...

Thank you. 

Sorry about my english.

Gelson Borsoi
Brazil - SC - Chapecó


----------



## tingo (Apr 2, 2020)

1. Don't do that - create your own topic; it's free to do so  
2. the powers that be will soon give you a stern looking to for failing to follow some of the rules here.


----------



## gborsoi (Apr 8, 2020)

What i did:
1 – I Installed FreeBSD 10.4 on a virtual machine (clang3.4.1 is the default compiler)
2 – #portsnap fetch extract
3 – I did create /etc/make.conf with ALLOW_UNSUPPORTED_SYSTEM=yes inside.
3 – I did modify /usr/ports/Mk/bsd.ssp.mk because clang34 do not understand –fstack-protector-strong:
        -SSP_CFLAGS?= -fstack-protector-strong
       +SSP_CFLAGS?= -fstack-protector-all
4 – I did “make install” on /usr/ports/databases/firebird25-server
5 – I did test gbak on FreeBSD 10 and it works.
6 – I did compile firebird25-server on FreeBSD 12.1 and install it.
7 – I got the file fbintl.so from FreeBSD 10 and put in FreeBSD 12.1
8 – I did test gbak on FreeBSD 12.1 and it works.

I only changed the file fbintl.so and firebird worked.
Based on this, I think the problem is the compiler and not the source code.
Is there an option for the compiler to “imitate” clang3.4.1 behavior?
I’m scared to keep that way because of the updates in ICU and other dependencies.

Greetings
Gelson Borsoi


----------



## nasroo (May 27, 2020)

Hello Mr. Borsoi, 
can you share your file "fbintl.so " ?

best regards

N.A.


----------



## gborsoi (May 29, 2020)

Another solution for FreeBSD 12.1
1 - Go to http://pkg.freebsd.org/FreeBSD:12:amd64/release_0/All/ and download the following packages:
llvm35-3.5.2_8.txz
clang35-3.5.2_5.txz
This packages are in 12.0 release but you can install on 12.1 release. Install the dependencies too.
2 - After installing, go to /usr/ports/databases/firebird25-server
3 - edit Makefile and insert the following lines in the file, before LD= ${CC}:
CC=clang35
CXX=clang++35
CPP=clang-cpp35
4 - Deinstall preinstalled firebird25-server and firebird25-client
5 - compile firebird again

P.S. Do not deinstall ou update llvm35 and clang35. After a portsnap update, you will need to modify Makefile again.


----------



## nasroo (May 29, 2020)

@Than you alot mate. It worked for me 
5 Star !! help


----------



## rafael bastos (Nov 17, 2020)

I don't want to open another topic.
I am neither an expert nor a medium. but work with game and used virtual box until the beautiful windows10 block my customers. I had to rent 1 dedicated freebsd 11. and I don't know how to solve this problem and I'm already bankrupt. Can someone help me

Nov 16 18:04:07 rafaelbastos28 kernel: pid 1085 (game), uid 0: exited on signal 11 (core dumped)
Nov 16 20:25:59 rafaelbastos28 kernel: pid 1095 (game), uid 0: exited on signal 11 (core dumped)
Nov 16 20:36:56 rafaelbastos28 kernel: pid 1090 (game), uid 0: exited on signal 11 (core dumped)
Nov 16 20:59:35 rafaelbastos28 kernel: pid 1670 (game), uid 0: exited on signal 11 (core dumped)
Nov 17 06:01:10 rafaelbastos28 kernel: pid 2052 (game), uid 0: exited on signal 11 (core dumped)


----------



## gborsoi (Mar 7, 2021)

Hi Guys, i think i have the final solution to us.

Based on https://tracker.firebirdsql.org/browse/CORE-5865 this is what i did:

1 - cd /usr/ports/databases/firebird25-client
2 - make extract
3 - cd work 
4 - cd Firebird folder
5 - I modify the line 95 in the src/common/classes/alloc.h file:

Original code:
Line 94 // Alignment for all memory blocks. Sizes of memory blocks in headers are measured in this units
Line 95 const size_t ALLOC_ALIGNMENT = FB_ALIGNMENT;

Changed code:
Line 94 // Alignment for all memory blocks. Sizes of memory blocks in headers are measured in this units
Line 95 #define ALLOC_ALIGNMENT 16

6 - Repeat the steps 2 to 5 on /usr/ports/databases/firebird25-server
7 - make install clean

I tested this in 13 beta4 and 12.1. Build normally with clang/llvm(8 and 11) and no more core dumps.
I think we need a patch file to apply this to the ports if the machine is amd64 architecture. I don’t know how to do this because i never did this.
Please test this and put here the results. Maybe acm@freebsd.org put this patch on ports.

Gelson Borsoi
Chapeco - SC - Brazil


----------



## sergey zub (Mar 16, 2021)

gborsoi​Yes, it works. Thank you for your work!.
11.4-RELEASE-p8 FreeBSD 11.4-RELEASE-p8 Generic    amd64
firebird25-server-2.5.8_7
No more core dumped.

but the line numbers are 94 and 95 in the src/common/classes/alloc.h , I have 84 and 85 .


----------

