ValidationError: Options must be a valid DocType for field Payment Terms (update from v8 --> v9)

Kindly guide with the below error, encountered while updating from v8 to v9

:~/frappe-bench$ bench update
INFO:bench.utils:updating bench
INFO:bench.utils:git pull
Already up-to-date.
INFO:bench.utils:./env/bin/pip install Pillow
Requirement already satisfied: Pillow in ./env/lib/python2.7/site-packages
Requirement already satisfied: olefile in ./env/lib/python2.7/site-packages (from Pillow)
INFO:bench.app:pulling frappe
INFO:bench.utils:git pull upstream develop
From GitHub - frappe/frappe: Low code web framework for real world applications, in Python and Javascript

  • branch develop → FETCH_HEAD
    Already up-to-date.
    INFO:bench.utils:find . -name “*.pyc” -delete
    INFO:bench.app:pulling erpnext
    INFO:bench.utils:git pull upstream develop
    From GitHub - frappe/erpnext: Free and Open Source Enterprise Resource Planning (ERP)
  • branch develop → FETCH_HEAD
    Already up-to-date.
    INFO:bench.utils:find . -name “*.pyc” -delete
    Updating Python libraries…
    INFO:bench.utils:./env/bin/pip install --upgrade pip
    Requirement already up-to-date: pip in ./env/lib/python2.7/site-packages
    INFO:bench.utils:./env/bin/pip install -q -r /home/vboxadmin/bench-repo/requirements.txt
    INFO:bench.utils:./env/bin/pip install -q -r ./apps/erpnext/requirements.txt
    INFO:bench.utils:./env/bin/pip install -q -r ./apps/frappe/requirements.txt
    Updating node libraries…
    INFO:bench.utils:npm install
    npm WARN frappe@ No description
    Backing up sites…
    Patching sites…
    Migrating site1.local
    Executing erpnext.patches.v8_7.add_more_gst_fields #21-09-2017 in site1.local (1bd3e0294da19198)
    Traceback (most recent call last):
    File “/usr/lib/python2.7/runpy.py”, line 174, in _run_module_as_main
    main”, fname, loader, pkg_name)
    File “/usr/lib/python2.7/runpy.py”, line 72, in _run_code
    exec code in run_globals
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 94, in
    main()
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 18, in main
    click.Group(commands=commands)(prog_name=‘bench’)
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 722, in call
    return self.main(*args, **kwargs)
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 697, in main
    rv = self.invoke(ctx)
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 535, in invoke
    return callback(*args, **kwargs)
    File “/home/vboxadmin/frappe-bench/env/local/lib/python2.7/site-packages/click/decorators.py”, line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/commands/init.py”, line 24, in _func
    ret = f(frappe._dict(ctx.obj), *args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/commands/site.py”, line 222, in migrate
    migrate(context.verbose, rebuild_website=rebuild_website)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/migrate.py”, line 31, in migrate
    frappe.modules.patch_handler.run_all()
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 29, in run_all
    if not run_single(patchmodule = patch):
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 63, in run_single
    return execute_patch(patchmodule, method, methodargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 83, in execute_patch
    frappe.get_attr(patchmodule.split()[0] + “.execute”)()
    File “/home/vboxadmin/frappe-bench/apps/erpnext/erpnext/patches/v8_7/add_more_gst_fields.py”, line 9, in execute
    make_custom_fields()
    File “/home/vboxadmin/frappe-bench/apps/erpnext/erpnext/regional/india/setup.py”, line 155, in make_custom_fields
    create_custom_fields(custom_fields)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 125, in create_custom_fields
    custom_field.save()
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 256, in save
    return self._save(*args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 307, in save
    self.run_post_save_methods()
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 887, in run_post_save_methods
    self.run_method(“on_update”)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 755, in run_method
    out = Document.hook(fn)(self, *args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 1024, in composer
    return composed(self, method, *args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 1007, in runner
    add_to_return_value(self, fn(self, *args, **kwargs))
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/model/document.py”, line 749, in
    fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 51, in on_update
    validate_fields_for_doctype(self.dt)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 389, in validate_fields_for_doctype
    validate_fields(frappe.get_meta(doctype, cached=False))
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 630, in validate_fields
    check_link_table_options(d)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 435, in check_link_table_options
    frappe.throw(
    (“Options must be a valid DocType for field {0} in row {1}”).format(d.label, d.idx))
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/init.py”, line 323, in throw
    msgprint(msg, raise_exception=exc, title=title, indicator=‘red’)
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/init.py”, line 309, in msgprint
    _raise_exception()
    File “/home/vboxadmin/frappe-bench/apps/frappe/frappe/init.py”, line 282, in _raise_exception
    raise raise_exception(encode(msg))
    frappe.exceptions.ValidationError: Options must be a valid DocType for field Payment Terms Template in row 100

Check this select field options in Payment terms doc type, row 100 and see if you have added any custom values.

May I request you to elaborate on the same please. v8 was a brand new install and I havent added any custom field

while updating I got a option of migrating to v9 … selecting that resulted in the following error

thanks

Same error faced… wat to do next?

Switch to master branch and force reinstall
That worked for me