17 lines
732 B
Plaintext
17 lines
732 B
Plaintext
DEFINE TABLE IF NOT EXISTS website SCHEMALESS;
|
|
|
|
DEFINE FIELD IF NOT EXISTS site ON TABLE website TYPE string;
|
|
DEFINE INDEX IF NOT EXISTS idx ON TABLE website COLUMNS site UNIQUE;
|
|
|
|
DEFINE FIELD IF NOT EXISTS crawled ON TABLE website TYPE bool;
|
|
DEFINE FIELD IF NOT EXISTS processing ON TABLE website TYPE bool DEFAULT false;
|
|
|
|
DEFINE FIELD IF NOT EXISTS accessed_at ON TABLE website VALUE time::now();
|
|
DEFINE FIELD IF NOT EXISTS first_accessed_at ON TABLE website VALUE time::now();
|
|
|
|
DEFINE FUNCTION OVERWRITE fn::get_next($filter: string) {
|
|
LET $site = SELECT * FROM ONLY website WHERE crawled = false AND processing = false AND site ~ type::string($filter) LIMIT 1;
|
|
UPDATE $site.id SET processing = true;
|
|
RETURN $site
|
|
};
|