Subject | Re: [firebird-support] Help Firebird Crashing every day |
---|---|
Author | Daniel Albuschat |
Post date | 2010-04-23T06:56:43Z |
2010/4/21 nftnicolas <nftnicolas@...>:
First of all, here is the detailed description for the error code that
bind() returns:
http://msdn.microsoft.com/en-us/library/ms740668(v=VS.85).aspx
10048: WSAEADDRINUSE
Address already in use.
Typically, only one usage of each socket address (protocol/IP
address/port) is permitted. This error occurs if an application
attempts to bind a socket to an IP address/port that has already been
used for an existing socket, or a socket that was not closed properly,
or one that is still in the process of closing. For server
applications that need to bind multiple sockets to the same port
number, consider using setsockopt (SO_REUSEADDR). Client applications
usually need not call bind at all—connect chooses an unused port
automatically. When bind is called with a wildcard address (involving
ADDR_ANY), a WSAEADDRINUSE error could be delayed until the specific
address is committed. This could happen with a call to another
function later, including connect, listen, WSAConnect, or WSAJoinLeaf.
bind() should be called only once in any server application. In the
case of Firebird, bind() is called for the port 3050 (the default, can
be changed in Firebird.conf) on startup. It seems unlikely that this
error appears when Firebird is already running.
Are the errors from Firebird.log from the client or from the server?
I know that the Web-Editions of Windows Server limit the maximum
number of SMB (Windows File Sharing) connections. Maybe some similar
limitations are in place for Database servers? Try googling for
"Windows Server Web Edition Database Connection Limit" or something
similar.
Greetings,
Daniel
--
eat(this); // delicious suicide
> HelloHi,
>
> i have a windows server 2008 web 64 bit , with firebird 2.1.3
>
> and all conections are made localy but we have a lot of them.
>
> this problem is ocurring by months now but recently becomed critical because my boss is realy angry
>
> so the problem is that the user is working ok ant them the server stop acepting conections on firebird so i locked on the log and says this
>
> WIN-XXXXXXXXXX Wed Apr 21 14:26:32 2010
> INET/inet_error: bind errno = 10048
>
>
> WIN-XXXXXXXXXX Wed Apr 21 14:26:32 2010
> Database:
> Unable to complete network request to host "WIN-XXXXXXXXXX".
> Error while listening for an incoming connection.
> Only one usage of each socket address (protocol/network address/port) is normally permitted.
First of all, here is the detailed description for the error code that
bind() returns:
http://msdn.microsoft.com/en-us/library/ms740668(v=VS.85).aspx
10048: WSAEADDRINUSE
Address already in use.
Typically, only one usage of each socket address (protocol/IP
address/port) is permitted. This error occurs if an application
attempts to bind a socket to an IP address/port that has already been
used for an existing socket, or a socket that was not closed properly,
or one that is still in the process of closing. For server
applications that need to bind multiple sockets to the same port
number, consider using setsockopt (SO_REUSEADDR). Client applications
usually need not call bind at all—connect chooses an unused port
automatically. When bind is called with a wildcard address (involving
ADDR_ANY), a WSAEADDRINUSE error could be delayed until the specific
address is committed. This could happen with a call to another
function later, including connect, listen, WSAConnect, or WSAJoinLeaf.
bind() should be called only once in any server application. In the
case of Firebird, bind() is called for the port 3050 (the default, can
be changed in Firebird.conf) on startup. It seems unlikely that this
error appears when Firebird is already running.
Are the errors from Firebird.log from the client or from the server?
I know that the Web-Editions of Windows Server limit the maximum
number of SMB (Windows File Sharing) connections. Maybe some similar
limitations are in place for Database servers? Try googling for
"Windows Server Web Edition Database Connection Limit" or something
similar.
Greetings,
Daniel
--
eat(this); // delicious suicide