第5章 第十一章

第十一章

八点零三分。

电话响了。

办公室里只有一部电话会在这个时间响——那部红色的座机,放在孟小飞桌上,标签纸上写着“技术支持热线”。孟小飞把它设了呼叫转移,转到了前台的座机上,前台的座机又设了自动转接,最后居然转到了我的分机上。这是孟小飞的“发明”,他说这样就算他在家打传奇,电话也不会漏。

我接起来。

“喂!辰宇软件吗?我是鑫源建材的老孙!我们的系统崩了!”

电话那头的声音又急又响,带着浓重的唐山口音,震得听筒嗡嗡响。背景音很嘈杂,有人在喊“月底了账都对不上”,有人在骂骂咧咧,还有打印机卡纸的尖锐鸣叫。

“孙总您别急,慢慢说——”

“我怎么能不急!明天要发工资!所有工资数据都在你们系统里!现在软件打不开了!弹出个什么Java异常!我不懂什么Java不Java!我就问你能不能修!”

我的心猛地提起来,提到嗓子眼,又落下去,砸在胃里,沉甸甸的。

鑫源建材,我知道这个客户。曹莉的客户,一家唐山的建材厂,一百多号工人,用的是我们最老的V2.1版本,系统部署在一台早就该淘汰的Windows NT服务器上。这个版本是两年前的产品,代码是一个已经离职的老员工写的,据说那人走得急,交接文档约等于没有,周远每次提起这个版本都眉头紧皱,像提起一个甩不掉的包袱。

“孙总,您等一下,我马上联系我们技术组长——”

“联系什么技术组长!你知不知道我等不了!现在八点了!银行明天早上九点开门!工资要是发不出去,一百多号工人堵我办公室门口你负责啊!”

听筒里传来他拍桌子的声音,砰的一声,震得我耳膜发麻。然后是一个女人尖细的声音在旁边喊:“老孙你把那个——那个——那个什么防火墙关了试试!”然后是更混乱的声音,杯子和金属碰撞的叮当声,有人撞到了椅子,椅子腿在水泥地面上刮出刺耳的尖叫。

我握着听筒,手心全是汗,键盘旁边的“问题本”被滴落的汗水洇湿了一个角,墨迹微微洇开。

周远家里没有电话。他住在大兴,用的是一个小灵通,信号奇差,十次有八次打不通。曹莉的手机关机了。我翻了翻通讯录,发现公司所有人的电话我都打了一遍,能接的只有一个——孟小飞。

“小飞,鑫源建材的系统崩了,你知不知道那个V2.1——”

“哥,我不懂那个!我只会装客户端和重启服务器!”孟小飞的声音很慌,背景音里能听见传奇游戏的背景音乐,叮叮当当的打斗声,“你要不……要不给周哥打电话?”

“打了,打不通。”

“那……那我也不知道了……”他的声音越来越小,后面又跟了一句什么,我没听清。

电话那头沉默了几秒。我能听见孟小飞的呼吸声,急促的,年轻的,带着一丝不知所措的愧疚。然后他忽然说:“哥,要不你试试?你平时不是把系统里所有模块都跑过一遍吗?”

“那是V2.3,这个是V2.1,版本不一样——”

“那也比我们懂啊!我们连Java都不会!”

这句话像一根针,扎破了什么东西。

我忽然意识到,在这栋楼里,在这个时间点上,我是唯一一个懂Java的人。

那种感觉很奇怪。像是站在一个悬崖边上,前面是深不见底的黑,但你知道,只有你能往前走了。

“孙总,”我把听筒换到另一只手上,用袖子擦了一下额头上的汗,声音尽量保持平稳,“您把那个错误提示念给我听。”

“什么提示?”

“屏幕上的,弹出来的那个红色框框,上面写的什么字?”

“……我找找……啊有了——什么什么……Exception……thread……main……后面是一大堆鬼画符,我念不来!等等我让会计来看——小刘!你过来!你学过英语!”

短暂的混乱之后,一个年轻女孩的声音怯生生地出现在听筒里,带着唐山口音的普通话,软软的,像在舌尖上打了个滚:“嗯……它写的是

我在脑子里飞速检索。系统手册里没有这个,教科书里只有一句语焉不详的定义,老师在课堂上花了五分钟讲它,然后说“这个问题在实际工作中遇到再说”。现在,它来了,在一个唐山建材厂会计的电脑屏幕上,在一个冬天的雪夜里,像一只拦路虎,张着血盆大口。

“孙总,我需要远程登录你们的服务器。”

“什么远程?怎么弄?”

我深吸一口气,开始一步步指导他。那个过程慢得让人绝望。孙总不会操作电脑,会计也不会,每执行一个步骤都要反复确认,电话里不断传来“是这个吗”、“点了这个会不会坏”、“我不敢点”的声音。我握着听筒的手越来越湿,肩膀和耳朵夹着听筒的地方开始发酸,后来干脆把听筒夹在下巴和锁骨之间,歪着头,两只手在键盘上飞速敲击,试图在自己的电脑上复现那个错误。

那是一个变量声明,用来存储员工的工龄补贴。在V2.3版本里,这个变量被初始化了,调用之前会做非空判断。但V2.1版本的代码我没有。

“周哥,你他妈怎么不接电话……”我咬着牙,一遍遍地拨那个小灵通号码,每次都是漫长的嘟声之后自动挂断。第十一遍的时候,我放弃了。

我只能靠猜。

工龄补贴——如果有员工没有填写入职日期,工龄就是空值,空值不能参与计算,就会抛出这个异常。

“孙总,你们最近是不是有新入职的员工?”

“有啊!上个月来了三个!”

“他们的资料是不是录入了系统?”

“录了啊!”

“入职日期填了吗?”

电话那头安静了三秒。

“小刘!入职日期你填了没有!”

那个女孩的声音更小了,像是犯了什么大错:“我……我好像……有一个人的我忘了……他档案不全……”

找到了。

但找到问题和解决问题之间,隔着一条天堑。系统崩了,打不开,改不了数据库。我只能通过后门——用管理员的命令行工具,手动连接数据库,找到那条记录,补上日期,然后重启服务。

这一切都不能出错。错一步,数据库损坏,整个公司的工资数据就真的没了。

我的手指悬在键盘上方,微微发抖。办公室冷得像冰窖,吴姐的暖水袋已经不热了,摸上去只有淡淡的余温,但我额头上全是汗,汗珠顺着太阳穴滑下来,流进嘴角,咸咸的。

“开始吧。”我对自己说,声音很轻,但很稳。

接下来的四十分钟,像一场在悬崖边骑自行车的手术。

我把每一步操作都先在测试环境里跑一遍,确认无误,再让孙总在那边执行。每一个命令都需要我一个字一个字地念,他一个字一个字地在键盘上敲。他敲得很慢,有时候一个字母要找半天,急得嘴里不停地骂骂咧咧,骂电脑,骂键盘,骂自己老眼昏花,骂完了又跟我道歉:“小伙子不好意思,我不是骂你。”

我说没事。我的声音一直保持着平稳,但我的腿在桌子底下不停地抖,膝盖撞到铁皮柜子上,发出轻微的砰砰声。

命令敲下去的时候,我屏住了呼吸。那两秒钟,办公室里只有CRT显示器微弱的电流声,和我自己心脏跳动的咚咚声。窗外的雪不知道什么时候变大了,从沙沙声变成了簌簌声,大片的雪花扑在玻璃上,化成水痕,一道一道地流下来。

“好了!进去了!”孙总的吼声从听筒里炸出来,震得我差点把电话扔了,“小伙子!能打开了!工资表出来了!出来了!”

我听见电话那边传来一片欢呼声,男人的、女人的,有人在拍手,有人在说“可算好了”,那个叫小刘的会计似乎哭了,声音断断续续的:“孙叔对不起……是我……我……”

“哭什么哭!快核对数据!看有没有少!”

我靠在椅背上,后背全是汗,衬衫贴在皮肤上,冰凉冰凉的。我这才发现自己的手在抖,抖得很厉害,十根手指像是刚从冰水里捞出来,关节发僵,指腹的皮肤因为敲了太久键盘而微微发麻。

< 上一章 目录 下一章 >
×
命由我作,福自己求
连载中匿名 /