在检查一Linux服务器时,发现日志里面有大量“lvm[12446]: Another thread is handling an event. Waiting...”

Jul  4 00:01:42 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:09:36 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:13:42 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:13:43 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:13:43 localhost lvm[12446]: dm_task_run failed, errno = 9, Bad file descriptor

Jul  4 00:14:42 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:15:52 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:17:02 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:17:02 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:17:46 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:18:52 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:19:42 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:20:32 localhost lvm[12446]: Snapshot VolGroup05-LogVol00--PS--user--snapshot is now 80% full. 

Jul  4 00:20:32 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:23:12 localhost lvm[12446]: Snapshot VolGroup05-LogVol00--PS--user--snapshot is now 85% full. 

Jul  4 00:23:12 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:23:12 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:23:12 localhost lvm[12446]: dm_task_run failed, errno = 9, Bad file descriptor

Jul  4 00:26:09 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:26:52 localhost last message repeated 2 times

Jul  4 00:26:52 localhost lvm[12446]: Snapshot VolGroup05-LogVol00--PS--user--snapshot is now 90% full. 

Jul  4 00:26:52 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:28:52 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:28:52 localhost lvm[12446]: Snapshot VolGroup05-LogVol00--PS--user--snapshot is now 95% full. 

Jul  4 00:28:52 localhost lvm[12446]: Extension of snapshot VolGroup05/LogVol00-PS-user-snapshot finished successfully.

Jul  4 00:28:52 localhost lvm[12446]: dm_task_run failed, errno = 9, Bad file descriptor

Jul  4 00:31:07 localhost kernel: device-mapper: snapshots: Invalidating snapshot: Unable to allocate exception.

Jul  4 00:34:59 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:35:42 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:42:29 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:44:16 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:45:49 localhost lvm[12446]: Another thread is handling an event. Waiting...

Jul  4 00:46:59 localhost last message repeated 3 times

Jul  4 00:48:49 localhost last message repeated 2 times

在Redhat官网有看到相关资料介绍”"What does "lvm: Another thread is handling an event. Waiting..." log messages mean on Red Hat Enterprise Linux 6?" 如下所示:

问题

  • lvm event log messages
  • Continuous messages filling /var/log/messages
    lvm: Another thread is handling an event, Waiting...
    lvm: Another thread is handling an event, Waiting...

决议

  • These messages can safely be ignored at this stage.  They are verbose messages that do not indicate any error has occurred.
  • Red Hat are planning to remove these messages from the lvm2 package in a future release of Red Hat Enterprise Linux 6.

根源

  • dmeventd daemon montors for events that need to occur on device-mapper devices.

    • There are segments of code that can only be entered by one thread at a time.
    • If a second thread tries to enter the code section, it will be forced to wait until the first thread has exited. This message is printed when a process is forced to wait.
  • There is currently no evidence that there is any problem with locking access to critical code in dmeventd.

诊断步骤

If the following symptoms are present on your system, then this article may apply to your issue:

  • Your lvm2 package is 2.02.87-6.el6 or earlier.
  • You have more than 1 LVM snapshots on the system.
  • Periodically, the following messages appear in /var/log/messages:

        lvm: Another thread is handling an event. Waiting...
    lvm: Another thread is handling an event. Waiting...

根据官方文档资料,这个消息可以忽略,这中现象出现在你的系统中,当你系统满足下面条件:

当你的lvm2包版本是2.02.87-6.el6 或之前的版本。

当你的系统有超过一个LVM快照

对比、参考本机操作系统版本,发现lvm2的版本确实比2.02.87-6.el6 低。另外,这个系统也确实有多个LVM快照。唯一有点差别的是Linux版本Red Hat Enterprise Linux Server release 5.7 ,并不是Red Hat Enterprise Linux (RHEL) 6

[root@localhost ~]# rpm -qa | grep lvm

lvm2-2.02.84-6.0.1.el5

system-config-lvm-1.1.5-9.el5

[root@localhost ~]# cat /etc/redhat-release 

Red Hat Enterprise Linux Server release 5.7 (Tikanga)

另外,查看进程12446,也确实是/sbin/dmeventd

[root@localhost ~]# ps -ef | grep  12446 

root     12446     1  0 Jul02 ?        00:07:51 /sbin/dmeventd

root     26043 23106  0 11:06 pts/6    00:00:00 grep 12446

这个错误信息一直不停的出现在系统日志当中,很奇怪的时候,我同样环境的其它服务器又没有出现这个问题。应该是某些问题引起的。在做VG扫描时,发现有这样/dev/VolGroup03/LogVol00-PS-user-snapshot: read failed after 0 of 4096 at 0: Input/output error一些错误信息,怀疑这个导致引起的,但是生产环境还不能乱动,需要在测试环境测试、验证后,方能在生产环境处理。目前没有权限和资源处理,需要系统管理员帮忙解决。

lvm[12446]: Another thread is handling an event. Waiting的更多相关文章

  1. 【MySQL】MySQL同步报错-> received end packet from server, apparent master shutdown: Slave I/O thread: Failed reading log event, reconnecting to retry报错解决和分析

    [root@db-ft-db-48 ~]# tail -f /mysqlLog/beside_index_err.log 140102 20:42:26 [Note] Slave: received ...

  2. ORA-00471: DBWR process terminated with error案例

    每年年底,系统管理员都要组织一次容灾方案的测试.演练.会在一个与生产环境网络隔离的DR环境中,启动各个"生产环境服务器",然后让各路人员参与其中测试.演练容灾方案是否可靠.这次演练 ...

  3. Event Handling Guide for iOS--(一)--About Events in iOS

    About Events in iOS Users manipulate their iOS devices in a number of ways, such as touching the scr ...

  4. 线程 Thread类 GIL锁 信号量 Event事件

    线程的开启方法 进程是操作系统调度的最小单位,一个进程最少有一个主线程,而一个进程中可以开启多个线程 from threading import Thread def task(): print('A ...

  5. How a C++ compiler implements exception handling

    Introduction One of the revolutionary features of C++ over traditional languages is its support for ...

  6. How does a single thread handle asynchronous code in JavaScript?

    原文:https://www.quora.com/How-does-a-single-thread-handle-asynchronous-code-in-JavaScript ----------- ...

  7. Mysql源码学习——Thread Manager

    一.前言 上篇的Connection Manager中,曾提及对于一个新到来的Connection,服务器会创建一个新的线程来处理这个连接. 其实没那么简单,为了提高系统效率,减少频繁创建线程和中止线 ...

  8. Main event loop

    https://developer.apple.com/library/archive/documentation/General/Conceptual/Devpedia-CocoaApp/MainE ...

  9. Why should I avoid blocking the Event Loop and the Worker Pool?

    Don't Block the Event Loop (or the Worker Pool) | Node.js https://nodejs.org/en/docs/guides/dont-blo ...

随机推荐

  1. Monotype推出基于HTML5的Web字体平台

    著名字体公司Monotype近日宣布推出基于HTML5的Web字体平台,设计者可以访问近10万字体的目录. Monotype推出基于HTML5的Web字体平台 Monotype推出基于HTML5的We ...

  2. Scalaz(18)- Monad: ReaderWriterState-可以是一种简单的编程语言

    说道FP,我们马上会联想到Monad.我们说过Monad的代表函数flatMap可以把两个运算F[A],F[B]连续起来,这样就可以从程序的意义上形成一种串型的流程(workflow).更直白的讲法是 ...

  3. Java集合源码分析(二)ArrayList

    ArrayList简介 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境下,多线 ...

  4. Fiddler (四) 实现手机的抓包

      Fiddler是我最喜爱的工具,几乎每天都用, 我已经用了8年了. 至今我也只学会其中大概50%的功能. Fiddler绝对称得上是"神器", 任何一个搞IT的人都得着的. 小 ...

  5. [翻译]:SQL死锁-死锁排除

    As we already saw, the reasons why we have blocking issues and deadlocks in the system are pretty mu ...

  6. 一款经典的jQuery slidizle 幻灯片

    jQuery广告幻灯片进度条,水平/左右切换,垂直/上下切换,自动播放,缩略图列表切换 在线实例 默认效果 水平/左右切换 垂直/上下切换 循环 自动播放 缩略图 进度条 回调函数 使用方法 < ...

  7. HTML+AngularJS+Groovy如何实现登录功能

    AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS核心特性有:MVVM.模块化.自动化双向数据绑定.语义化标签.依赖注入等.AngularJS认为声明 ...

  8. 经典网页设计:20个华丽的 iPhone 应用程序演示网站

    一个物品销售很好,重要的原因之一是它的包装,因为这是最重要的细节,可以把一个人转变成购买者.一个好的包装设计和良好的表现比产品本身更重要,因此被分配了大量的金钱和资源,以创造伟大的东西. 因此,为了销 ...

  9. 分享50款 Android 移动应用程序图标【上篇】

    在这个移动程序流行的时代,持续增长的应用程序经济充满了商业机遇.任何对应用程序设计感兴趣的人,将会喜欢上这里的50个独特的 Android 应用程序图标.这些例子中的图标能够让应用程序的设计更具吸引力 ...

  10. 【CSS3】CSS3:border-image的详解和实例

    border-image简介 border-image是CSS3中的新特性.目前几乎所有的主流浏览器都已经支持该特性,详情请移步border-image的兼容性. border-image属性及使用说 ...