在某些日子里,PostgreSql服务器会周期性地重新启动自己。日志文件在下面。它包含找到的孤立临时表记录,并在重新启动之后执行。
应用程序由单个应用程序访问,大约有50个用户在互联网上使用,集群中大约有10个数据库。
如何修复重新启动和这些错误?
在x86_64-未知-linux-gnu上使用PostgreSQL 9.1.2,由gcc-4.4.real (Debian 4.4.5-8) 4.4.5,64位编译
日志文件包含:
....
2013-06-10 11:11:57 EEST LOG: server process (PID 25148) was terminated
通常Linux中的崩溃报告可能如下所示:
[jack-VirtualBox:14564] *** Process received signal ***
[jack-VirtualBox:14564] Signal: Segmentation fault (11)
[jack-VirtualBox:14564] Signal code: (-6)
[jack-VirtualBox:14564] Failing at address: 0x3e8000038e4
[jack-VirtualBox:14564] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0
我有一个由我自己写在C/C++上的程序,它是由Linux杀死的。“被杀”的信息出现了。愿意挖掘我在/var/log/kern.log文件中观察到的问题:
Out of memory: Kill process 3915 (my_proj) score 236 or sacrifice child
Killed process 3915 (my_proj) total-vm:5503376kB, anon-rss:3857420kB, file-rss:40kB
我不知道如何阅读这些信息,也不知道是否有一些有用的信息可以理解为什么会发生这种死亡事件。你能帮帮我吗?
我试图设置一个过程的OOM杀手评分调整,灵感来自。为此,我打开/proc/self/oom_score_adj,读取旧值,并编写一个新值。显然,我的流程需要是根用户,或者有能力CAP_SYS_RESOURCE来完成这一任务。
我得到一个我无法解释的结果。当我的进程没有能力时,我可以打开该文件并读取和写入值,尽管我所写的值不能生效(非常公平):
$ ./a.out
CAP_SYS_RESOURCE: not effective, not permitted, not inheritable
oom_score_adj value: 0
wrote 5 bytes
oom_score_adj v
我正在尝试将现有的Perl脚本转换为Ansible角色。在迭代捕获的命令输出时,我遇到了麻烦。
下面是Perl脚本:
# Description: This script will adjust the oom score of all the important system processes to a negative value so that OOM killer does not touch these processes ############
chomp(my $OS = `uname`);
if($OS eq "Linux")
{
my @file
我有一个大型存储库(Android实例),我试图缩小.git文件夹的大小(目前为76G),因为构建的空间正在耗尽。
我试着从git gc --prune=now --aggressive中运行,但失败了,出现了以下错误:
git gc --prune=now --aggressive
Enumerating objects: 998206, done.
Counting objects: 100% (998206/998206), done.
Delta compression using up to 16 threads
error: pack-objects died of signal