-
从大切片切出一小段传出去处理,函数只 append 了几下我原始切片的数据却被悄悄串改了:Go 切片共享底层数组的数据污染避坑复盘
这是一个我改了 A、B 却莫名其妙也变了的诡异数据污染 bug,排查时让我对 Go 的切片产生了深深的敬畏。事情是这样的:我有一个切片装着一批数据,我从它里面切出一小段子切片传给另一个函数去处理,那个函数对子切片做了点 append 操作,我满以为它是在自己手里的那一小段上追加跟原来那个大切片八竿子打不着,可结果是函数处理完之后我那个原始的大切片里面的数据被悄悄地莫名其妙地改掉了几个。我明明只把一…- 0
- 0
-
用户数据莫名串味:Python 可变默认参数避坑复盘
这是我职业生涯里排查得最久也最毛骨悚然的一个 bug:一个 Python 写的接口偶尔会串味——A 用户请求自己的数据,返回里却莫名混进了 B 用户的几条记录。注意是偶尔,大部分时候都正常,只在生产高峰期零星出现,测试环境怎么都复现不了。对处理用户数据的系统来说这种串味最恐怖,它不是崩溃不是报错,而是静默的数据污染。我查了整整两天,一度怀疑是缓存串了、连接池复用了脏连接、是并发竞态,把能想到的高大…- 0
- 0
数据污染
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!


