Bulk load positions data

vrisha year ago

Hi,
I have about 13 billion positions raw data for about 150 devices that I need to load into Traccar in order to maintain history and run some analytics.

The data is not all clean, so I have to perform some pre-processing (adding headers, etc) and then I send to traccar via a raw TCP connection (port 5179 for ITS protocol). I process about 25000 records in a batch and send them over.

After loading certain amount of data (approximately 10000 records), the server closes the connection with a simple message (disconnected). After some time, the connection is opened and I'm able to send records again. But the messages that were sent in that duration are lost and traccar isn't capturing them.

Is there any other efficient way to load the data?

Below is the log that I think is related to the issue.

Any thoughts?

2023-11-04 18:42:01  INFO: [T403925bd] id: 869xxxxxxxxx185, time: 2023-09-06 04:50:49, lat: 20.3xxxx, lon: 85.82xxx, speed: 0.3, course: 0.0
2023-11-04 18:42:01 DEBUG: Event handled
2023-11-04 18:42:01  INFO: [T403925bd] disconnected
2023-11-04 18:42:09 DEBUG: Evict skipped, no excess threads QueuedThreadPool[qtp2105300252]@7d7c551c{STARTED,8<=8<=200,i=5,r=-1,t=-300110ms,q=0}[ReservedThreadExecutor@7010e8e5{reserved=0/4,pending=0}]
2023-11-04 18:42:09 DEBUG: Evict skipped, no excess threads QueuedThreadPool[qtp2105300252]@7d7c551c{STARTED,8<=8<=200,i=5,r=-1,t=-300111ms,q=0}[ReservedThreadExecutor@7010e8e5{reserved=0/4,pending=0}]
2023-11-04 18:42:09 DEBUG: Evict skipped, no excess threads QueuedThreadPool[qtp2105300252]@7d7c551c{STARTED,8<=8<=200,i=5,r=-1,t=-300111ms,q=0}[ReservedThreadExecutor@7010e8e5{reserved=0/4,pending=0}]
2023-11-04 18:42:09 DEBUG: Evict skipped, no excess threads QueuedThreadPool[qtp2105300252]@7d7c551c{STARTED,8<=8<=200,i=5,r=-1,t=-300111ms,q=0}[ReservedThreadExecutor@7010e8e5{reserved=0/4,pending=0}]
2023-11-04 18:42:09 DEBUG: Evict skipped, no excess threads QueuedThreadPool[qtp2105300252]@7d7c551c{STARTED,8<=8<=200,i=5,r=-1,t=-300170ms,q=0}[ReservedThreadExecutor@7010e8e5{reserved=0/4,pending=0}]
2023-11-04 18:42:22 DEBUG: HikariPool-1 - Pool stats (total=10, active=1, idle=9, waiting=0)
Anton Tananaeva year ago

Disconnected message means that the client has disconnected. So the issue is actually on your end.

vrisha year ago

Thanks. Let me try with another TCP client.

Any ideas / documentation on a theoretical connection limit in Traccar? Are these configurable?

Anton Tananaeva year ago

It's your system connection limit. And it is usually configurable in your system, at least in Linux.