先贴代码:
try:
  # 判断表中数据是否存在,存在更新,不存在新增
  if not existing:
      db.session.execute(
          ServiceAsset.__table__.insert(),
          [{'xxx': xxx}]
      )
  else:
      ServiceAsset.query.filter_by(host_id=xxx, port=xxx).update({'xxx':'xxx'})
  db.session.commit()
except Exception as e:
  db.session.rollback()
# ServiceAsset 表数据入库后,马上在 ServiceAsset 表进行一个查询获取 ServiceAsset 表的 id
try:
  service_asset_query = ServiceAsset.query.filter(and_(xx=xx, xxx=xxx)).all()
  if not service_asset_query:
      log.write('info', None, 0, u'在 ServiceAsset 中根据 xx 和 xxx 未获取到资产信息')
      pass
  for saq in service_asset_query:
      service_id_cur = saq.service_id
except Exception as e:
    db.session.rollback()
大概插入了几百条数据,其中会有几条获取不到 service_asset_query。

请问下各位表哥们,有遇到这种情况吗?该如何解决
=================================== 12.13更新: 后面跟公司运维确认,mysql做了主从,写和更新操作全是主库,查询操作是主库和从库一起,做负载均衡。
我遇到的这个问题是我要即时查询(数据一插入我就要立即查询),但是主库和从库同步时间有时候可能没那么快。
数据写入主库,但是我的查询全是走的从库,所以会遇到问题。
后来跟运维了解,我们好像用的是kingshard架构,查询的时候直接在sql之前加个 /master/ ,直接是在主库查询。
我就把查询改成了写原生sql:
db.session.execute(sql语句)
     1 
                    
                    rogwan      2019-12-12 13:10:39 +08:00 via iPhone 
                    
                    如果读写并行,或者有主备的时候,可能出现这个情况,假如插入 100 条数据,在写 90 条的时候,来读取就会遗漏部分还在 session 里的数据。 
                 | 
            
     4 
                    
                    lhx2008      2019-12-12 14:11:44 +08:00 via Android 
                    
                    一般就不管了,反正等会会插进去的。。要不你就强制主库查 
                 | 
            
     6 
                    
                    simapple      2019-12-12 14:48:30 +08:00 
                    
                    session 的问题 
                 | 
            
     8 
                    
                    wukangave      2019-12-12 14:59:35 +08:00 
                    
                    数据库经典的 read-after-write-consistency 问题。当写入后立即读取时,要保证从主节点读 
                 | 
            
     10 
                    
                    exip      2019-12-12 16:04:17 +08:00 via Android 
                    
                    这好像是事务应该解决的问题. 
                 | 
            
     11 
                    
                    jwchen      2019-12-13 17:02:48 +08:00 
                    
                    主从要想想办法自己控制去哪里读,实时性高的当然要价格 is_salve 之类的参数 
                 |