[
https://issues.apache.org/jira/browse/ASTERIXDB-1327?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15849499#comment-15849499
]
Jianfeng Jia commented on ASTERIXDB-1327:
-----------------------------------------
[~marti1125] Welcome to AsterixDB!
The related code should be in this
[file|https://github.com/apache/asterixdb/blob/2f9d4c3ab4d55598fe9a14fbf28faef12bed208b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/SpatialIntersectDescriptor.java]
You can debug the code by following this [wiki
page|https://cwiki.apache.org/confluence/display/ASTERIXDB/Debugging]
Finally, you can write test cases in the
{code}
asterix-app/src/test/resources/runtimets
{code}
folder.
Specifically, you need write the AQLs in the *queries* folder and put the
expected result in the *results* folder.
After that, you need to add it to the *testsuite.xml*.
Finally, you can test it by running
*org/apache/asterix/runtime/ExceptionTest.java* test code.
> Spatial-intersect between point and circle not working correctly
> ----------------------------------------------------------------
>
> Key: ASTERIXDB-1327
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-1327
> Project: Apache AsterixDB
> Issue Type: Bug
> Reporter: Steven Jacobs
> Assignee: Jianfeng Jia
> Attachments: EmergencyReports.adm, UserLocationsShort.adm
>
>
> The first query returns a large set of results. The second returns nothing
> {noformat}
> for $report in dataset EmergencyReports
> for $location in dataset UserLocations
> where $report.emergencyType = "earthquake"
> let $circle := create-circle($location.location,.1)
> where spatial-intersect($report.impactZone, $circle)
> return {
> "user at":$location.location,
> "report at":$report.impactZone
> }
> {noformat}
> {noformat}
> for $report in dataset EmergencyReports
> for $location in dataset UserLocations
> where $report.emergencyType = "earthquake"
> where spatial-intersect($report.impactZone, $location.location)
> return {
> "user at":$location.location,
> "report at":$report.impactZone
> }
> {noformat}
> Here are the DDL statements. I will attach the two datasets:
> {noformat}
> drop dataverse channels if exists;
> create dataverse channels;
> use dataverse channels;
> create type UserLocation as closed {
> recordId: uuid,
> location: point,
> user-id: string,
> timeoffset: float
> }
> create type EmergencyReport as closed {
> reportId: uuid,
> severity: int,
> impactZone: circle,
> timeoffset: float,
> duration: float,
> message: string,
> emergencyType: string
> }
> create dataset UserLocations(UserLocation)
> primary key recordId autogenerated;
> create dataset EmergencyReports(EmergencyReport)
> primary key reportId autogenerated;
> load dataset UserLocations using localfs
> (("path"="asterix_nc1:///Users/stevenjacobs/Desktop/EmergencyDataset/UserLocationsShort.adm"),("format"="adm"));
> load dataset EmergencyReports using
> localfs(("path"="asterix_nc1:///Users/stevenjacobs/Desktop/EmergencyDataset/EmergencyReports.adm"),("format"="adm"));
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)