#外部版本控制机制|
PUT /library/books/1?version=5&version_type=external
{"title": "Elosticsearch: The Definitive Guide" ,"name":{"first" : "Zachary","last" : "Tong"},"publish_date":"*2015-02-06*" ,"price" :"20"
}PUT /library/books/1?version=6&version_type=external
{"title": "Elasticsearch: The Definitive Guide" ,"name" :{"first" : "Zachary","last" : "Tong"},"publish_date":"*2015-02-06*" ,"price":"25"
}
到这里估计有人会没有看懂,上一篇博客不是讲版本自增的吗?而且上一个版本版本号是3,怎么可以版本定为5,这里就是外部版本控制,通过自定义版本控制,通过参数version_type=external来指定这个版本是自己控制
但是当我们再次执行这个操作就会报错,当前版本是5,提供是版本也是5 版本冲突
这个外部版本控制,会检查提供的的版本是不是高于当前的版本,低于或者等于都会失败,例如提供版本为6 、50 、100都行,行不行试试就知道了
从执行结果验证了外部版本控制,提供的版本要高于当前的版本就可以