Dependent Origination

工作的一天

Posted on: September 28, 2008

08/17/2007

今天一天修了三个超级bug, 流水账一下。
早上起来刚到公司,qa就来说某台测试机器怎么当掉了。这台机器是我们给东岸的某大cable公司作系统集成测试用的。当掉就意味着该公司的测试完全被我们block掉,会遭到无数电话email还有各个他们的qa teams(至少三个),还有无数pm们的追讨 所 以我只好麻利儿利儿的赶紧去修。我们的ops manager到了colo发现重起没有什么用。每次apache一起来,马上就crash掉。我在core directory翻看了半天都是些美关系的内容,不明白为什么会这样。还好我老板厉害,查了apache的error log, 发现原因是我们前几天发现的bug, 但是我们的第三方partner可能是有很大的backlog, 所以连续发了很多request, 结果apache在fork, crash, clean up, writing core的重荷下彻底完蛋了,连core file都没有就死翘翘了。老板说这个没办法,一定要push a new build. 我几天前已经fix了这个bug, 但是因为已经是同一个地方的第二个bug了,所以没有急着check in, 而是想写些完整的test, 确保自己的fix的正确性。但是为了写这个test, 还需要另外一个test, 结果就一直没写完。今天没办法,只好奋力把两块地方的tests都写了。写完已经快两点了。
不过还挺高兴的,就去吃午饭。去的时候碰到另外一个同事也在拿东西,就随口问了一句,你也没吃午饭啊。本来只是随口说的,不过是聊儿聊儿天儿而已,没想到被这个同事面无表情,眼睛看都不看我一眼,语速非常快,充满了不耐烦地就奔儿回来。心里很郁闷 拿了一盘超级不健康的冬冬,和另外两个同事坐下来聊天儿,他们是qa team的,最近在招qa manager, 已经interview了好几个candidate了,但是都不满意。就和他们聊了聊最近的这些candidates, 以及他们在面试中所犯的种种错误。 比方说,有一个同学,好几关都过了,和team坐下来simulation日常工作。上来发表演讲说basic qa work is boring. 要到比较高级的级别才会有意思。整个qa team从此再也没有讲一句话。这个candidate就出局了。面试这种事情压力太大,脑子一时糊涂,就会犯这么低级的错误。同学们,大家一定要吸取教 训哈,千万不要脑子短路乱讲话的说
qa manager聊完,又继续谈了谈印度和中国的传统家庭文化问题。然后回去继续干活儿。回去发现哇原来我从二月份开始干了快半年的一个大project, 今天终于可以go live了 赶 紧call in the conference call, 跟东岸的某大公司的人都打打招呼什么的。他们turn on live, 我们要监视系统,看看有没有什么问题。虽然已经系统集成调试了两个月,但是可惜的是问题永远都会有的。这个大项目有三个公司参加,东岸某大公司,还有一个 小公司,还有我们。我们发现那个小公司的部分有问题,但是他们不在这个conference call上面。停掉live bridge, 联系他们fix, 然后再shake out, 意味着又要拖两天的时间。而且所有不能go live的时间我们都要另外run a separate load manually, 非常labor intensive and error prone. 事实上我指挥的小本run这个load, 大的screw up已经两次,本来昨天就可以的,不得已只好推到今天的。所以我们绝对不想再manually load了。所以我提议我们自己的code临时改一下,一个小时之内给一个patch, 这样子不用turn off the live bridge, 也不用再manual load。大家都同意了。因为谁也不想再manual load啦。哈哈。我和小本从conference call简直是飞奔到自己的desk, 立马开始改。改起来不容易,几个方案都行不通,试来试去,还好last resort是work的。不然真的不知道怎么办了。改完code, 还要setup environment来reproduce, 还要regression test, 免得改好这个那个又坏了。终于一个小时多一点儿的时候,这次真的go live了。大家都非常高兴,几个月的合作,经历了不少波折,priority change, development delay, design flaw, and reimplementation, 等等,终于走到今天,实在是不容易
btw, debugging for a conference call这件事真的不是人干的。压力太大。每次搞完,都好累,有脱一层皮的感觉,而且耗费的真力精神,一时半会儿都回不来。减寿是一定的,具体几年还没想好 debug 间隙我老板信步度来关心一下进度,然后亲切地向我说,你知道吗,如果conference call上面的人等得着急,你可以strip binary off debug information, just copy the binary. 这样传的时候会快很多的。靠。那要是再有问题怎么办。
不管怎么样,这时候已经六点多了。我心生倦意,琢磨着今天就这样儿了吧。接下去装模作样混一混然后就回家好了。谁成想,有人在六点多了push a new release to production, 然后卷手就跑了。我老板试啊试啊发现怎么这个东西不work呢。两个进程死锁,他来问我,因为同样死锁问题发生过一次,上次就是我修的。但是我们两个面面 相觑就是不知道是怎么回事儿。上次死锁之后,我改用select, 以为没事儿了。但是这次居然select返回,说有东西读,去读的时候死锁的。our basic assumption受到了前所未有的挑战,仿佛突然有人告诉那个摩门教的老头的几十个老婆之一离开老公也能活一样。没办法,把大拿找来,大拿也不太明 白,但是好歹大拿有怀疑对象,有嫌疑犯总比没有强,我们改了说先patch了看看。具体是怎么回事儿还不知道,不过肯定又是一个惊天大bug就是了。
到家的时候已经九点多了,下了米粉吃完就十一点了。一天很紧张很累,但是也很高兴。记流水账以念之。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

September 2008
M T W T F S S
« Dec   Oct »
1234567
891011121314
15161718192021
22232425262728
2930  

Twitter

  • is reflecting on the past three years and reading the article on divided self aptly showing up at the top of my tweeter feed. 2 months ago
  • is having a nice feeling of connecting dots all over the place. they are now illuminating the same point. 3 months ago
  • Style Transfer is fun! TensorFlow rocks! #WTM17 https://t.co/zYP0IFIDfp 5 months ago
  • couldn't get over the jetlag, sleeping during the day from seven to four, for days. 7 months ago
  • is emptying trash and happily discovering the available disk space now ranks at 100G+. 8 months ago

Flickr Photos

%d bloggers like this: