view src/lib/Db.luan @ 56:5bbb89d75199

minor
author Franklin Schmidt <fschmidt@gmail.com>
date Sun, 17 Aug 2025 18:36:32 +0900
parents 87fe70201aa8
children
line wrap: on
line source

local Luan = require "luan:Luan.luan"
local error = Luan.error
local Io = require "luan:Io.luan"
local uri = Io.uri or error()
local Thread = require "luan:Thread.luan"
local Time = require "luan:Time.luan"
local Lucene = require "luan:lucene/Lucene.luan"
local Http = require "luan:http/Http.luan"


local dir = uri("site:/private/local/lucene")

local Db = Lucene.index( dir, {
	log_dir = uri("site:/private/local/lucene_log")
	name = "lucene"
	version = 1
} )

Db.indexed_fields.user_email = Lucene.type.lowercase

Db.indexed_fields.chat_user_id = Lucene.type.long
Db.indexed_fields.chat_updated = Lucene.type.long

Db.indexed_fields.course_user_id = Lucene.type.long
Db.indexed_fields.course_language = Lucene.type.string
Db.indexed_fields.course_updated = Lucene.type.long

Db.restore_from_log()

if Http.is_serving then
	Thread.schedule( Db.check, { delay=0, repeating_delay=Time.period{hours=1} } )
end

return Db