After following Karani’s instructions when upgrading to v15, I get a "Invalid default value for ‘repeat_till’ error.
Any ideas how to fix this?
Updating DocTypes for frappe : [============================= ] 72%Failed to alter schema using query: ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’
There was an issue while migrating the DocType: Event
Queued rebuilding of search index for sub.dom.com
Traceback with variables (most recent call last):
File “/usr/lib/python3.10/runpy.py”, line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
mod_name = ‘frappe.utils.bench_helper’
alter_argv = True
mod_spec = ModuleSpec(name=‘frappe.utils.bench_helper’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, origin=‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’)
code = <code object at 0x7f752b67fec0, file “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 1>
main_globals = {‘name’: ‘main’, ‘doc’: None, ‘package’: ‘frappe.utils’, ‘loader’: <_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, ‘spec’: ModuleSpec(name=‘frappe.utils.bench_helper’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, origin=‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’), ‘annotations’: {}, ‘builtins’: <module ‘builtins’ (built-in)>, ‘file’: ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’, ‘cached’: ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/pycache/bench_helper.cpython-310.pyc’, ‘importlib’: <module ‘importlib’ from ‘/usr/lib/python3.10/importlib/init.py’>, ‘json’: <module ‘json’ from ‘/usr/lib/python3.10/json/init.py’>, ‘os’: <module ‘os’ from ‘/usr/lib/python3.10/os.py’>, ‘traceback’: <module ‘traceback’ from ‘/usr/lib/python3.10/traceback.py’>, ‘warnings’: <module ‘warnings’ from ‘/usr/lib/python3.10/warnings.py’>, ‘Path’: <cl…
File “/usr/lib/python3.10/runpy.py”, line 86, in _run_code
exec(code, run_globals)
code = <code object at 0x7f752b67fec0, file “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 1>
run_globals = {‘name’: ‘main’, ‘doc’: None, ‘package’: ‘frappe.utils’, ‘loader’: <_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, ‘spec’: ModuleSpec(name=‘frappe.utils.bench_helper’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, origin=‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’), ‘annotations’: {}, ‘builtins’: <module ‘builtins’ (built-in)>, ‘file’: ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’, ‘cached’: ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/pycache/bench_helper.cpython-310.pyc’, ‘importlib’: <module ‘importlib’ from ‘/usr/lib/python3.10/importlib/init.py’>, ‘json’: <module ‘json’ from ‘/usr/lib/python3.10/json/init.py’>, ‘os’: <module ‘os’ from ‘/usr/lib/python3.10/os.py’>, ‘traceback’: <module ‘traceback’ from ‘/usr/lib/python3.10/traceback.py’>, ‘warnings’: <module ‘warnings’ from ‘/usr/lib/python3.10/warnings.py’>, ‘Path’: <cl…
init_globals = None
mod_name = ‘main’
mod_spec = ModuleSpec(name=‘frappe.utils.bench_helper’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>, origin=‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’)
pkg_name = ‘frappe.utils’
script_name = None
loader = <_frozen_importlib_external.SourceFileLoader object at 0x7f752cccfa00>
fname = ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py’
cached = ‘/home/frappe/frappe-bench/apps/frappe/frappe/utils/pycache/bench_helper.cpython-310.pyc’
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 114, in
main()
…skipped… 27 vars
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 20, in main
click.Group(commands=commands)(prog_name=“bench”)
commands = {‘frappe’: , ‘get-frappe-commands’: , ‘get-frappe-help’: }
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 1157, in call
return self.main(*args, **kwargs)
self =
args = ()
kwargs = {‘prog_name’: ‘bench’}
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 1078, in main
rv = self.invoke(ctx)
self =
args = [‘frappe’, ‘–site’, ‘sub.dom.com’, ‘migrate’]
prog_name = ‘bench’
complete_var = None
standalone_mode = True
windows_expand_args = True
extra = {}
ctx = <click.core.Context object at 0x7f752b684eb0>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
_process_result = <function MultiCommand.invoke.._process_result at 0x7f752b69cca0>
args = [‘migrate’]
cmd_name = ‘frappe’
cmd =
sub_ctx = <click.core.Context object at 0x7f752b278be0>
ctx = <click.core.Context object at 0x7f752b684eb0>
self =
class = <class ‘click.core.MultiCommand’>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
_process_result = <function MultiCommand.invoke.._process_result at 0x7f752b271fc0>
args = []
cmd_name = ‘migrate’
cmd =
sub_ctx = <click.core.Context object at 0x7f752b279300>
ctx = <click.core.Context object at 0x7f752b278be0>
self =
class = <class ‘click.core.MultiCommand’>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
self =
ctx = <click.core.Context object at 0x7f752b279300>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/core.py”, line 783, in invoke
return __callback(*args, **kwargs)
_Context__self = <click.core.Context object at 0x7f752b279300>
_Context__callback = <function migrate at 0x7f752b2128c0>
args = ()
kwargs = {‘skip_failing’: False, ‘skip_search_index’: False}
ctx = <click.core.Context object at 0x7f752b279300>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/click/decorators.py”, line 33, in new_func
return f(get_current_context(), *args, **kwargs)
args = ()
kwargs = {‘skip_failing’: False, ‘skip_search_index’: False}
f = <function migrate at 0x7f752b212680>
File “/home/frappe/frappe-bench/apps/frappe/frappe/commands/init.py”, line 29, in _func
ret = f(frappe._dict(ctx.obj), *args, **kwargs)
ctx = <click.core.Context object at 0x7f752b279300>
args = ()
kwargs = {‘skip_failing’: False, ‘skip_search_index’: False}
profile = False
f = <function migrate at 0x7f752b2125f0>
File “/home/frappe/frappe-bench/apps/frappe/frappe/commands/site.py”, line 726, in migrate
SiteMigration(
context = {‘sites’: [‘sub.dom.com’], ‘force’: False, ‘verbose’: False, ‘profile’: False}
skip_failing = False
skip_search_index = False
activate_by_import = <module ‘traceback_with_variables.activate_by_import’ from ‘/home/frappe/frappe-bench/env/lib/python3.10/site-packages/traceback_with_variables/activate_by_import.py’>
SiteMigration = <class ‘frappe.migrate.SiteMigration’>
site = ‘sub.dom.com’
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 185, in run
self.run_schema_updates()
self = <frappe.migrate.SiteMigration object at 0x7f752b279420>
site = ‘sub.dom.com’
filelock = <function filelock at 0x7f7528ded7e0>
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 52, in wrapper
raise e
args = (<frappe.migrate.SiteMigration object at 0x7f752b279420>,)
kwargs = {}
method = <function SiteMigration.run_schema_updates at 0x7f7528ded3f0>
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 44, in wrapper
ret = method(*args, **kwargs)
args = (<frappe.migrate.SiteMigration object at 0x7f752b279420>,)
kwargs = {}
method = <function SiteMigration.run_schema_updates at 0x7f7528ded3f0>
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 119, in run_schema_updates
frappe.model.sync.sync_all()
self = <frappe.migrate.SiteMigration object at 0x7f752b279420>
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/sync.py”, line 43, in sync_all
sync_for(app, force, reset_permissions=reset_permissions)
force = 0
reset_permissions = False
app = ‘frappe’
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/sync.py”, line 111, in sync_for
import_file_by_path(
app_name = ‘frappe’
force = 0
reset_permissions = False
files = [‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/docfield/docfield.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/docperm/docperm.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype_action/doctype_action.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype_link/doctype_link.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype_state/doctype_state.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/role/role.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/has_role/has_role.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/property_setter/property_setter.json’, ‘/home/frappe/frappe-bench/apps/frappe/frappe/website/doctype/web_form/web_form.json’, '/home/frappe/frappe-bench/a…
FRAPPE_PATH = ‘/home/frappe/frappe-bench/apps/frappe/frappe’
core_module = ‘doctype’
custom_module = ‘property_setter’
website_module = ‘portal_menu_item’
desk_module = ‘workspace’
module_name = ‘automation’
document_type = ‘property_setter’
file = ‘/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/property_setter/property_setter.json’
folder = ‘/home/frappe/frappe-bench/apps/frappe/frappe/automation’
l = 328
i = 238
doc_path = ‘/home/frappe/frappe-bench/apps/frappe/frappe/desk/doctype/event/event.json’
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 148, in import_file_by_path
import_doc(
path = ‘/home/frappe/frappe-bench/apps/frappe/frappe/desk/doctype/event/event.json’
force = 0
data_import = False
pre_process = None
ignore_version = True
reset_permissions = False
docs = [{‘actions’: [], ‘allow_import’: 1, ‘autoname’: ‘EV.#####’, ‘creation’: ‘2013-06-10 13:17:47’, ‘doctype’: ‘DocType’, ‘document_type’: ‘Document’, ‘email_append_to’: 1, ‘engine’: ‘InnoDB’, ‘fields’: [{‘fieldname’: ‘details’, ‘fieldtype’: ‘Section Break’, ‘label’: ‘Details’, ‘oldfieldtype’: ‘Section Break’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘subject’, ‘fieldtype’: ‘Small Text’, ‘in_global_search’: 1, ‘in_list_view’: 1, ‘label’: ‘Subject’, ‘reqd’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_category’, ‘fieldtype’: ‘Select’, ‘label’: ‘Event Category’, ‘options’: ‘Event\nMeeting\nCall\nSent/Received Email\nOther’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_type’, ‘fieldtype’: ‘Select’, ‘in_list_view’: 1, ‘in_standard_filter’: 1, ‘label’: ‘Event Type’, ‘oldfieldname’: ‘event_type’, ‘oldfieldtype’: ‘Select’, ‘options’: ‘Private\nPublic’, ‘reqd’: 1, ‘search_index’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘color’, ‘fieldtype’: ‘Color’, ‘label’: ‘Color’, ‘doctype’: ‘DocField’}, {'defa…
calculated_hash = ‘bf468f9cda8984962681a3dc5a78fdc8’
doc = {‘actions’: [], ‘allow_import’: 1, ‘autoname’: ‘EV.#####’, ‘creation’: ‘2013-06-10 13:17:47’, ‘doctype’: ‘DocType’, ‘document_type’: ‘Document’, ‘email_append_to’: 1, ‘engine’: ‘InnoDB’, ‘fields’: [{‘fieldname’: ‘details’, ‘fieldtype’: ‘Section Break’, ‘label’: ‘Details’, ‘oldfieldtype’: ‘Section Break’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘subject’, ‘fieldtype’: ‘Small Text’, ‘in_global_search’: 1, ‘in_list_view’: 1, ‘label’: ‘Subject’, ‘reqd’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_category’, ‘fieldtype’: ‘Select’, ‘label’: ‘Event Category’, ‘options’: ‘Event\nMeeting\nCall\nSent/Received Email\nOther’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_type’, ‘fieldtype’: ‘Select’, ‘in_list_view’: 1, ‘in_standard_filter’: 1, ‘label’: ‘Event Type’, ‘oldfieldname’: ‘event_type’, ‘oldfieldtype’: ‘Select’, ‘options’: ‘Private\nPublic’, ‘reqd’: 1, ‘search_index’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘color’, ‘fieldtype’: ‘Color’, ‘label’: ‘Color’, ‘doctype’: ‘DocField’}, {'defau…
db_modified_timestamp = datetime.datetime(2022, 8, 12, 19, 24, 34, 794098)
is_db_timestamp_latest = False
stored_hash = ‘5bf9a3df0d158da1fa70e433aaa7f3f9’
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 245, in import_doc
doc.insert()
docdict = {‘actions’: [], ‘allow_import’: 1, ‘autoname’: ‘EV.#####’, ‘creation’: ‘2013-06-10 13:17:47’, ‘doctype’: ‘DocType’, ‘document_type’: ‘Document’, ‘email_append_to’: 1, ‘engine’: ‘InnoDB’, ‘fields’: [{‘fieldname’: ‘details’, ‘fieldtype’: ‘Section Break’, ‘label’: ‘Details’, ‘oldfieldtype’: ‘Section Break’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘subject’, ‘fieldtype’: ‘Small Text’, ‘in_global_search’: 1, ‘in_list_view’: 1, ‘label’: ‘Subject’, ‘reqd’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_category’, ‘fieldtype’: ‘Select’, ‘label’: ‘Event Category’, ‘options’: ‘Event\nMeeting\nCall\nSent/Received Email\nOther’, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘event_type’, ‘fieldtype’: ‘Select’, ‘in_list_view’: 1, ‘in_standard_filter’: 1, ‘label’: ‘Event Type’, ‘oldfieldname’: ‘event_type’, ‘oldfieldtype’: ‘Select’, ‘options’: ‘Private\nPublic’, ‘reqd’: 1, ‘search_index’: 1, ‘doctype’: ‘DocField’}, {‘fieldname’: ‘color’, ‘fieldtype’: ‘Color’, ‘label’: ‘Color’, ‘doctype’: ‘DocField’}, {‘defau…
data_import = False
pre_process = None
ignore_version = True
reset_permissions = False
path = ‘/home/frappe/frappe-bench/apps/frappe/frappe/desk/doctype/event/event.json’
controller = <class ‘frappe.core.doctype.doctype.doctype.DocType’>
doc = <DocType: Event>
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 310, in insert
self.run_post_save_methods()
self = <DocType: Event>
ignore_permissions = None
ignore_links = None
ignore_if_duplicate = False
ignore_mandatory = None
set_name = None
set_child_names = True
d = <DocPerm: e15ed21801 parent=Event>
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 1120, in run_post_save_methods
self.run_method(“on_update”)
self = <DocType: Event>
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 952, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
self = <DocType: Event>
args = ()
kwargs = {}
fn = <function Document.run_method..fn at 0x7f752721b6d0>
method = ‘on_update’
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 1318, in composer
return composed(self, method, args, **kwargs)
self = <DocType: Event>
args = ()
kwargs = {}
hooks = [<function build_domain_restriced_doctype_cache at 0x7f752b116e60>, <function clear_doctype_notifications at 0x7f752a0fb640>, <function process_workflow_actions at 0x7f7527c530a0>, <function attach_files_to_document at 0x7f752a9c16c0>, <function apply at 0x7f7527cb1ab0>, <function update_due_date at 0x7f7527cb1b40>, <function apply_permissions_for_non_standard_user_type at 0x7f7527cb3400>]
method = ‘on_update’
doc_events = {'’: {‘on_update’: [‘frappe.desk.notifications.clear_doctype_notifications’, ‘frappe.workflow.doctype.workflow_action.workflow_action.process_workflow_actions’, ‘frappe.core.doctype.file.utils.attach_files_to_document’, ‘frappe.automation.doctype.assignment_rule.assignment_rule.apply’, ‘frappe.automation.doctype.assignment_rule.assignment_rule.update_due_date’, ‘frappe.core.doctype.user_type.user_type.apply_permissions_for_non_standard_user_type’], ‘after_rename’: [‘frappe.desk.notifications.clear_doctype_notifications’], ‘on_cancel’: [‘frappe.desk.notifications.clear_doctype_notifications’, ‘frappe.workflow.doctype.workflow_action.workflow_action.process_workflow_actions’, ‘frappe.automation.doctype.assignment_rule.assignment_rule.apply’, ‘healthcare.healthcare.doctype.patient_history_settings.patient_history_settings.delete_medical_record’], ‘on_trash’: [‘frappe.desk.notifications.clear_doctype_notifications’, ‘frappe.workflow.doctype.workflow_action.workflow_action.process_workflow…
handler = ‘frappe.core.doctype.user_type.user_type.apply_permissions_for_non_standard_user_type’
composed = <function Document.hook..compose..runner at 0x7f75274ebeb0>
compose = <function Document.hook..compose at 0x7f75274eb7f0>
f = <function Document.run_method..fn at 0x7f752721b6d0>
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 1300, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
self = <DocType: Event>
method = ‘on_update’
args = ()
kwargs = {}
add_to_return_value = <function Document.hook..add_to_return_value at 0x7f752721b5b0>
fn = <function Document.run_method..fn at 0x7f752721b6d0>
hooks = (<function build_domain_restriced_doctype_cache at 0x7f752b116e60>, <function clear_doctype_notifications at 0x7f752a0fb640>, <function process_workflow_actions at 0x7f7527c530a0>, <function attach_files_to_document at 0x7f752a9c16c0>, <function apply at 0x7f7527cb1ab0>, <function update_due_date at 0x7f7527cb1b40>, <function apply_permissions_for_non_standard_user_type at 0x7f7527cb3400>)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 949, in fn
return method_object(*args, **kwargs)
self = <DocType: Event>
args = ()
kwargs = {}
method_object = <bound method DocType.on_update of <DocType: Event>>
method = ‘on_update’
File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 507, in on_update
raise e
self = <DocType: Event>
File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 504, in on_update
frappe.db.updatedb(self.name, Meta(self))
self = <DocType: Event>
File “/home/frappe/frappe-bench/apps/frappe/frappe/database/mariadb/database.py”, line 441, in updatedb
db_table.sync()
self = <frappe.database.mariadb.database.MariaDBDatabase object at 0x7f752b3e9300>
doctype = ‘Event’
meta = <Meta: Event>
res = ((0,),)
db_table = <frappe.database.mariadb.schema.MariaDBTable object at 0x7f752746d120>
File “/home/frappe/frappe-bench/apps/frappe/frappe/database/schema.py”, line 44, in sync
self.alter()
self = <frappe.database.mariadb.schema.MariaDBTable object at 0x7f752746d120>
File “/home/frappe/frappe-bench/apps/frappe/frappe/database/mariadb/schema.py”, line 110, in alter
frappe.db.sql(query)
col = <frappe.database.schema.DbColumn object at 0x7f75277d2c80>
add_column_query = []
columns_to_modify = {<frappe.database.schema.DbColumn object at 0x7f75277d3430>}
modify_column_query = [“MODIFY repeat_till
date default ‘31-01-2024’”]
add_index_query = []
drop_index_query = []
query_parts = [“MODIFY repeat_till
date default ‘31-01-2024’”]
query_body = “MODIFY repeat_till
date default ‘31-01-2024’”
query = “ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’”
self = <frappe.database.mariadb.schema.MariaDBTable object at 0x7f752746d120>
File “/home/frappe/frappe-bench/apps/frappe/frappe/database/database.py”, line 217, in sql
self._cursor.execute(query, values)
self = <frappe.database.mariadb.database.MariaDBDatabase object at 0x7f752b3e9300>
query = “ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’”
values = None
as_dict = 0
as_list = 0
debug = False
ignore_ddl = 0
auto_commit = 0
update = None
explain = False
run = True
pluck = False
trace_id = None
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/cursors.py”, line 153, in execute
result = self._query(query)
self = <pymysql.cursors.Cursor object at 0x7f7527f9d540>
query = “ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’”
args = None
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/cursors.py”, line 322, in _query
conn.query(q)
self = <pymysql.cursors.Cursor object at 0x7f7527f9d540>
q = “ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’”
conn = <pymysql.connections.Connection object at 0x7f7527f9c880>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/connections.py”, line 558, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
self = <pymysql.connections.Connection object at 0x7f7527f9c880>
sql = b"ALTER TABLE tabEvent
MODIFY repeat_till
date default ‘31-01-2024’"
unbuffered = False
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/connections.py”, line 822, in _read_query_result
result.read()
self = <pymysql.connections.Connection object at 0x7f7527f9c880>
unbuffered = False
result = <pymysql.connections.MySQLResult object at 0x7f7527270040>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/connections.py”, line 1200, in read
first_packet = self.connection._read_packet()
self = <pymysql.connections.MySQLResult object at 0x7f7527270040>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/connections.py”, line 772, in _read_packet
packet.raise_for_error()
self = <pymysql.connections.Connection object at 0x7f7527f9c880>
packet_type = <class ‘pymysql.protocol.MysqlPacket’>
buff = bytearray(b"\xff+\x04#42000Invalid default value for 'repeat_till'")
packet_header = b’0\x00\x00\x01’
btrl = 48
btrh = 0
packet_number = 1
bytes_to_read = 48
recv_data = b"\xff+\x04#42000Invalid default value for ‘repeat_till’"
packet = <pymysql.protocol.MysqlPacket object at 0x7f752746d630>
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/protocol.py”, line 221, in raise_for_error
err.raise_mysql_exception(self._data)
self = <pymysql.protocol.MysqlPacket object at 0x7f752746d630>
errno = 1067
File “/home/frappe/frappe-bench/env/lib/python3.10/site-packages/pymysql/err.py”, line 143, in raise_mysql_exception
raise errorclass(errno, errval)
data = b"\xff+\x04#42000Invalid default value for ‘repeat_till’"
errno = 1067
errval = “Invalid default value for ‘repeat_till’”
errorclass = <class ‘pymysql.err.OperationalError’>
pymysql.err.OperationalError: (1067, “Invalid default value for ‘repeat_till’”)
INFO: A newer version of bench is available: 5.19.0 → 5.20.0
frappe@erp:~/frappe-bench$