我使用上述接口对模型数据集进行空间关系运算是,后台不停的输出如下异常,导致查询速度非常非常慢,最终能查询出结果,但耗时可能长达两分钟,导致业务完全不可用。

这是什么原因?以下是我的主要代码:
rs.moveFirst();
while (!rs.isEOF()) {
GeoModel3D geo = (GeoModel3D) rs.getGeometry();
int[] ids = SpatialQuery3D.spatialQuery(geo, recordset2, PositionMode.INTERSECTS); // 非常非常慢
if (ids != null && ids.length > 0) {
CollisionResult cr = new CollisionResult();
cr.add(coll.getDataset(), ids);
results.add(cr);
}
geo.dispose();
rs.moveNext();
}
使用的产品为iserver10版本,目前官方最新正式版。
windows 10 企业版 x64。
数据类型:udbx
测试数据:
链接: https://pan.baidu.com/s/1AKPt3sYHfxdNK6yhR2K_wA 提取码: 5zk3