这是龙慧公司第168篇文章
背景
国产油气管道SCADA系统软件工业试验项目是集团公司重大工程技术现场试验项目,采用油气管道SCADA系统软件国产化研发成果PCS (Pipeline Control System)管道控制系统V1.0软件在港枣成品油管道与冀宁天然气联络管道苏北段进行中控和站控工业试验。根据项目安排,PCS软件最终将中控系统和站控系统统一一个版本,即PCS V1.1版。龙慧公司北京科技分公司负责PCS V1.1版本的中控站控系统代码合并工作、版本的部署与发布工作及后期的现场应用版本维护工作。PCS V1.1软件同时支持Solaris和Linux两个操作系统,支持Oracle和PostgreSQL两个数据库,即同时支持Solaris+Oracle、Solaris+PostgreSQL、Linux+Oracle、Linux+PostgreSQL四个不同的环境应用,满足中控系统与站控系统不同的场景应用需要。
张群,龙慧公司北京科技分公司开发工程师,211大学研究生毕业的山东小伙,虽然没有山东大汉的高大威猛,却有着孔孟之乡的质朴忠厚。2014年从业内知名外企来到龙慧公司后,很快参与到SCADA系统软件国产化研发项目中。此次工业试验项目他独挑大梁,一个人负责代码合并、版本部署发布、现场版本维护等工作。
一次冲锋
按照项目计划,于5月24日进行PCS V1.1版本的预发布。五月中旬,刚刚从德州站和扬州站进行完系统更新的张群,马上投入到了紧张的版本发布工作中。中控系统与站控系统的代码合并工作……对上百万代码进行编译……对报错部分进行检查修改……同时根据需要编写新的代码……工作量是巨大的。正常情况下,这样的工作量需要三到四周左右,但是项目部只给了我们两周时间。由于系统研发方一直按项目部要求进行新增功能开发,导致对软件的缺陷修改工作一直延后,而PCS V1.1是工业试验项目的最终输出产品,要到港枣线和冀宁线进行现场应用,时间上不能拖延。对于张群而言,可谓是真正的时间紧任务重。七个工作日……张群每天晚上都在加班,为了节省时间,每天的晚餐都是泡面,老坛酸菜是他的最爱和首选。
二次冲锋
代码合并工作完成后还有系统的部署和发布工作。项目部要求PCS V1.1软件需要部署在五个系统上,而每个系统都要有主备两套服务器环境。在部署过程中,张群又发现了很多服务器操作系统方面的问题,于是重装了三套中标麒麟操作系统、两套Oracle数据库的服务端。Oracle数据库服务端安装相当繁复、配置复杂、耗时耗力。这些意外的问题对张群来讲无疑是雪上加霜,原本紧张的时间更加捉襟见肘。习惯了大工作量,习惯了加班加点,张群终于在24日按项目部计划完成了代码合并,完成了软件在五套系统上的安装部署,实现了PCS V1.1的预发布。为接下来北京科技分公司的测试工作留出了充分的时间。
三次冲锋
然而,同事们在测试中发现了很多缺陷,这些貌似不是严重缺陷的小缺陷却直指背后的数据库。张群凭着敏锐的直觉和认真负责的工作态度,重新检查了代码,发现了Oracle数据库的问题。这次部署是北京科技分公司第一次独立部署中控系统,也包括中控系统的数据库Oracle。然而研发方并没有给我们提供建库程序,这必然会导致在使用数据库过程中会出现各种问题。数据库是系统的核心,对于数据库,没有小问题。刚刚喘了口气的张群又开始了冲锋,而这次任务更重,强度更高。为了不影响正常的工作安排,他选择利用周末加班。6月4日,周日,本该陪伴妻儿的张群一大早便来到了公司,一个人默默的工作着。周日,周一,时间一点点过去,虽然问题的难度和强度超出了他的预计,但是张群已经发现了问题的症结,只要一鼓作气,便可直捣黄龙。此时的张群带着一丝疲惫,但更多的是紧张和亢奋,他决定晚上不回家了,问题什么时候解决,他什么时候休息。通宵达旦一晚上,以他的能力和毅力,他坚信自己一定可以攻克难题……凌晨五点,张群终于解决了所有的问题,重新完成了数据库的部署,系统恢复了正常运行。
此时天已经大亮,张群终于松了一口气,和衣而卧,趴在桌上安心的进入梦乡。只是小憩一会,随着同事们陆陆续续的来到公司,张群投入到新一天的工作中。
图文|孙颖
编辑|王子雯
长按识别二维码关注我们

