awa
This commit is contained in:
@@ -1,28 +1,25 @@
|
||||
-- Search engine domain crawl status tracking
|
||||
CREATE TABLE IF NOT EXISTS domain_crawl_status (
|
||||
domain_id INTEGER PRIMARY KEY REFERENCES domains(id) ON DELETE CASCADE,
|
||||
last_crawled_at TIMESTAMPTZ,
|
||||
next_crawl_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP,
|
||||
domain_id INT PRIMARY KEY, FOREIGN KEY (domain_id) REFERENCES domains(id) ON DELETE CASCADE,
|
||||
last_crawled_at TIMESTAMP,
|
||||
next_crawl_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
crawl_status VARCHAR(20) DEFAULT 'pending' CHECK (crawl_status IN ('pending', 'crawling', 'completed', 'failed', 'disabled')),
|
||||
error_message TEXT,
|
||||
pages_found INTEGER DEFAULT 0,
|
||||
updated_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_domain_crawl_status_next_crawl ON domain_crawl_status(next_crawl_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_domain_crawl_status_status ON domain_crawl_status(crawl_status);
|
||||
|
||||
-- Function to update the updated_at column
|
||||
CREATE OR REPLACE FUNCTION update_updated_at_column()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW.updated_at = CURRENT_TIMESTAMP;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
-- Trigger for updated_at
|
||||
DROP TRIGGER IF EXISTS update_domain_crawl_status_updated_at ON domain_crawl_status;
|
||||
-- MySQL trigger to update updated_at column
|
||||
DELIMITER //
|
||||
CREATE TRIGGER update_domain_crawl_status_updated_at
|
||||
BEFORE UPDATE ON domain_crawl_status
|
||||
FOR EACH ROW EXECUTE FUNCTION update_updated_at_column();
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
SET NEW.updated_at = CURRENT_TIMESTAMP;
|
||||
END;
|
||||
//
|
||||
DELIMITER ;
|
||||
Reference in New Issue
Block a user