[
https://issues.apache.org/jira/browse/ASTERIXDB-2176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17099380#comment-17099380
]
ASF subversion and git services commented on ASTERIXDB-2176:
Commit a28ddb731dfc242b0391a38564213fd4701a2955 in asterixdb's branch
refs/heads/master from Ian Maxon
[ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=a28ddb7 ]
[ASTERIXDB-2176] Python UDFs
- user model changes: yes
- storage format changes: no
- interface changes: yes
Details:
- Allow UDFs to be shiv-packaged python modules with their
dependencies
- Use pyro for python RPC
- Maven build for pyro package into server
- Remove JObject spatial types
- Simpler conversion from java primitive/standard types and
collections
to JObject equivalents
Change-Id: Ibea23a2e9308132f343d80eff04ede9a235aa021
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/5526
Contrib: Jenkins
Integration-Tests: Jenkins
Tested-by: Jenkins
Reviewed-by: Michael Blow
> Deletion doesn't work on the RTree index.
> -
>
> Key: ASTERIXDB-2176
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-2176
> Project: Apache AsterixDB
> Issue Type: Bug
>Reporter: Taewoo Kim
>Assignee: Chen Luo
>Priority: Major
>
> This is a simplified version of "upsert/primary-secondary-tree" AQL test case.
> spatialData.json file
> { "id": 12, "point": point("6.0,3.0") }
> moreSpatialData.json file
> {"id": 12, "point": point("4.1,7.0")}
> DDL:
> {code}
> drop dataverse test if exists;
> create dataverse test;
> use dataverse test;
> create type MyRecord as closed {
> id: int64,
> point: point
> }
> create dataset UpsertTo(MyRecord)
> primary key id;
> create dataset UpsertFrom(MyRecord)
> primary key id;
> create index rtree_index_point on UpsertTo(point) type rtree;
> {code}
> DML
> {code}
> load dataset UpsertTo
> using localfs
> (("path"="asterix_nc1://data/spatial/spatialData.json"),("format"="adm"));
> load dataset UpsertFrom
> using localfs
> (("path"="asterix_nc1://data/spatial/moreSpatialData.json"),("format"="adm"));
> upsert into dataset UpsertTo(
> for $x in dataset UpsertFrom
> return $x
> );
> for $o in dataset('UpsertTo')
> where spatial-intersect($o.point,
> create-polygon([4.0,1.0,4.0,4.0,12.0,4.0,12.0,1.0]))
> order by $o.id
> return $o;
> {code}
> This DML returns the new record correctly. But, the issue is that the indexed
> value in RTree has not been updated.
> When searching the rtree_index_point index, the searcher sees the previous
> value - point("6.0,3.0"), not the new value - point("4.1,7.0"). So, this
> record will be fetched from the primary index. However, the primary index
> search returns the updated value and the select() verifies the value. It
> returns true by coincidence because the new value satisfies the
> spatial-intersect() condition.
> The secondary index search should see the updated value, not the previous
> value. And this is an issue for the index-only plan case since it only uses
> the value from a secondary index.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)