Time unification
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates and updates aggregated metrics per brand.
|
||||
-- Dependencies: product_metrics, products, calculate_status table.
|
||||
-- Frequency: Daily (after product_metrics update).
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates and updates aggregated metrics per category with hierarchy rollups.
|
||||
-- Dependencies: product_metrics, products, categories, product_categories, category_hierarchy, calculate_status table.
|
||||
-- Frequency: Daily (after product_metrics update).
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates and updates aggregated metrics per vendor.
|
||||
-- Dependencies: product_metrics, products, purchase_orders, calculate_status table.
|
||||
-- Frequency: Daily (after product_metrics update).
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates and updates daily aggregated product data.
|
||||
-- Self-healing: detects gaps (missing snapshots), stale data (snapshot
|
||||
-- aggregates that don't match source tables after backfills), and always
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Populates lifecycle forecast columns on product_metrics from product_forecasts.
|
||||
-- Runs AFTER update_product_metrics.sql so that lead time / days of stock settings are available.
|
||||
-- Dependencies: product_metrics (fully populated), product_forecasts, settings tables.
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates metrics that don't need hourly updates, like ABC class
|
||||
-- and average lead time.
|
||||
-- Dependencies: product_metrics, purchase_orders, settings_global, calculate_status.
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
-- SESSION-TZ ASSUMPTION: this script runs with TimeZone=America/Chicago
|
||||
-- (pinned in the pool config and as the inventory_db database default).
|
||||
-- CURRENT_DATE / NOW()::date / ts::date here mean the BUSINESS date
|
||||
-- (Chicago calendar day = 1am-Eastern day rule). See docs/TIME.md.
|
||||
-- Description: Calculates and updates the main product_metrics table based on current data
|
||||
-- and aggregated daily snapshots. Uses UPSERT for idempotency.
|
||||
-- Dependencies: Core import tables, daily_product_snapshots, configuration tables, calculate_status.
|
||||
|
||||
@@ -10,6 +10,9 @@ const dbConfig = {
|
||||
database: process.env.DB_NAME,
|
||||
port: process.env.DB_PORT || 5432,
|
||||
ssl: process.env.DB_SSL === 'true',
|
||||
// Pin the session timezone to business time (see docs/TIME.md) — the
|
||||
// metrics SQL window anchors (CURRENT_DATE etc.) must mean Chicago dates.
|
||||
options: '-c TimeZone=America/Chicago',
|
||||
// Add performance optimizations
|
||||
max: 10, // connection pool max size
|
||||
idleTimeoutMillis: 30000,
|
||||
|
||||
Reference in New Issue
Block a user