Hello, A bug report / feature request. I'm using the log "" command to log to a file. 1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes. Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network. Thanks, David
On Wed, Nov 18, 2009 at 09:45:21AM +0000, David J Craigon wrote: Hi,
A bug report / feature request.
I'm using the log "" command to log to a file.
1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes.
Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network.
As a workaround to this and similar problems, it might be a good idea to run bird (and anything else that writes a log) under runit, logging to stdout, and saving the logs to disk using svlogd, which can rotate the logs when they reach a certain size or age. Andras -- Andras Korn <korn at elan.rulez.org> - <http://chardonnay.math.bme.hu/~korn/> Colour... it's just a pigment of your imagination.
On Wed, Nov 18, 2009 at 09:45:21AM +0000, David J Craigon wrote:
I'm using the log "" command to log to a file.
1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes.
Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network.
Using and debugging bird on FreeBSD I've got logs over 2GB several times and never was it crashing because of these. Are you sure it's not a filesystem where your log reside issue? -- Eugene Perevyazko
On 18.11.2009 13:36, Eugene Perevyazko wrote:
On Wed, Nov 18, 2009 at 09:45:21AM +0000, David J Craigon wrote:
I'm using the log "" command to log to a file.
1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes.
Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network.
Using and debugging bird on FreeBSD I've got logs over 2GB several times and never was it crashing because of these. Are you sure it's not a filesystem where your log reside issue?
I believe it is filesystem limit. But I am surprised that this crashes BIRD. Are you able to produce core file? F.
On Wed, Nov 18, 2009 at 01:39:39PM +0100, Ondrej Filip wrote:
On 18.11.2009 13:36, Eugene Perevyazko wrote:
On Wed, Nov 18, 2009 at 09:45:21AM +0000, David J Craigon wrote:
I'm using the log "" command to log to a file.
1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes.
Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network.
Using and debugging bird on FreeBSD I've got logs over 2GB several times and never was it crashing because of these. Are you sure it's not a filesystem where your log reside issue?
I believe it is filesystem limit. But I am surprised that this crashes BIRD. Are you able to produce core file?
That's a question to original poster, as my BIRD has never crashed because of log file. -- Eugene Perevyazko
It might well be a problem on my end. Any suggestions are welcome. It's not the file system: [root@localhost 5731]# ls -sh /tmp/ total 5.9G 3.9G bigfile 0 birdlogtmp 2.1G look where the file "look" is what was the bird log file. Bird stopped when the file became 2.1 Gb. As you can see, I can make bigger files I've got bird to create a core dump, which I can include if you really want, but sticking it in gdb tells me the following: [root@localhost ~]# gdb /usr/sbin/bird core.4934 GNU gdb Fedora (6.8-37.el5) Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"... (no debugging symbols found) warning: Can't read pathname for load map: Input/output error. Reading symbols from /lib/i686/nosegneg/librt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/i686/nosegneg/librt.so.1 Reading symbols from /lib/i686/nosegneg/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/i686/nosegneg/libc.so.6 Reading symbols from /lib/i686/nosegneg/libpthread.so.0... (no debugging symbols found)...done. Loaded symbols for /lib/i686/nosegneg/libpthread.so.0 Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 (no debugging symbols found) Core was generated by `bird'. Program terminated with signal 25, File size limit exceeded. [New process 4934] #0 0x00e1e402 in __kernel_vsyscall () (gdb) q The whole signal 25 thing suggests it is coming from outside, but if so, what? Here are the limits for the bird process: [root@localhost 5731]# cat limits Limit Soft Limit Hard Limit Units Max cpu time unlimited unlimited seconds Max file size unlimited unlimited bytes Max data size unlimited unlimited bytes Max stack size 10485760 unlimited bytes Max core file size unlimited unlimited bytes Max resident set unlimited unlimited bytes Max processes 58655 58655 processes Max open files 1024 1024 files Max locked memory 32768 32768 bytes Max address space unlimited unlimited bytes Max file locks unlimited unlimited locks Max pending signals 58655 58655 signals Max msgqueue size 819200 819200 bytes Max nice priority 0 0 Max realtime priority 0 0 Any ideas? David 2009/11/18 Ondrej Filip <feela@network.cz>
On 18.11.2009 13:36, Eugene Perevyazko wrote:
On Wed, Nov 18, 2009 at 09:45:21AM +0000, David J Craigon wrote:
I'm using the log "" command to log to a file.
1) The file seems to have a 2Gb limit on file size. 2) When the file gets to 2Gb, bird crashes.
Can you make 1) use the large file things so it can be bigger than 2Gb, and can I suggest that 2) is not the right answer- the log file not being available seems like a really bad reason to bring down the entire network.
Using and debugging bird on FreeBSD I've got logs over 2GB several times and never was it crashing because of these. Are you sure it's not a filesystem where your log reside issue?
I believe it is filesystem limit. But I am surprised that this crashes BIRD. Are you able to produce core file?
F.
On Wed, Nov 18, 2009 at 02:44:32PM +0000, David J Craigon wrote:
It might well be a problem on my end. Any suggestions are welcome.
It's not the file system:
[root@localhost 5731]# ls -sh /tmp/ total 5.9G 3.9G bigfile 0 birdlogtmp 2.1G look
where the file "look" is what was the bird log file. Bird stopped when the file became 2.1 Gb. As you can see, I can make bigger files
I've got bird to create a core dump, which I can include if you really want, but sticking it in gdb tells me the following:
[root@localhost ~]# gdb /usr/sbin/bird core.4934
Program terminated with signal 25, File size limit exceeded. [New process 4934]
The whole signal 25 thing suggests it is coming from outside, but if so, what?
That makes it clear why BIRD crashed - it received unhandled signal and a crash is a default behavior for that signal. But it is strange that sug signal was sent when it is possible to have bigger files on that FS. What FS is used for /tmp ? What kernel version is used? BTW, i would suggest to use some smart syslog variant and use syslog-based log rotation. -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
This is CentOS 5.4. uname -a Linux localhost.localdomain 2.6.18-164.el5xen #1 SMP Thu Sep 3 04:47:32 EDT 2009 i686 i686 i386 GNU/Linux The filesystem is ext3. SELinux is disabled. Your right, I clearly need some log rotation, but I started this email chain as a suggestion for improvement, but it looks like it's my box rather than a Bird fault. David 2009/11/18 Ondrej Zajicek <santiago@crfreenet.org>
On Wed, Nov 18, 2009 at 02:44:32PM +0000, David J Craigon wrote:
It might well be a problem on my end. Any suggestions are welcome.
It's not the file system:
[root@localhost 5731]# ls -sh /tmp/ total 5.9G 3.9G bigfile 0 birdlogtmp 2.1G look
where the file "look" is what was the bird log file. Bird stopped when the file became 2.1 Gb. As you can see, I can make bigger files
I've got bird to create a core dump, which I can include if you really want, but sticking it in gdb tells me the following:
[root@localhost ~]# gdb /usr/sbin/bird core.4934
Program terminated with signal 25, File size limit exceeded. [New process 4934]
The whole signal 25 thing suggests it is coming from outside, but if so, what?
That makes it clear why BIRD crashed - it received unhandled signal and a crash is a default behavior for that signal.
But it is strange that sug signal was sent when it is possible to have bigger files on that FS. What FS is used for /tmp ? What kernel version is used?
BTW, i would suggest to use some smart syslog variant and use syslog-based log rotation.
-- Elen sila lumenn' omentielvo
Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAksEDBYACgkQw1GB2RHercMvFQCfebBmferklT9SaoJluXs28wY6 qs0AniymWZIZoJoBwTQDl/6wu1LIGOb7 =BNef -----END PGP SIGNATURE-----
participants (5)
-
David J Craigon -
Eugene Perevyazko -
KORN Andras -
Ondrej Filip -
Ondrej Zajicek