Error: Unexpected token at position 0: <
[error] GenServer #PID<0.2048.0> terminating
** (Poison.ParseError) Unexpected token at position 0: <
(poison) lib/poison/parser.ex:353: Poison.Parser.value/3
(poison) lib/poison/parser.ex:64: Poison.Parser.parse!/2
(httpoison) lib/httpoison/base.ex:866: HTTPoison.Base.response/8
(geocoder) lib/geocoder/providers/open_street_maps.ex:139: Geocoder.Providers.OpenStreetMaps.request_all/2
(geocoder) lib/geocoder/providers/open_street_maps.ex:149: Geocoder.Providers.OpenStreetMaps.request/2
(geocoder) lib/geocoder/providers/open_street_maps.ex:11: Geocoder.Providers.OpenStreetMaps.geocode/1
(geocoder) lib/geocoder/worker.ex:71: Geocoder.Worker.run/4
(geocoder) lib/geocoder/worker.ex:36: Geocoder.Worker.handle_call/3
(stdlib) gen_server.erl:661: :gen_server.try_handle_call/4
(stdlib) gen_server.erl:690: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Last message (from #PID<0.2158.0>): {:geocode, [address: "Dolomitenstraße 54, 13187 Berlin"], [timeout: 5000, stream_to: nil, store: true]}
State: [store: Geocoder.Store, provider: Geocoder.Providers.OpenStreetMaps]
Client #PID<0.2158.0> is alive
(stdlib) gen.erl:167: :gen.do_call/4
(elixir) lib/gen_server.ex:1007: GenServer.call/3
(poolboy) /home/******/deps/poolboy/src/poolboy.erl:84: :poolboy.transaction/3
(stdlib) erl_eval.erl:680: :erl_eval.do_apply/6
(elixir) src/elixir.erl:275: :elixir.eval_forms/4
(iex) lib/iex/evaluator.ex:257: IEx.Evaluator.handle_eval/5
(iex) lib/iex/evaluator.ex:237: IEx.Evaluator.do_eval/3
(iex) lib/iex/evaluator.ex:215: IEx.Evaluator.eval/3
(iex) lib/iex/evaluator.ex:103: IEx.Evaluator.loop/1
(iex) lib/iex/evaluator.ex:27: IEx.Evaluator.init/4
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
** (exit) exited in: GenServer.call(#PID<0.2048.0>, {:geocode, [address: "Dolomitenstraße 54, 13187 Berlin"], [timeout: 5000, stream_to: nil, store: true]}, 5000)
** (EXIT) an exception was raised:
** (Poison.ParseError) Unexpected token at position 0: <
(poison) lib/poison/parser.ex:353: Poison.Parser.value/3
(poison) lib/poison/parser.ex:64: Poison.Parser.parse!/2
(httpoison) lib/httpoison/base.ex:866: HTTPoison.Base.response/8
(geocoder) lib/geocoder/providers/open_street_maps.ex:139: Geocoder.Providers.OpenStreetMaps.request_all/2
(geocoder) lib/geocoder/providers/open_street_maps.ex:149: Geocoder.Providers.OpenStreetMaps.request/2
(geocoder) lib/geocoder/providers/open_street_maps.ex:11: Geocoder.Providers.OpenStreetMaps.geocode/1
(geocoder) lib/geocoder/worker.ex:71: Geocoder.Worker.run/4
(geocoder) lib/geocoder/worker.ex:36: Geocoder.Worker.handle_call/3
(stdlib) gen_server.erl:661: :gen_server.try_handle_call/4
(stdlib) gen_server.erl:690: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
(elixir) lib/gen_server.ex:1010: GenServer.call/3
(poolboy) /home/*****/deps/poolboy/src/poolboy.erl:84: :poolboy.transaction/3
When callinng Geocoder.call("Dolomitenstraße 54, 13187 Berlin") I get the error above
Elixir: 1.9.0 Geocoder: git/master
@cserb could you log the HTTP response from open street maps and post it here?
@iloveitaly Bandwidth limit exceeded as html and not json format :(
@cserb would you expect an {:error, :bandwidth_exceeded}? The exception being raised seems to indicate an exceptional condition ;P
@knrz exactly. Bandwith limit exceeded returns an unexpected (for geocoder) html body which should return an error
Hey @cserb and thanks for reporting this! Do you feel comfortable to file a PR that accounts for this error condition?
@carpodaster yes sure. But it'll take some time