build: update package v0.324
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
BIN
updates/0.30/ver_0.324.zip
Normal file
BIN
updates/0.30/ver_0.324.zip
Normal file
Binary file not shown.
7
updates/0.30/ver_0.324_files.txt
Normal file
7
updates/0.30/ver_0.324_files.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
F: ../autoload/.DS_Store
|
||||
F: ../autoload/front/.DS_Store
|
||||
F: ../logs/2024-01-05-order-set-as-paid.txt
|
||||
F: ../logs/2024-08-20-order-set-as-paid.txt
|
||||
F: ../logs/apilo.txt
|
||||
F: ../logs/logs-db-2024-08-31.log
|
||||
F: ../templates/.DS_Store
|
||||
79
updates/0.30/ver_0.324_manifest.json
Normal file
79
updates/0.30/ver_0.324_manifest.json
Normal file
@@ -0,0 +1,79 @@
|
||||
{
|
||||
"changelog": "NEW - system kolejki zadań cron (DB), priorytetowe przetwarzanie, retry/backoff, ochrona endpointu cron",
|
||||
"version": "0.324",
|
||||
"files": {
|
||||
"added": [
|
||||
"autoload/Domain/CronJob/CronJobProcessor.php",
|
||||
"autoload/Domain/CronJob/CronJobRepository.php",
|
||||
"autoload/Domain/CronJob/CronJobType.php"
|
||||
],
|
||||
"deleted": [
|
||||
"autoload/.DS_Store",
|
||||
"autoload/front/.DS_Store",
|
||||
"logs/2024-01-05-order-set-as-paid.txt",
|
||||
"logs/2024-08-20-order-set-as-paid.txt",
|
||||
"logs/apilo.txt",
|
||||
"logs/logs-db-2024-08-31.log",
|
||||
"templates/.DS_Store"
|
||||
],
|
||||
"modified": [
|
||||
"autoload/Domain/Order/OrderAdminService.php",
|
||||
"autoload/admin/App.php",
|
||||
"autoload/api/ApiRouter.php",
|
||||
"autoload/front/App.php",
|
||||
"cron.php"
|
||||
]
|
||||
},
|
||||
"checksum_zip": "sha256:63237e6bdb2ed2c2632cebb45431b26ecd5717b129aa2180540ebce0c3bff77f",
|
||||
"sql": [
|
||||
"-- System kolejki zadań cron",
|
||||
"-- Wersja: 0.324",
|
||||
"CREATE TABLE IF NOT EXISTS pp_cron_jobs (",
|
||||
" id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,",
|
||||
" job_type VARCHAR(50) NOT NULL,",
|
||||
" status ENUM(\u0027pending\u0027,\u0027processing\u0027,\u0027completed\u0027,\u0027failed\u0027,\u0027cancelled\u0027) NOT NULL DEFAULT \u0027pending\u0027,",
|
||||
" priority TINYINT UNSIGNED NOT NULL DEFAULT 100,",
|
||||
" payload TEXT NULL,",
|
||||
" result TEXT NULL,",
|
||||
" attempts SMALLINT UNSIGNED NOT NULL DEFAULT 0,",
|
||||
" max_attempts SMALLINT UNSIGNED NOT NULL DEFAULT 10,",
|
||||
" last_error VARCHAR(500) NULL,",
|
||||
" scheduled_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,",
|
||||
" started_at DATETIME NULL,",
|
||||
" completed_at DATETIME NULL,",
|
||||
" created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,",
|
||||
" updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,",
|
||||
" INDEX idx_status_priority_scheduled (status, priority, scheduled_at),",
|
||||
" INDEX idx_job_type (job_type),",
|
||||
" INDEX idx_status (status)",
|
||||
") ENGINE=InnoDB DEFAULT CHARSET=utf8;",
|
||||
"CREATE TABLE IF NOT EXISTS pp_cron_schedules (",
|
||||
" id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,",
|
||||
" job_type VARCHAR(50) NOT NULL UNIQUE,",
|
||||
" interval_seconds INT UNSIGNED NOT NULL,",
|
||||
" priority TINYINT UNSIGNED NOT NULL DEFAULT 100,",
|
||||
" max_attempts SMALLINT UNSIGNED NOT NULL DEFAULT 3,",
|
||||
" payload TEXT NULL,",
|
||||
" enabled TINYINT(1) NOT NULL DEFAULT 1,",
|
||||
" last_run_at DATETIME NULL,",
|
||||
" next_run_at DATETIME NULL,",
|
||||
" created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,",
|
||||
" INDEX idx_enabled_next_run (enabled, next_run_at)",
|
||||
") ENGINE=InnoDB DEFAULT CHARSET=utf8;",
|
||||
"-- Harmonogramy zadań",
|
||||
"INSERT INTO pp_cron_schedules (job_type, interval_seconds, priority, max_attempts) VALUES",
|
||||
"(\u0027apilo_token_keepalive\u0027, 240, 10, 3),",
|
||||
"(\u0027apilo_send_order\u0027, 60, 40, 10),",
|
||||
"(\u0027apilo_product_sync\u0027, 600, 100, 3),",
|
||||
"(\u0027apilo_pricelist_sync\u0027, 3600, 100, 3),",
|
||||
"(\u0027apilo_status_poll\u0027, 600, 100, 3),",
|
||||
"(\u0027price_history\u0027, 86400, 100, 3),",
|
||||
"(\u0027order_analysis\u0027, 600, 100, 3),",
|
||||
"(\u0027trustmate_invitation\u0027, 600, 200, 3),",
|
||||
"(\u0027google_xml_feed\u0027, 3600, 200, 3);"
|
||||
],
|
||||
"date": "2026-02-27",
|
||||
"directories_deleted": [
|
||||
|
||||
]
|
||||
}
|
||||
45
updates/0.30/ver_0.324_sql.txt
Normal file
45
updates/0.30/ver_0.324_sql.txt
Normal file
@@ -0,0 +1,45 @@
|
||||
-- System kolejki zadań cron
|
||||
-- Wersja: 0.324
|
||||
CREATE TABLE IF NOT EXISTS pp_cron_jobs (
|
||||
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
|
||||
job_type VARCHAR(50) NOT NULL,
|
||||
status ENUM('pending','processing','completed','failed','cancelled') NOT NULL DEFAULT 'pending',
|
||||
priority TINYINT UNSIGNED NOT NULL DEFAULT 100,
|
||||
payload TEXT NULL,
|
||||
result TEXT NULL,
|
||||
attempts SMALLINT UNSIGNED NOT NULL DEFAULT 0,
|
||||
max_attempts SMALLINT UNSIGNED NOT NULL DEFAULT 10,
|
||||
last_error VARCHAR(500) NULL,
|
||||
scheduled_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
started_at DATETIME NULL,
|
||||
completed_at DATETIME NULL,
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_status_priority_scheduled (status, priority, scheduled_at),
|
||||
INDEX idx_job_type (job_type),
|
||||
INDEX idx_status (status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
CREATE TABLE IF NOT EXISTS pp_cron_schedules (
|
||||
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
|
||||
job_type VARCHAR(50) NOT NULL UNIQUE,
|
||||
interval_seconds INT UNSIGNED NOT NULL,
|
||||
priority TINYINT UNSIGNED NOT NULL DEFAULT 100,
|
||||
max_attempts SMALLINT UNSIGNED NOT NULL DEFAULT 3,
|
||||
payload TEXT NULL,
|
||||
enabled TINYINT(1) NOT NULL DEFAULT 1,
|
||||
last_run_at DATETIME NULL,
|
||||
next_run_at DATETIME NULL,
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_enabled_next_run (enabled, next_run_at)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
-- Harmonogramy zadań
|
||||
INSERT INTO pp_cron_schedules (job_type, interval_seconds, priority, max_attempts) VALUES
|
||||
('apilo_token_keepalive', 240, 10, 3),
|
||||
('apilo_send_order', 60, 40, 10),
|
||||
('apilo_product_sync', 600, 100, 3),
|
||||
('apilo_pricelist_sync', 3600, 100, 3),
|
||||
('apilo_status_poll', 600, 100, 3),
|
||||
('price_history', 86400, 100, 3),
|
||||
('order_analysis', 600, 100, 3),
|
||||
('trustmate_invitation', 600, 200, 3),
|
||||
('google_xml_feed', 3600, 200, 3);
|
||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
||||
<?
|
||||
$current_ver = 323;
|
||||
$current_ver = 324;
|
||||
|
||||
for ($i = 1; $i <= $current_ver; $i++)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user