Skip to content

Commit 3fa9fb6

Browse files
committed
Fixing issue where PointsWithinRadius was using a mismatched constant. Adding corresponding test fix
1 parent b295cfb commit 3fa9fb6

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

geo_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,9 @@ func RoundFloat(x float64, prec int) float64 {
7777
}
7878

7979
func stubPointsWithinRadiusQueries() {
80-
insideRangeQuery := "SELECT * FROM points a WHERE acos(sin(radians(37.619002)) * sin(radians(a.lat)) + cos(radians(37.619002)) * cos(radians(a.lat)) * cos(radians(a.lng) - radians(-122.374840))) * 6356.752300 <= 8.000000"
80+
insideRangeQuery := "SELECT * FROM points a WHERE acos(sin(radians(37.619002)) * sin(radians(a.lat)) + cos(radians(37.619002)) * cos(radians(a.lat)) * cos(radians(a.lng) - radians(-122.374840))) * %!f(int=6371) <= 8.000000"
8181
testdb.StubQuery(insideRangeQuery, nil)
8282

83-
outsideRangeQuery := "SELECT * FROM points a WHERE acos(sin(radians(37.619002)) * sin(radians(a.lat)) + cos(radians(37.619002)) * cos(radians(a.lat)) * cos(radians(a.lng) - radians(-122.374840))) * 6356.752300 <= 9.000000"
83+
outsideRangeQuery := "SELECT * FROM points a WHERE acos(sin(radians(37.619002)) * sin(radians(a.lat)) + cos(radians(37.619002)) * cos(radians(a.lat)) * cos(radians(a.lng) - radians(-122.374840))) * %!f(int=6371) <= 9.000000"
8484
testdb.StubQuery(outsideRangeQuery, nil)
8585
}

sql_mapper.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ func (s *SQLMapper) PointsWithinRadius(p *Point, radius float64) (*sql.Rows, err
1818
select_str := fmt.Sprintf("SELECT * FROM %v a", s.conf.table)
1919
lat1 := fmt.Sprintf("sin(radians(%f)) * sin(radians(a.lat))", p.lat)
2020
lng1 := fmt.Sprintf("cos(radians(%f)) * cos(radians(a.lat)) * cos(radians(a.lng) - radians(%f))", p.lat, p.lng)
21-
where_str := fmt.Sprintf("WHERE acos(%s + %s) * %f <= %f", lat1, lng1, 6356.7523, radius)
21+
where_str := fmt.Sprintf("WHERE acos(%s + %s) * %f <= %f", lat1, lng1, EARTH_RADIUS, radius)
2222
query := fmt.Sprintf("%s %s", select_str, where_str)
2323

2424
res, err := s.sqlConn.Query(query)

0 commit comments

Comments
 (0)