Error upgrading to latest v8.0.14

Howdy all

I am upgrading my dev to latest and get this error, thoughts?

 bench update
INFO:bench.utils:updating bench
INFO:bench.utils:git pull
Already up-to-date.
remote: Counting objects: 73, done.
remote: Total 73 (delta 52), reused 52 (delta 52), pack-reused 21
Unpacking objects: 100% (73/73), done.
From https://github.com/frappe/frappe
   300482b..5b61c9c  master     -> upstream/master
   ae088d2..23f4782  develop    -> upstream/develop
 * [new tag]         v8.0.19    -> v8.0.19
INFO:bench.utils:./env/bin/pip install Pillow
Requirement already satisfied: Pillow in ./env/lib/python2.7/site-packages
INFO:bench.app:pulling frappe
INFO:bench.utils:git pull  upstream master
From https://github.com/frappe/frappe
 * branch            master     -> FETCH_HEAD
Updating 300482b..5b61c9c
Fast-forward
 frappe/__init__.py                                 |    2 +-
 frappe/core/doctype/communication/communication.py |    4 +-
 .../doctype/feedback_trigger/feedback_trigger.py   |    2 +-
 frappe/core/doctype/role/role.json                 |   54 +-
 frappe/core/doctype/user/user.py                   |    8 +-
 .../custom/doctype/custom_field/custom_field.json  | 2073 ++++++++++----------
 frappe/desk/doctype/note/note.css                  |    3 +
 frappe/desk/form/load.py                           |    3 +
 frappe/desk/reportview.py                          |    4 +
 .../doctype/ldap_settings/ldap_settings.py         |   14 +-
 frappe/model/db_schema.py                          |    4 +-
 frappe/model/meta.py                               |    2 +-
 frappe/patches.txt                                 |    2 +
 frappe/patches/v8_0/drop_unwanted_indexes.py       |   17 +
 .../v8_0/update_published_in_global_search.py      |    1 -
 .../v8_0/update_records_in_global_search.py        |    5 +
 frappe/public/css/desk.css                         |    5 +
 frappe/public/css/desktop.css                      |    3 +-
 frappe/public/js/frappe/desk.js                    |    5 +-
 frappe/public/js/frappe/dom.js                     |   10 +-
 frappe/public/js/frappe/form/control.js            |    3 +-
 frappe/public/js/frappe/model/create_new.js        |   11 +-
 frappe/public/js/frappe/ui/toolbar/awesome_bar.js  |    2 +-
 frappe/public/js/frappe/ui/toolbar/search_utils.js |   80 +-
 .../public/js/frappe/views/reports/reportview.js   |    4 +
 frappe/public/less/desk.less                       |   15 +-
 frappe/public/less/desktop.less                    |    3 +-
 frappe/tests/test_global_search.py                 |   67 +-
 frappe/utils/global_search.py                      |   37 +-
 frappe/utils/user.py                               |    1 -
 frappe/www/login.py                                |    2 +-
 31 files changed, 1332 insertions(+), 1114 deletions(-)
 create mode 100644 frappe/desk/doctype/note/note.css
 create mode 100644 frappe/patches/v8_0/drop_unwanted_indexes.py
 create mode 100644 frappe/patches/v8_0/update_records_in_global_search.py
INFO:bench.utils:find . -name "*.pyc" -delete
INFO:bench.app:pulling erpnext
INFO:bench.utils:git pull  upstream master
remote: Counting objects: 18, done.
remote: Total 18 (delta 12), reused 12 (delta 12), pack-reused 6
Unpacking objects: 100% (18/18), done.
From https://github.com/frappe/erpnext
 * branch            master     -> FETCH_HEAD
   ed01912..5650bf9  master     -> upstream/master
Updating ed01912..5650bf9
Fast-forward
 erpnext/__init__.py                                |  2 +-
 .../accounts_settings/accounts_settings.json       | 64 ++++++++++++++++++++--
 erpnext/accounts/doctype/asset/depreciation.py     |  4 ++
 erpnext/accounts/doctype/asset/test_asset.py       | 22 +++++++-
 .../doctype/journal_entry/journal_entry.py         | 13 +++++
 .../accounts/doctype/pricing_rule/pricing_rule.py  |  6 +-
 .../purchase_invoice_item.json                     |  8 +--
 erpnext/accounts/doctype/sales_invoice/pos.py      | 21 ++++---
 .../doctype/sales_invoice/test_records.json        | 10 ++--
 .../doctype/sales_invoice/test_sales_invoice.py    | 19 +++++++
 .../sales_invoice_item/sales_invoice_item.json     |  4 +-
 erpnext/accounts/page/pos/pos.js                   | 37 +++++++++++--
 .../print_format/point_of_sale/point_of_sale.json  |  4 +-
 .../doctype/purchase_order/purchase_order.json     | 11 ++--
 .../purchase_order_item/purchase_order_item.json   | 10 ++--
 erpnext/controllers/accounts_controller.py         |  8 ++-
 erpnext/controllers/selling_controller.py          |  6 +-
 erpnext/controllers/taxes_and_totals.py            |  1 +
 erpnext/demo/user/fixed_asset.py                   |  3 +
 .../user/manual/en/stock/item/purchase-details.md  |  2 +-
 erpnext/hr/doctype/attendance/attendance.py        |  4 +-
 erpnext/patches.txt                                |  5 +-
 ...ble_booking_asset_depreciation_automatically.py |  9 +++
 ..._is_sample_item_to_allow_zero_valuation_rate.py |  3 +-
 ...ll_to_serial_nos_for_disabled_sales_invoices.py | 14 +++++
 erpnext/patches/v8_0/set_project_copied_from.py    | 11 ++++
 erpnext/projects/doctype/project/project.json      | 40 ++++++++++++--
 erpnext/projects/doctype/project/project.py        | 26 +++++++++
 erpnext/projects/doctype/task/task.py              |  4 +-
 erpnext/public/js/controllers/taxes_and_totals.js  |  2 +-
 erpnext/public/js/controllers/transaction.js       | 28 +++++++---
 erpnext/public/js/financial_statements.js          |  3 +-
 erpnext/public/js/templates/address_list.html      |  2 +-
 erpnext/selling/doctype/customer/test_customer.py  |  7 ++-
 .../selling/doctype/quotation/test_records.json    |  6 +-
 .../doctype/quotation_item/quotation_item.json     |  9 +--
 .../selling/doctype/sales_order/sales_order.json   | 14 ++---
 .../doctype/sales_order_item/sales_order_item.json |  6 +-
 .../stock/doctype/delivery_note/delivery_note.json | 12 ++--
 .../delivery_note_item/delivery_note_item.json     |  4 +-
 erpnext/stock/doctype/item/test_records.json       | 10 ++++
 .../doctype/purchase_receipt/purchase_receipt.json |  4 +-
 .../purchase_receipt_item.json                     |  8 +--
 .../stock_entry_detail/stock_entry_detail.json     |  4 +-
 erpnext/stock/get_item_details.py                  | 19 ++++++-
 erpnext/templates/pages/product_search.py          |  5 +-
 46 files changed, 406 insertions(+), 108 deletions(-)
 create mode 100644 erpnext/patches/v8_0/enable_booking_asset_depreciation_automatically.py
 create mode 100644 erpnext/patches/v8_0/set_null_to_serial_nos_for_disabled_sales_invoices.py
 create mode 100644 erpnext/patches/v8_0/set_project_copied_from.py
INFO:bench.utils:find . -name "*.pyc" -delete
INFO:bench.app:pulling erpnext_shopify
INFO:bench.utils:git pull  upstream develop
From https://github.com/frappe/erpnext_shopify
 * 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/erpnext/.bench/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/erpnext_shopify/requirements.txt
INFO:bench.utils:./env/bin/pip install -q -r ./apps/frappe/requirements.txt
Backing up sites...
Patching sites...
Migrating erpnext-dev
Executing frappe.patches.v8_0.update_records_in_global_search in erpnext-dev (0acfbbe28584367f)
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, 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/erpnext/erpnext-dev/apps/frappe/frappe/utils/bench_helper.py", line 79, in <module>
    main()
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/utils/bench_helper.py", line 16, in main
    click.Group(commands=commands)(prog_name='bench')
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 716, in __call__
    return self.main(*args, **kwargs)
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 696, in main
    rv = self.invoke(ctx)
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 1060, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 889, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/core.py", line 534, in invoke
    return callback(*args, **kwargs)
  File "/home/erpnext/erpnext-dev/env/local/lib/python2.7/site-packages/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/commands/__init__.py", line 24, in _func
    ret = f(frappe._dict(ctx.obj), *args, **kwargs)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/commands/site.py", line 210, in migrate
    migrate(context.verbose, rebuild_website=rebuild_website)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/migrate.py", line 31, in migrate
    frappe.modules.patch_handler.run_all()
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/modules/patch_handler.py", line 29, in run_all
    if not run_single(patchmodule = patch):
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/modules/patch_handler.py", line 63, in run_single
    return execute_patch(patchmodule, method, methodargs)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/modules/patch_handler.py", line 83, in execute_patch
    frappe.get_attr(patchmodule.split()[0] + ".execute")()
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/patches/v8_0/update_records_in_global_search.py", line 5, in execute
    rebuild_for_doctype(doctype)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/utils/global_search.py", line 128, in rebuild_for_doctype
    update_global_search(frappe.get_doc(doctype, d.name))
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/utils/global_search.py", line 53, in update_global_search
    d = frappe.get_doc(doc.parenttype, doc.parent)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/__init__.py", line 606, in get_doc
    return frappe.model.document.get_doc(arg1, arg2)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/model/document.py", line 51, in get_doc
    return controller(arg1, arg2)
  File "/home/erpnext/erpnext-dev/apps/erpnext/erpnext/accounts/doctype/sales_invoice/sales_invoice.py", line 27, in __init__
    super(SalesInvoice, self).__init__(arg1, arg2)
  File "/home/erpnext/erpnext-dev/apps/erpnext/erpnext/controllers/accounts_controller.py", line 20, in __init__
    super(AccountsController, self).__init__(arg1, arg2)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/model/document.py", line 84, in __init__
    self.load_from_db()
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/model/document.py", line 115, in load_from_db
    frappe.throw(_("{0} {1} not found").format(_(self.doctype), self.name), frappe.DoesNotExistError)
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/__init__.py", line 316, in throw
    msgprint(msg, raise_exception=exc, title=title, indicator='red')
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/__init__.py", line 306, in msgprint
    _raise_exception()
  File "/home/erpnext/erpnext-dev/apps/frappe/frappe/__init__.py", line 279, in _raise_exception
    raise raise_exception, encode(msg)
frappe.exceptions.DoesNotExistError: Sales Invoice SINV-00004 not found

We’ll be pushing a fix for the patch by EOD, for now you can comment out update_records_in_global_search from patches.txt and proceed.

1 Like

@James_Robertson In the latest version of frappe, I have refactored the patch update_records_in_global_search. So, now you should be able to update with that patch, it should not take much time.

Thanks @nabinhait. I was able to successfully patch both my dev and prod instances to ERPNext: v8.0.16 (master) and Frappe Framework: v8.0.23 (master) this morning.