-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Fix GeoPoint issues on PostgreSQL (#3285 & #3659) #3660
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from 1 commit
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
05917b6
Fix GeoPoint issues on PostgreSQL (#3285 & #3659)
vferdiansyah 651d785
Fix for failed tests
vferdiansyah 6c8c494
Merge branch 'master' into master
flovilmart 859fe26
Add a near location test case
vferdiansyah f18cc3c
Merge branch 'master' into master
vferdiansyah File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
This looks fine.
Although I think it might be more readable to change the order of latitude/longitude when pushing them in
values
.So, leaving lines 328/329 as they originally were and replacing
values.push(fieldName, point.longitude, point.latitude, distanceInKM);
withvalues.push(fieldName, point.latitude, point.longitude, distanceInKM);
on line 330Uh oh!
There was an error while loading. Please reload this page.
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.
whenever in doubt about what
pg-promise
outputs, you can always run it throughpgp.as.format(query, values)
locally, throw the result into the console and see what's there ;)Uh oh!
There was an error while loading. Please reload this page.
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.
I may have incomplete understanding in what that
ST_distance_sphere
does, but just to make sure, the:name
formatting results in the value being wrapped into double quotes, as inST_distance_sphere("value",
, as per the SQL Names formatting.Are you guys sure this is what the function actually expects? 'Cos I'm not sure...
It looks very suspecious. Looks to me from the API documentation that it should be a string. Or am I wrong there?
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.
Original tests were passing, so I'd trust it. But I may be wrong
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.
Solution suggested by @kulshekhar also works actually. Just tried it on my local machine.
Not sure if this is what you meant @vitaly-t but as far as I can see, the results aren't wrapped in double quotes at all.
Yes, original tests were passing @flovilmart and it works fine so far on my app.
Uh oh!
There was an error while loading. Please reload this page.
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.
The best way to see what is really going on in terms of the queries being executed, is with pg-monitor. You can diagnose issues much quicker than.
For that just update PosgresClient.js like this:
var monitor = require('pg-monitor');
monitor.attach(dbOptions);
to attach to the pg options objectmonitor.setTheme('matrix');
And of course install it first
npm install pg-monitor --save
Then you will be able to see every query the module executes 😉