测试总结--兼容性

1. DB兼容。 一般代码和SQL发布产线总有先后顺序,一般先发SQL,再发代码。这样就会涉及老代码和新SQL之间的兼容性问题。DB兼容性可以从以下几个方面考虑:

  1)DDL操作--新建表、新建列、新增索引等一般不需要考虑兼容性问题,因为老代码没有使用这个表。

  2)DML操作--插入、更新、删除 流水型数据,一般不需要考虑兼容性问题。

  3)DDL操作--删除正在使用的表;或者变更、删除、修改已有表的在使用的列名、类型、长度等。需要考虑兼容性

  4)DML操作--修改配置型数据,比如修改状态(有效、无效啥的),或者从某个值修改到另外一个值。需要考虑兼容性

2. 新老版本代码兼容。在版本发布过程中,可能会出现新代码老代码并行运行的情况。同一笔交易的处理可能会出现以下几种情况:

  1)交易整个处理流程都走的老代码逻辑--无兼容性问题

  2)交易整个处理流程都走的新代码逻辑--无兼容性问题

  3)交易是异步的,前一段是老代码处理逻辑、后一段是新代码处理逻辑。--新代码对老数据的处理逻辑需要兼容,保证数据被正确处理

  4)交易是异步的,前一段是新代码处理逻辑、后一段是老代码处理逻辑。--如果老代码处理不了,是否可以等发布完成后处理?

3. 下线代码或者优化代码逻辑时,要考虑历史存量数据和新的增量数据的处理,不要出现优化完存量数据无法被正常处理的问题。

 

posted on 2020-02-01 21:14  isl-歪歪  阅读(214)  评论(0编辑  收藏  举报

导航