robjuz / helm-charts

https://robjuz.github.io/helm-charts/index.yaml
34 stars 30 forks source link

[Nominatim-Updates] value too long for type character(1) #63

Closed dbt-lucka closed 8 months ago

dbt-lucka commented 8 months ago

I have set up Nominatim successfully and am trying to setup nominatim-updates now. However its failing:

2023-10-13 15:00:26: Using project directory: /nominatim
2023-10-13 15:01:09  osm2pgsql version 1.7.2
2023-10-13 15:01:09  Database version: 15.4
2023-10-13 15:01:09  PostGIS version: 3.2
2023-10-13 15:01:10  Parsing gazetteer style file '/usr/local/etc/nominatim/import-full.style'.
Processing: Node(70k 70.0k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(170k 85.0k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(280k 93.3k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(470k 117.5k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(600k 120.0k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(780k 130.0k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
Processing: Node(970k 138.6k/s) Way(0k 0.00k/s) Relation(0 0.0/s)
2023-10-13 15:01:18  ERROR: DB copy thread failed: Ending COPY mode for 'place' failed: ERROR:  value too long for type character(1)
CONTEXT:  COPY place, line 1, column osm_type: "108539"
.
Traceback (most recent call last):
  File "/usr/local/bin/nominatim", line 14, in <module>
    exit(cli.nominatim(module_dir='/usr/local/lib/nominatim/module',
  File "/usr/local/lib/nominatim/lib-python/nominatim/cli.py", line 264, in nominatim
    return parser.run(**kwargs)
  File "/usr/local/lib/nominatim/lib-python/nominatim/cli.py", line 126, in run
    return args.command.run(args)
  File "/usr/local/lib/nominatim/lib-python/nominatim/clicmd/replication.py", line 196, in run
    self._update(args)
  File "/usr/local/lib/nominatim/lib-python/nominatim/clicmd/replication.py", line 153, in _update
    state = replication.update(conn, params, socket_timeout=args.socket_timeout)
  File "/usr/local/lib/nominatim/lib-python/nominatim/tools/replication.py", line 133, in update
    run_osm2pgsql_updates(conn, options)
  File "/usr/local/lib/nominatim/lib-python/nominatim/tools/replication.py", line 154, in run_osm2pgsql_updates
    run_osm2pgsql(options)
  File "/usr/local/lib/nominatim/lib-python/nominatim/tools/exec_utils.py", line 159, in run_osm2pgsql
    subprocess.run(cmd, cwd=options.get('cwd', '.'),
  File "/usr/lib/python3.10/subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/local/lib/nominatim/osm2pgsql', '--hstore', '--latlon', '--slim', '--log-progress', 'true', '--number-processes', '1', '--cache', '2000', '--style', '/usr/local/etc/nominatim/import-full.style', '--output', 'gazetteer', '--append', '--with-forward-dependencies', 'false', '/nominatim/osmosischange.osc']' returned non-zero exit status 2.

It might be important to know that the database has been set up out of a pg_dump by pg_restore. However nominatim works as expected in frontend. Any idea how to further debug this?

robjuz commented 8 months ago

My first idea: database version mismatch?

Second idea: some custom import params?

dbt-lucka commented 8 months ago

For some reason it resolved by overriding to the 4.3 image :-)