当前位置: 首页 > news >正文

达梦8 内存泄漏泄漏原因分析之一

在实际使用过程中经常发现DMSERVER进程在OS中的内存占用使用远远超过实际情况。原因有很多,下面列出其中一种:

测试库版本

SQL> select id_code;LINEID     ID_CODE
---------- -----------------------------------
1          --03134283938-20221019-172201-20018

测试步骤如下:

#查看dmserver在OS上的内存占用
SQL> host ps aux | grep dmserver | grep -v grep
dmdba    20398 16.8 24.0 3518472 1938328 pts/2 Sl+  11:21   0:58 dmserver path=dm.ini#向测试表插入数据,模拟排序操作
SQL> insert into d select * from a order by 2;
affect rows 80000000
used time: 00:01:12.785. Execute id is 602.#查看dmserver在OS上的内存占用
SQL> host ps aux | grep dmserver | grep -v grep
dmdba    20398 24.7 42.8 5289780 3457352 pts/2 Sl+  11:21   1:48 dmserver path=dm.ini#退出会话
SQL> exit#查看dmserver在OS上的内存占用,又回到了测试前
[dmdba@node1 ~]$ ps aux | grep dmserver | grep -v grep
dmdba    20398 24.6 23.8 3518520 1927272 pts/2 Sl+  11:21   1:51 dmserver path=dm.ini

以上插入SQL执行的过程中查询V$MEM_POOL视图,DATA_SIZE字段的值不断增长,SQL语句执行完毕后,DATA_SIZE增加的部分消灭。但从上图中可见,但只有会话退出后在OS上的显示才回到测试前。分析原因如下:

用lsof命令搜索上述会话的thrd_id,显示打开了许多文件。会话退出后相关资源才完全释放。

相关文章:

  • IDM的优势
  • 安卓手机APP开发____持久性工作
  • TimeDao-一篇文章了解清楚Subspace项目
  • ssm324基于javaweb的企业人事信息管理系统+jsp-手把手调试搭建
  • HCIP-Datacom-ARST自选题库__MAC【14道题】
  • Git 恢复已删除的branch
  • 2022年ICPC亚洲区域赛南京站题解
  • 关于linux程序的查看、前台运行、后台运行、杀死的管理操作。
  • C#WPF数字大屏项目实战04--设备运行状态
  • 《KAN》论文笔记
  • JavaScript原生+jQuery 事件委托
  • 阿里云语音合成TTS直播助手软件开发
  • 【Qt秘籍】[008]-Qt中的connect函数
  • 【LeetCode:575. 分糖果+ 哈希表】
  • LNMP网站架构部署
  • 【Linux系统编程】快速查找errno错误码信息
  • 2019年如何成为全栈工程师?
  • docker-consul
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • iOS 颜色设置看我就够了
  • IOS评论框不贴底(ios12新bug)
  • JavaScript DOM 10 - 滚动
  • jdbc就是这么简单
  • Redis 中的布隆过滤器
  • 基于web的全景—— Pannellum小试
  • 一个JAVA程序员成长之路分享
  • 一些css基础学习笔记
  • 正则表达式
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • ​ArcGIS Pro 如何批量删除字段
  • # 数据结构
  • #pragma pack(1)
  • (02)Hive SQL编译成MapReduce任务的过程
  • (3)llvm ir转换过程
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (苍穹外卖)day03菜品管理
  • (初研) Sentence-embedding fine-tune notebook
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (三)SvelteKit教程:layout 文件
  • (十二)Flink Table API
  • (学习日记)2024.01.09
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)3D模板阴影原理
  • (转)fock函数详解
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • *算法训练(leetcode)第四十天 | 647. 回文子串、516. 最长回文子序列
  • .equal()和==的区别 怎样判断字符串为空问题: Illegal invoke-super to void nio.file.AccessDeniedException
  • .md即markdown文件的基本常用编写语法
  • .Net 应用中使用dot trace进行性能诊断
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)