timeouts for find address
timeouts for find address
Hello everybody,
we face a problem with timeouts of the xLocate. The response time for retrieving addresses is varying siginficantly with different input data:
- a call to find DE/67069/Ludwigshafen takes an average of 0.07 seconds
- a call to find FR/85770/L’Île-D’Elle takes an average of more than 5 seconds, which results in a higher chance to get a timeout.
By the way the timeouts happen after 8 seconds, but the xLocate configuration is set to 60s as far as I can judge...
This has been tested with xLocate 1.16.0.3 and map EuropePremium_2014_1N. When we are using map 2013_1aN the response time for L'Île-D'Elle is better (~1s), but the result is slightly different. The reponse time for Ludwigshafen stays the same. We already decided to obtain more recent map files to give it a try.
Has anybody experienced similar behaviour? Seems to me like it's related to non alphabetic characters in names, because we have the same issues with some scandinavian cities...
thanks in advance and regards,
Sascha
we face a problem with timeouts of the xLocate. The response time for retrieving addresses is varying siginficantly with different input data:
- a call to find DE/67069/Ludwigshafen takes an average of 0.07 seconds
- a call to find FR/85770/L’Île-D’Elle takes an average of more than 5 seconds, which results in a higher chance to get a timeout.
By the way the timeouts happen after 8 seconds, but the xLocate configuration is set to 60s as far as I can judge...
This has been tested with xLocate 1.16.0.3 and map EuropePremium_2014_1N. When we are using map 2013_1aN the response time for L'Île-D'Elle is better (~1s), but the result is slightly different. The reponse time for Ludwigshafen stays the same. We already decided to obtain more recent map files to give it a try.
Has anybody experienced similar behaviour? Seems to me like it's related to non alphabetic characters in names, because we have the same issues with some scandinavian cities...
thanks in advance and regards,
Sascha
- Bernd Welter
- Site Admin
- Posts: 2695
- Joined: Mon Apr 14, 2014 10:28 am
- Contact:
Re: timeouts for find address
Hello Sascha,
I just talked to one of our geocoding experts who will take a look at the posting. His first statement was that this might be related to the splitting of the input names based on apostrophe, hyphen, blanks, ... at an early stage of geocoding we replace some characters ("Î" becomes "I"... no significant impact) and split the names (produces multiwords, could impact performance).
The guru will answer the posting on his own or he sends his info to me and I'll publish it here.
Stay tuned!
Bernd
I just talked to one of our geocoding experts who will take a look at the posting. His first statement was that this might be related to the splitting of the input names based on apostrophe, hyphen, blanks, ... at an early stage of geocoding we replace some characters ("Î" becomes "I"... no significant impact) and split the names (produces multiwords, could impact performance).
The guru will answer the posting on his own or he sends his info to me and I'll publish it here.
Stay tuned!
Bernd
Re: timeouts for find address
Hi Bernd,
thanks for the quick reply. By the way I also entered a support request, I hope this will not cause double work..
thanks for the quick reply. By the way I also entered a support request, I hope this will not cause double work..
- Bernd Welter
- Site Admin
- Posts: 2695
- Joined: Mon Apr 14, 2014 10:28 am
- Contact:
Re: timeouts for find address
Hello Sascha,
here is the experts perception (translated in ENGL. and shortened by me):
Best regards from Germany,
Bernd
here is the experts perception (translated in ENGL. and shortened by me):
I hope this answer explains what happens in the undergroundI can't reproduce the 5 seconds: on my machine the search for "DE/67069/Ludwigshafen" takes about 10msec and the search for "FR/85770/L'Île-D'Elle" requires about 1,8sec. [..] The cause for the different response times is located in the multi word search in combination with the following intersection search. Searching for "Ludwigshafen" produces a rather small intermediate result. With "L'Île-D'Elle" this is totally different:
Within the preprocessing step we remove the special characters, i.e. we are no longer looking for one word but for four of themNow each one of these words raises an individual search and afterwards we compute the intersection.
- L
- Ile
- D
- Elle
Furthermore the words (patterns) "L" and "D" match any names that start with either L or D and therefore produce large temporary result sets. Voilà: this is what causes the ugly performance.
Looking for "FR/85770/Ile Elle" returns a result after just 20msec.
Looking for "FR/85770/L D" takes 2.7seconds.
Best regards from Germany,
Bernd
Re: timeouts for find address
Hi Bernd,
thanks for the reply. This answers quite some questions. We consider parsing the city string for single character words before sending it to the xServer. On the other hand there still is the open question why the timeout is reached after 8s though it is set to 60s and the different response times for different maps. In the meantim I am in contact with PTV support and if I get any newsworthy information, I will share it here.
cheers,
Sascha
thanks for the reply. This answers quite some questions. We consider parsing the city string for single character words before sending it to the xServer. On the other hand there still is the open question why the timeout is reached after 8s though it is set to 60s and the different response times for different maps. In the meantim I am in contact with PTV support and if I get any newsworthy information, I will share it here.
cheers,
Sascha
- Bernd Welter
- Site Admin
- Posts: 2695
- Joined: Mon Apr 14, 2014 10:28 am
- Contact:
Re: timeouts for find address
Hello Sascha,
refering to the question about 8secs versus 60 secs: Within the xServers there are various triggers for timeouts. Some are located within the framework level while others refer to a specific backend function: here are some examples:
xserver.properties
So within the geocoding you probably ran into the engine timeouts.
Best regards
Bernd
refering to the question about 8secs versus 60 secs: Within the xServers there are various triggers for timeouts. Some are located within the framework level while others refer to a specific backend function: here are some examples:
xserver.properties
- backendPingInterval=10000
- backendPingTimeout=5000
- maxTimeWithoutPing=20000
- killDelayAfterCancelRequestedByUser=5000
- killDelayAfterCancelRequestedByTimeout=5000
- jobResultRetentionTime=604800000
- fetchedJobResultRetentionTime=300000
- zombieJobRetentionTime=86400000
- requestQueueTimeout=60000
- moduleTimeout=60000
- jobModuleTimeout=-1
- jobQueueTimeout=-1
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<LocatingEngineParameters>
<SearchParameters>
[..]
<Engine.CitySearchTimeout Value="7500" Type="long"/>
<Engine.StreetSearchTimeout Value="7000" Type="long"/>
<Engine.SuggestionSearchTimeout Value="1000" Type="long"/>
[..]
</SortingOrder>
</LocatingEngineParameters>
Best regards
Bernd
- Bernd Welter
- Site Admin
- Posts: 2695
- Joined: Mon Apr 14, 2014 10:28 am
- Contact:
Re: timeouts for find address
And by the way: please make sure to provide optimal conditions for performant computing
- use a local copy of the map - no network share
- no request logging==true on production
- no response logging=true on production
- no debug logging on production
- sufficient amount of memory
Re: timeouts for find address
Hi Bernd,Bernd Welter wrote:And here are those mentioned in the xlocate native xml profiles (native-default.xml)So within the geocoding you probably ran into the engine timeouts.Code: Select all
<?xml version="1.0" encoding="UTF-8"?> <LocatingEngineParameters> <SearchParameters> [..] <Engine.CitySearchTimeout Value="7500" Type="long"/> <Engine.StreetSearchTimeout Value="7000" Type="long"/> <Engine.SuggestionSearchTimeout Value="1000" Type="long"/> [..] </SortingOrder> </LocatingEngineParameters>
Just checked it on our test server and it's actually about the CitySearchTimeout. We will see which value would be the best compromise for us at the moment. I wasn't aware of the LocatingEngineParameters. Are they described in the documentation somewhere?
Since the overall response time seems to be rather slow, what are the recommendations for the memory settings for the xLocate?Bernd Welter wrote:And by the way: please make sure to provide optimal conditions for performant computing
- sufficient amount of c
Thanks a lot for the help.
Sascha
- Bernd Welter
- Site Admin
- Posts: 2695
- Joined: Mon Apr 14, 2014 10:28 am
- Contact:
Re: timeouts for find address
Hello skinder,
I don't know a public documentation of these parameters but I'll forward this request to the person in charge.
Best regards
Bernd
I don't know a public documentation of these parameters but I'll forward this request to the person in charge.
Best regards
Bernd
Re: timeouts for find address
Hello skinder,
attached you will find a documentation about the LocatingEngineParameter Engine.CitySearchTimeout and Engine.StreetSearchTimeout.
Best Regards,
Isabel
attached you will find a documentation about the LocatingEngineParameter Engine.CitySearchTimeout and Engine.StreetSearchTimeout.
Best Regards,
Isabel
- Attachments
-
- Using LocatingEngineTimeouts.pdf
- How to use LocatingEngineTimeouts
- (228.44 KiB) Downloaded 918 times