同事 A 写了个方法,同事 B 调用了 A 的方法 导致线上直接宕机 这个锅该谁背。。

2021-01-11 10:28:06 +08:00
 yasumoto
公司服务器连续几次宕机,导致有很多业务数据没进来,我们投放是花了钱的 后面找问题发现

是同事 A 写了个 sql 在 mybatis 里面用的<where><if xxx != null> xxx=xxx<if>....</where>类似这样的

同事 B 调用了这个方法,但是他的业务有的时候值没有 导致查询全表 1000 万的数据 机器直接卡死了

在阿里云显示慢 sql 执行了 500 多秒 - -

今天业务找过来说让员工负责一部分损失 ,问问大家 这个损失应该谁背呢
32654 次点击
所在节点    程序员
273 条回复
yinxianwei
2021-01-12 13:25:34 +08:00
话说代码没人审核吗?
guokeke
2021-01-12 14:38:57 +08:00
@yasumoto 如果以后赚的钱也给员工承担一部分那就没问题,如果只是拿工资干活,那上线流程也没走,只是程序做完了就上线,那还要其他人干什么?所以说还要看这员工是给自己打工还是只是单纯打工人。
zzzmh
2021-01-12 14:48:08 +08:00
我的经验是负责人背锅,一般一个项目要有个负责人,分派任务,审核代码,看测试报告,上线以后还要跟进数据和运行健康情况。如果员工每个人都自己写自己的,也没人统筹负责,那废了。
imkerberos
2021-01-12 14:50:51 +08:00
还好不是 free API 接口,否则 GNU 和微软有的赔了。
nolynfeng
2021-01-12 16:22:46 +08:00
如果非要背锅,B 和技术负责人,B>技术负责人,既然在调用别人的方法,那肯定需要考虑到调用会产生的情况,这属于考虑全吧,技术负责人没有对代码进行审核就上线,或者说审核没有发现问题,也需要承担一定责任,没测试也就不说什么了,并不是所有公司都有测试。。。
JiafuYuan
2021-01-12 16:40:05 +08:00
首先是公司责任,其次是领导责任,按收入比例依次承担,责任员工可以处罚,但不需要为错误承担损失.
stevenkang
2021-01-12 17:47:55 +08:00
修的房子跨了,责任算在码砖的工人上?

修的桥塌了,也算在修桥的工人上?
jimmyismagic
2021-01-12 19:07:59 +08:00
测试不会测出这么大数据量来的,所以还是开发 b 背锅,自己用别人的代码前当然得学习怎么用
dorothyREN
2021-01-12 19:34:28 +08:00
A 的错,错在不该让 B 用这个接口
polyang
2021-01-12 19:53:44 +08:00
@imkerberos 哈哈,怕是要直接赔破产了
elintwenty
2021-01-13 10:53:44 +08:00
这个锅要么是测试的,要么就是你们领导的。从正文里补充的“测试不背这个锅”来看,就是你们公司 /领导有问题。因为没有一个完整且有效的流程覆盖实际情况,更不用说各种监测、预警机制以发现、感知故障。出错难以避免,预防出错的制度才是解决错误的最好方法,仅仅靠单个人的主观意识不可能分毫无虞。如果靠研发在开发过程中为这种事情做最后的保障,也可以说质量毫无保障了。
Habyss
2021-01-13 13:12:35 +08:00
我的第一关注点是, 承担的损失是多少...
少的话,几百块,大家平摊,当个教训,然后一起总结怎样避免类似的问题.
多的话,直接离职,爱咋咋滴.
pythonee
2021-01-14 17:11:31 +08:00
@xuewuchen 这是认真的吗?
程序的接口是一个“Contract”,应该是程序员间的合同,不应该是互锁吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/743718

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX