vbr restore problem: TypeError: sequence item 17: expected string, NoneType found
Hi forum,
A customer is running a restore test (single node to different single node system) and getting the below error.
For me this looks strange, a user error should not be able to cause this.
Can you please advise what the problem can be?
I have attached the restore.ini file.
Thank you
2017-11-14 15:04:32 localhost location_locker Locked backup location: MappingBackupLocation(backup_host='muc-vcf-001.iavgroup.local', backup_dir='/home/dbadmin/QDM_Daten/Backup_KI-Test/node0001').
2017-11-14 15:04:32 localhost vbr Starting full restore of database qdm.
2017-11-14 15:04:32 localhost vbr Participating nodes: v_qdm_node0001.
2017-11-14 15:04:32 localhost vbr Reading backup manifests to find restore point.
2017-11-14 15:04:33 localhost vbr Restoring from restore point: backup_snapshot_20170920_094848
2017-11-14 15:04:34 localhost vbr Traceback (most recent call last):
File "/opt/vertica/bin/vbr", line 7896, in main
if vbr_task.run():
File "/opt/vertica/bin/vbr", line 3616, in run
return self._run()
File "/opt/vertica/bin/vbr", line 4859, in _run
restore_nodes))
File "/opt/vertica/bin/vbr", line 7594, in map
if not thr.join(Parallel.WAIT_QUANTUM):
File "/opt/vertica/bin/vbr", line 7570, in join
return self._thr.join(*args, kwargs)
File "/opt/vertica/bin/vbr", line 7524, in run
super(Parallel.CancellableThread, self).run()
File "/opt/vertica/oss/python/lib/python2.7/threading.py", line 763, in run
self.__target(*self.__args, **self.__kwargs)
File "/opt/vertica/bin/vbr", line 7558, in do_run
self._result = func(val)
File "/opt/vertica/bin/vbr", line 4858, in
lambda nodename: (nodename, self._get_db_path(nodename)),
File "/opt/vertica/bin/vbr", line 5006, in _get_db_path
self._config, self._database_info.get_host_name(node))
File "/opt/vertica/bin/vbr", line 2194, in get_host_database_dir
output = admintools.invoke(['-t', 'list_db', '-d', config.db_name])
File "/opt/vertica/bin/vbr", line 2027, in invoke
Logger.log(' '.join(cmd), 'admintools', level=2)
** TypeError: sequence item 17: expected string, NoneType found
Comments
Hi,
In your ini file, the dbName parameter is not set. Try setting the dbName parameter to the database name.
If that fixes the issue, please let me know so that I can document this.
Thanks!
Hi Jim,
the Python error given in my post was caused by a wrong specification of the backupdir parameter. It was given as
v_qdm_node0001 = muc-vcf-001.iavgroup.local:/home/dbadmin/QDM_Daten/Backup_KI-Test/node0001
but should have been (without the trailing node0001):
v_qdm_node0001 = muc-vcf-001.iavgroup.local:/home/dbadmin/QDM_Daten/Backup_KI-Test
An error message from the vbr.py script would have been nice on this one.
I have forwarded your comment on the dbName parameter to the customer.
Lets see if the restore works then.
Thanks
Dieter
Thanks for the update! I will send this post link to the Backup and Recovery team for their reference.
@DieterC - Fyi ... A fix for this issue is "planned" for Vertica 9.1!