mirror of
https://github.com/frappe/erpnext.git
synced 2026-09-20 03:47:11 +00:00
Merge pull request #56426 from frappe/mergify/bp/version-15/pr-56418
refactor: configurable timeout on process pcv (backport #56417) (backport #56418)
This commit is contained in:
@@ -79,6 +79,7 @@
|
|||||||
"acc_frozen_upto",
|
"acc_frozen_upto",
|
||||||
"ignore_account_closing_balance",
|
"ignore_account_closing_balance",
|
||||||
"use_legacy_controller_for_pcv",
|
"use_legacy_controller_for_pcv",
|
||||||
|
"pcv_job_timeout",
|
||||||
"column_break_25",
|
"column_break_25",
|
||||||
"frozen_accounts_modifier",
|
"frozen_accounts_modifier",
|
||||||
"tab_break_dpet",
|
"tab_break_dpet",
|
||||||
@@ -651,6 +652,14 @@
|
|||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Show Party Balance"
|
"label": "Show Party Balance"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"default": "3600",
|
||||||
|
"depends_on": "eval: !doc.use_legacy_controller_for_pcv",
|
||||||
|
"description": "Timeout (in seconds) for each background job enqueued by Process Period Closing Voucher",
|
||||||
|
"fieldname": "pcv_job_timeout",
|
||||||
|
"fieldtype": "Int",
|
||||||
|
"label": "PCV Job Timeout (seconds)"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"default": "30, 60, 90, 120",
|
"default": "30, 60, 90, 120",
|
||||||
"fieldname": "default_ageing_range",
|
"fieldname": "default_ageing_range",
|
||||||
@@ -663,7 +672,7 @@
|
|||||||
"index_web_pages_for_search": 1,
|
"index_web_pages_for_search": 1,
|
||||||
"issingle": 1,
|
"issingle": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2026-05-18 12:16:33.679345",
|
"modified": "2026-06-24 12:59:41.868865",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Accounts",
|
"module": "Accounts",
|
||||||
"name": "Accounts Settings",
|
"name": "Accounts Settings",
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ class AccountsSettings(Document):
|
|||||||
merge_similar_account_heads: DF.Check
|
merge_similar_account_heads: DF.Check
|
||||||
over_billing_allowance: DF.Currency
|
over_billing_allowance: DF.Currency
|
||||||
post_change_gl_entries: DF.Check
|
post_change_gl_entries: DF.Check
|
||||||
|
pcv_job_timeout: DF.Int
|
||||||
receivable_payable_fetch_method: DF.Literal["Buffered Cursor", "UnBuffered Cursor"]
|
receivable_payable_fetch_method: DF.Literal["Buffered Cursor", "UnBuffered Cursor"]
|
||||||
receivable_payable_remarks_length: DF.Int
|
receivable_payable_remarks_length: DF.Int
|
||||||
reconciliation_queue_size: DF.Int
|
reconciliation_queue_size: DF.Int
|
||||||
|
|||||||
@@ -92,6 +92,8 @@ def start_pcv_processing(docname: str):
|
|||||||
frappe.has_permission("Process Payment Reconciliation", "write", doc=docname, throw=True)
|
frappe.has_permission("Process Payment Reconciliation", "write", doc=docname, throw=True)
|
||||||
frappe.db.set_value("Process Period Closing Voucher", docname, "status", "Running")
|
frappe.db.set_value("Process Period Closing Voucher", docname, "status", "Running")
|
||||||
|
|
||||||
|
timeout = frappe.db.get_single_value("Accounts Settings", "pcv_job_timeout") or 3600
|
||||||
|
|
||||||
ppcvd = qb.DocType("Process Period Closing Voucher Detail")
|
ppcvd = qb.DocType("Process Period Closing Voucher Detail")
|
||||||
if normal_balances := (
|
if normal_balances := (
|
||||||
qb.from_(ppcvd)
|
qb.from_(ppcvd)
|
||||||
@@ -118,7 +120,7 @@ def start_pcv_processing(docname: str):
|
|||||||
frappe.enqueue(
|
frappe.enqueue(
|
||||||
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.process_individual_date",
|
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.process_individual_date",
|
||||||
queue="long",
|
queue="long",
|
||||||
timeout="3600",
|
timeout=timeout,
|
||||||
is_async=True,
|
is_async=True,
|
||||||
enqueue_after_commit=True,
|
enqueue_after_commit=True,
|
||||||
docname=docname,
|
docname=docname,
|
||||||
@@ -244,6 +246,8 @@ def get_gle_for_closing_account(pcv, dimension_balance, dimensions):
|
|||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def schedule_next_date(docname: str):
|
def schedule_next_date(docname: str):
|
||||||
|
timeout = frappe.db.get_single_value("Accounts Settings", "pcv_job_timeout") or 3600
|
||||||
|
|
||||||
ppcvd = qb.DocType("Process Period Closing Voucher Detail")
|
ppcvd = qb.DocType("Process Period Closing Voucher Detail")
|
||||||
if to_process := (
|
if to_process := (
|
||||||
qb.from_(ppcvd)
|
qb.from_(ppcvd)
|
||||||
@@ -269,7 +273,7 @@ def schedule_next_date(docname: str):
|
|||||||
frappe.enqueue(
|
frappe.enqueue(
|
||||||
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.process_individual_date",
|
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.process_individual_date",
|
||||||
queue="long",
|
queue="long",
|
||||||
timeout="3600",
|
timeout=timeout,
|
||||||
is_async=True,
|
is_async=True,
|
||||||
enqueue_after_commit=True,
|
enqueue_after_commit=True,
|
||||||
docname=docname,
|
docname=docname,
|
||||||
@@ -299,7 +303,7 @@ def schedule_next_date(docname: str):
|
|||||||
frappe.enqueue(
|
frappe.enqueue(
|
||||||
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.summarize_and_post_ledger_entries",
|
method="erpnext.accounts.doctype.process_period_closing_voucher.process_period_closing_voucher.summarize_and_post_ledger_entries",
|
||||||
queue="long",
|
queue="long",
|
||||||
timeout="3600",
|
timeout=timeout,
|
||||||
is_async=True,
|
is_async=True,
|
||||||
job_name=job_name,
|
job_name=job_name,
|
||||||
enqueue_after_commit=True,
|
enqueue_after_commit=True,
|
||||||
|
|||||||
@@ -437,3 +437,4 @@ erpnext.patches.v16_0.clear_procedures_from_receivable_report
|
|||||||
erpnext.patches.v16_0.migrate_address_contact_custom_fields
|
erpnext.patches.v16_0.migrate_address_contact_custom_fields
|
||||||
erpnext.patches.v15_0.set_main_item_code_in_material_request_plan_item
|
erpnext.patches.v15_0.set_main_item_code_in_material_request_plan_item
|
||||||
erpnext.patches.v16_0.set_posting_datetime_for_sabb_and_drop_indexes
|
erpnext.patches.v16_0.set_posting_datetime_for_sabb_and_drop_indexes
|
||||||
|
execute:frappe.db.set_single_value("Accounts Settings", "pcv_job_timeout", 3600)
|
||||||
|
|||||||
Reference in New Issue
Block a user