无意间听闻asp服务端认定udf为“写”(无论udf内定义的内容是修改record或者查询),因此存在的一些疑问:
按照Write Commit Level的默认设置:
● COMMIT_ALL (default) — 返回前提交所有副本。强一致性模式所需。
询问了一下chatgpt主副节点数据同步的方式(真实性未验证):
那这意味着,一个脚本内容为“读”的udf,要在数据的主副本执行,然后同步到所有的副本,才算执行完成,那不就有多余的耗时操作了吗,毕竟我脚本的内容是一个读操作,我只要有一个节点执行就行了,居然还要等所有副本执行,就因为服务端默认认定所有的udf都是“写”吗?
回答:
如果master执行后发现未修改任何一个字节 则不会向replica发起后续请求