ArcGIS Server 10.1-不一致的查询错误


9

我最近已升级到ArcGIS Server 10.1 SP1。自从进行切换以来,我遇到了很多不一致的错误,特别是使用Javascript API针对地图服务的REST API执行查询。

我之所以说不一致,是因为相同的查询有时会起作用,而有时我会收到“无法完成操作”错误。查询非常简单,例如where子句为“ COUNTRY_ID = 2”,我肯定它不是where子句,因为它始终可以从ArcGIS Server 10.0来工作。

直接从services目录在REST页面中测试查询会产生相同的结果。我的结果在成功和错误之间交替-查询1:成功,查询2:错误,查询3:成功,查询4:错误。

有没有人经历过类似的事情?

更新:从信息我发现这个帖子,我发现,使POST请求解决我的问题。

Answers:


6

绝对,您遇到了10.1中令人讨厌的错误NIM086349,当您向ArcGIS Server发出完全相同的GET请求/ QueryTask时,它将在其他请求上失败。看起来它对于SP2是固定的。埃里(Esri)工作的@Derek Swingley指出了这一点。NIM086349 http://forums.arcgis.com/threads/72894-Etags-and-Intermittent-QueryTask-Server-Errors


感谢您的链接。似乎是一个非常该死的大错误,要
放到

我同意-我不知道他们的测试中是怎么错过它的。作为开发人员,我要做的就是一次又一次地测试相同的数据-您会认为他们会注意到所有其他查询都失败了。就是说,如果您的自动化测试没有在每次运行前保留高速缓存或不清除高速缓存,则可能可以解释,因为我认为问题实际上与请求/响应上的ETAGS /高速缓存有关。如果将If-None-Match从标题中剥离并重复发送,将会发生什么会很有趣。en.wikipedia.org/wiki/HTTP_ETag
awesomo

该错误说它是在10.1 SP1中引入的,而不是在10.1 final中引入的。有一个QFE(补丁程序),因此,如果您必须早于10.2(以前是10.1 SP2)解决方案,请致电技术支持或您的区域分销商。
mkennedy

我看不到为此发布的特定补丁-您是说可以致电支持部门,他们会发送给您吗?support.esri.com/en/downloads/patches-servicepacks/…–
awesomo

如何获得ArcGIS 10.1 SP2?任何链接?也许联系支持中心?
KDot1254 2014年


0

选项1:

尝试重新发布服务。将新的mxd文件复制到服务器而不发布时遇到了此错误。

选项2:

尝试使用BinnyN已引用的唯一时间戳变通方法。下面是代码:

var uniqueTimestamp = (new Date()).getTime();    
query.where += " AND " + uniqueTimestamp + "=" + dirty;

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.