- Notifications
You must be signed in to change notification settings - Fork15
KNN support for spoints#116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
doc/indices.sgm Outdated
| </listitem> | ||
| </itemizedlist> | ||
| <para> | ||
| GiST index can be used also for fast finding points closest to the given one |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Change "fast finding points" to "quickly finding the points".
doc/indices.sgm Outdated
| <para> | ||
| GiST index can be used also for fast finding points closest to the given one | ||
| when ordering by an expression with the <literal><-></literal> operator | ||
| is used, as shown in an example below. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Remove "is used" and move the comma to be at the end of "operator" on the previous line.
| <![CDATA[CREATE INDEX test_pos_idx USING BRIN ON test (pos) WITH (pages_per_range = 16);]]> | ||
| </programlisting> | ||
| </example> | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Based on the other</sect1> tags I saw, I don't think this blank line before</sect1> should have been removed.
| AS 'MODULE_PATHNAME', 'g_spoint_consistent' | ||
| LANGUAGE 'c'; | ||
| CREATE FUNCTION g_spoint_distance(internal, spoint, smallint, oid, internal) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Create an upgrade script and add this function to it.
pgs_gist.sql.in Outdated
| OPERATOR 14 @ (spoint, spoly), | ||
| OPERATOR 15 @ (spoint, sellipse), | ||
| OPERATOR 16 @ (spoint, sbox), | ||
| OPERATOR 17<-> (spoint, spoint) FOR ORDER BY float_ops, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Whitespace doesn't match the otherOPERATOR lines surrounding this addition. The17 should line up with the16 on the previous line for starters.
src/gist.c Outdated
| } | ||
| staticdoubledistance_vector_point_3d (Vector3D*v,doublex,doubley,doublez) { | ||
| returnacos ( (v->x*x+v->y*y+v->z*z) /sqrt(x*x+y*y+z*z ) );// as v has length=1 by design |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Remove the space afteracos.
src/gist.c Outdated
| v_high.y= (double)box->high.coord[1] /MAXCVALUE; | ||
| v_high.z= (double)box->high.coord[2] /MAXCVALUE; | ||
| // a box splits space into 27 subspaces (6+12+8+1) with different distance calculation | ||
| if(v_point.x<v_low.x) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Changeif( toif ( throughout this function in order to match the coding style of pgsphere.
src/gist.c Outdated
| if(v_point.x<v_low.x) { | ||
| if(v_point.y<v_low.y) { | ||
| if(v_point.z<v_low.z) { | ||
| retval=distance_vector_point_3d (&v_point,v_low.x,v_low.y,v_low.z);//point2point distance |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Changedistance_vector_point_3d ( todistance_vector_point_3d( throughout this function in order to match the coding style of pgsphere.
| v->spl_ldatum_exists=v->spl_rdatum_exists= false; | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
An extra blank line doesn't need to be added here.
src/gist.c Outdated
| PG_RETURN_FLOAT8(retval); | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Two too many blank lines added here, I think.
vitcpp commentedDec 12, 2023
I used pgindent to reformat new functions in gist.c. |
esabol left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
A couple more very minor changes to the documentation, please.
Still needs an upgrade script. And maybe a version bump?
doc/indices.sgm Outdated
| </listitem> | ||
| </itemizedlist> | ||
| <para> | ||
| GiST index can be also used for quickly finding the points closest to the given one |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
ChangeGiST index toA GiST index. Sorry should have caught that in my previous review.
doc/indices.sgm Outdated
| <![CDATA[VACUUM ANALYZE test;]]> | ||
| </programlisting> | ||
| <para> | ||
| To find points closest to a given spherical position, use the <literal><-></literal> operator: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
ChangeTo find points toTo find the points.
| @@ -0,0 +1,16 @@ | |||
| -- Upgrade: 1.4.2 -> 1.5.0 | |||
| CREATE FUNCTION g_spoint_distance(internal, spoint, smallint, oid, internal) | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
UseCREATE OR REPLACE in the upgrade script? See issue#111.
esabol left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Looks good to me!
Raise the version up to 1.5.0, add upgrade scriptFix issues found after the review
vitcpp commentedDec 20, 2023
Squashed latest 3 commits. The two commits are kept - the original commit and the commit with code adjustment. |
This is the original patch for review and improvement.