V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
DeadLion
1.7D

气炸了,我需要吐槽下 xx 同事

  •  
  •   DeadLion · Apr 9, 2020 · 5943 views
    This topic created in 2216 days ago, the information mentioned may be changed or developed.

    最近因为某些原因升级了 java 容器,从 tomcat 换到 jetty 。

    结果有个业务方报故障了,后来查到原因是因为他们在 http header 里 Content-Encoding 传了 UTF-8

    结果 jetty 报 501,之前 tomcat 倒是不报。

    其他调用方都没问题,就他们业务报障,然后我找到他们希望能尽快改掉,这个按照 http 规范的话肯定就是传错了,他们应该是要设置 charset 。

    然后我就被一顿说:你们升级咋不告诉我们,我们以前都是好的,现在要改必须要提需求,balabala 。。。。。

    我都无语了,我帮你们发现了 bug,还要怪我?

    这感觉就像小偷一直偷偷摸摸,然后被抓了,结果怪警察第一次为啥不抓?

    需要时间改可以理解,但是这么理智气壮的甩锅我实在是无法理解。

    不知道大家怎么看这个问题。

    Supplement 1  ·  Apr 9, 2020
    1.生产环境并没有做全量更新,只更新一台,类似预生产测试,出现报障后也立即下线回滚了。
    2.确实没有周知上下游,一个是没有对业务逻辑做变更,只是对底层框架升级;二是管理混乱,接口开出去现在都不知道到底有哪些业务在调用。三是测试不规范做不到每次变更全量测试、回归测试;
    3.我吐槽的重点不是生产报障谁的责任,而是这个故障发现之后联系业务方修改的态度。
    Supplement 2  ·  Apr 9, 2020
    升级是在预生产环境验证,并不是全量更新,这个怪我没说清楚,所以不存在谁承担责任的问题,当然我也不否认是自己负责的升级直接导致了问题。

    不否认测试的重要性,但是大家应该都知道测试环境测的再好,上生产也还是会碰到各种奇奇怪怪的问题。

    我吐槽重点呢,举个例子就像是,我发现 xxx 产品的 bug 了,然后原因我也告诉他们了,然后他们表示你需要提个功能需求我们才能改。这个难道不是 bug fix 吗?
    38 replies    2020-04-11 01:36:54 +08:00
    sun1991
        1
    sun1991  
       Apr 9, 2020   ❤️ 1
    那你们升级究竟有没有通知到他们, 或者至少发公开邮件?
    b821025551b
        2
    b821025551b  
       Apr 9, 2020
    首先,框架更新之类的需要完善的测试用例支撑,各种服务都要测一遍,甚至要兼容以前留存的 bug,否则不要去做;
    就这次事件来看,他们确实是存在 bug,但是这个 bug 之前没有发现,而是因为你们做了迁移才最终发现,这个锅要算在迁移测试人员以及迁移人员头上,和出 bug 业务线那里没有直接关系;
    至于出 bug 业务线那里,和你没直接关系,该怎么处理要他那边 leader 说了算,目前来看这锅就得你们接下来。
    lhx2008
        3
    lhx2008  
       Apr 9, 2020
    提 bug 单改就行,然后如果切换运行环境,也是现在测试环境改吧,也不是很急的事情,说不定还有其他问题,集成测试,收敛回归什么的都要做的
    kidlj
        4
    kidlj  
       Apr 9, 2020
    你的锅。
    hdonghong
        5
    hdonghong  
       Apr 9, 2020
    老实说,这种情况属于你们的锅
    toma77
        6
    toma77  
       Apr 9, 2020
    就算有 bug,之前没问题,因为你们升级而没通知他们使 bug 发作,应该是你们的锅。
    k9982874
        7
    k9982874  
       Apr 9, 2020 via iPhone
    bug 发现不了就不是 bug,你品你细品
    Jooooooooo
        8
    Jooooooooo  
       Apr 9, 2020   ❤️ 2
    你的问题

    至少在以下几个方面都有问题, 水平待提高, 这样做事以后也依然会出问题的

    1. 风险评估不到位. 组件升级这么重要的事情, 上下游有没有一起评估过? 升级方案是什么? 带来的风险点都考虑了哪些(这个例子显然没有考虑到上游传错的问题)

    2. 没有考虑预案, 升出问题了怎么办完全没考虑, 只知道现场查问题, 临时解决, 临时解决往往都考虑不全面, 很容易带来新的问题.

    3. 升级东西线上出问题第一想法居然不是回滚, 你们啥业务啊报错就报错无所谓吗?

    4. 人家说的完全没问题, 1 升级怎么没有周知. 2 这个肯定不是临时可以改的, 测试啥的都要花时间, 咋能说做就做? 正确做法就是你赶紧回滚, 项目重新考虑
    Nimrod
        9
    Nimrod  
       Apr 9, 2020 via Android
    所以升级前没有上下游商量吗?
    heww
        10
    heww  
       Apr 9, 2020
    如果你们这一方不能回滚的话,比如新功能依赖于这个组件的升级。

    赶紧在你们的 jetty 前面搞一个 proxy,把 header 给 fix 了再传给 jetty,先解决问题。
    rubytek
        11
    rubytek  
       Apr 9, 2020
    你们测试环境都不先测一下的吗
    rockjike
        12
    rockjike  
       Apr 9, 2020 via Android
    你的问题,评估影响范围,再一一通知,涉及地方都要测试
    DeadLion
        13
    DeadLion  
    OP
       Apr 9, 2020
    @rubytek 测试只会测试自己业务参数,谁会知道在 header 里乱传东西呢
    @heww 预生产发现的故障 ,并没有全量更新。所以不存在谁的责任的问题
    @Jooooooooo 预生产发现的故障 ,并没有全量更新。也第一时间回滚了
    icyalala
        14
    icyalala  
       Apr 9, 2020
    "我吐槽的重点不是生产报障谁的责任,而是这个故障发现之后联系业务方修改的态度。"
    难道搞清生产报障谁的责任这不是重点吗?
    对方规范不好但运行正常,你严格按照规范来把对方搞挂了,你觉得对于公司来说,规范重要还是正常运行重要?
    rim99
        15
    rim99  
       Apr 9, 2020
    升级之前没测试吧,至少测试覆盖的不够
    yixiang
        16
    yixiang  
       Apr 9, 2020
    这个 bug 是对方的 bug 。出现 501 的责任是你的责任。

    这是两回事。
    aabbcc112233
        17
    aabbcc112233  
       Apr 9, 2020
    @DeadLion “我都无语了,我帮你们发现了 bug,还要怪我?”
    哪个系统没有 bug,哪个系统没有屎山代码,然而都是要去优化的吗?
    不是稳定运行更重要吗?
    hq136234303
        18
    hq136234303  
       Apr 9, 2020
    设计业务服务都得通知其他关联服务的人员吧。我之前有个同事 接口改了都没通知我们嗯,最后线上出了问题,被骂死了。
    lxml
        19
    lxml  
       Apr 9, 2020
    感觉别人甩的没啥问题……
    wangxiaoaer
        20
    wangxiaoaer  
       Apr 9, 2020
    我去,楼上都…………

    楼主,我顶你,这完全是业务方的 bug 。现在暴露了而已。举个身份认证的例子,别人都是刷脸认证,结果某个客户天天刷屁股,但是也能通过,然后楼主升级了认证端,让那些原本就不合法的刷屁股行为统统失败,然后客户大闹说楼主没有提前通知,这尼玛又不是接口变更、业务变更,通知个迪奥啊!!!

    你家应用从 python 变成 golang 也要通知一下客户????
    tabris17
        21
    tabris17  
       Apr 9, 2020
    不做测试就升级?
    Chingim
        22
    Chingim  
       Apr 9, 2020 via Android   ❤️ 1
    @wangxiaoaer 人家业务方并没有逻辑上的 bug,只是 header 不规范。你举的例子不恰当
    chairuosen
        23
    chairuosen  
       Apr 9, 2020
    生产环境挂掉是你的锅,你的大锅里面套了一个小锅是对方 header 传错。
    coderluan
        24
    coderluan  
       Apr 9, 2020
    这事从专业的角度来说你俩都有锅,从工作的角度来说就只是楼主的锅了,毕竟整体环境都不专业,这时候也就别指望谁能多专业了,只是工作的话,自然是能不干就不干的好。
    tankren
        25
    tankren  
       Apr 9, 2020
    升级不通知相关方 你们的责任更大一些 贵司管理流程有点问题啊
    liwl
        26
    liwl  
       Apr 9, 2020
    @wangxiaoaer 影响别人业务了
    nekoneko
        27
    nekoneko  
       Apr 9, 2020
    我们调墨迹天气的天气服务,版本是 api11,后来发现服务不能用了,问了之后发现他们服务升级到了 api13,然后 api11 就停了,没有收到任何通知...
    xizismile
        28
    xizismile  
       Apr 9, 2020 via Android
    我要吐槽 ×
    我被吐槽 √
    wysnylc
        29
    wysnylc  
       Apr 9, 2020
    自爆卡车
    beidounanxizi
        30
    beidounanxizi  
       Apr 9, 2020
    我 tomcat 怎么了 性能怎么不行了 你非要升级 jetty 因为读起来好听么 😤哼
    jatesun
        31
    jatesun  
       Apr 9, 2020
    这升级跟闹着玩似的
    fewok
        32
    fewok  
       Apr 9, 2020
    淡定,根据谁改了谁的责任来看,你跑不掉。

    但是责任是人定的。你老板够硬,就可以用一群开发,学这么多年,http 协议都弄不清楚的理由,统统扣工资,不服就滚蛋。
    DeadLion
        33
    DeadLion  
    OP
       Apr 9, 2020   ❤️ 1
    @beidounanxizi 这事说起来又是一言难尽了
    有兴趣的话可以看看
    https://deadlion.cn/2020/03/27/spring-boot-%E8%BF%B7%E4%B9%8B-400-Bad-Request/
    jip
        34
    jip  
       Apr 9, 2020
    是你先不通知就升级,所以就别怪人家怼你
    efaun
        35
    efaun  
       Apr 10, 2020
    你这种人在我司是要被发邮件骂的
    WhoAmI233
        36
    WhoAmI233  
       Apr 10, 2020
    看到楼主被吐槽我就放心了
    beidounanxizi
        37
    beidounanxizi  
       Apr 10, 2020
    @DeadLion 首先这口锅 老哥你也逃不掉 真的 。。。没必要,升级那些基础组件和服务
    然后这种问题确实很蛋疼,
    只能说明你们招过来的研发真的不会是大专的吧
    起码本科吧 再不济 二本 再不济 一本 再不济 211.。。
    如果遇到其他 没有违背 RFC 规范的话 这口锅就完完全全是你的了
    反正协商解决吧 都是同事
    UxCZbWShjEsL
        38
    UxCZbWShjEsL  
       Apr 11, 2020 via iPhone
    @beidounanxizi 哈哈哈
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2504 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 114ms · UTC 08:04 · PVG 16:04 · LAX 01:04 · JFK 04:04
    ♥ Do have faith in what you're doing.