toluaina/pgsync

Cannot run bootstrap

nik13 opened this issue · 4 comments

nik13 commented

PGSync version: 2.3.3

Postgres version: 13

Elasticsearch version: 8.4

Redis version: 7.0.5

Python version: 3.10

Problem Description: I'm trying to run bootstrap command normally, but its giving me following exception

Error Message (if any):

Traceback (most recent call last):
  File "/usr/local/bin/bootstrap", line 69, in <module>
    main()
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/usr/local/bin/bootstrap", line 64, in main
    sync.setup()
  File "/usr/local/lib/python3.10/site-packages/pgsync/sync.py", line 282, in setup
    self.create_view(
  File "/usr/local/lib/python3.10/site-packages/pgsync/base.py", line 492, in create_view
    create_view(
  File "/usr/local/lib/python3.10/site-packages/pgsync/view.py", line 228, in create_view
    for table_name, primary_keys, foreign_keys, indices in fetchall(
ValueError: not enough values to unpack (expected 4, got 3)

I'm using the latest commit ca76e53 .

This was due to a major change.
Can you please run the two commands below first

  • bootstrap -c schema.json -t
  • bootstrap -c schema.json

@toluaina Can you please share the reason behind using twice with and without -t

bootstrap -c schema.json -t
bootstrap -c schema.json

  • There was a change to ths structure of the internal view used by pgsync
  • So you need to remove/teardown the internal view first with
  • bootstrap -c schema.json --teardown or bootstrap -c schema.json -t
  • and then recreate it with bootstrap -c schema.json

I believe this has now been resolved ?