我的知识星球 里有一个朋友提出了 SAP OData 服务 metadata 缓存方面的疑问,本文就来详细说一说:
jerry,啥时候有时间给介绍一下fiori的Metadata数据系统的处理机制吧。我现在在做的一个项目,用rap开发的。rap开发的service binding,在maintain service注册时,开始注册的服务命名错了。后来发现了后就删除了重新创建了一次。结果就出现了一个很有意思的现象,有时候打开app,界面上的那些filtertable控件都不显示了。用前端的error_log看系统有个错误,是和以前创建的那个服务有关。可是那个服务明明已经删除了。后来我debug了一下,发现系统表/iwfnd/i_med_vaa表里确实有一条和以前的服务绑定的数据,很奇怪。我尝试了各种正常操作都不能删除这条数据。而且,更奇怪的是,前端的app并不是每次都会没有控件,有时候会有。下午大体跟了一下代码,感觉这个东西和metadata有关,还与缓存有关。感觉系统好像用到了share object缓存了数据,当缓存数据不存在时就会从vaa表去取,结果由