summary refs log tree commit diff
path: root/database.h (follow)
Commit message (Collapse)AuthorAge
* Replace time index with (context, time) index 1.4p1June McEnroe2020-07-11
| | | | This is what it should have been...
* Delay creating eventsTime index when migration from v2 1.4June McEnroe2020-07-08
|
* Convert timestamps to unix epoch timeJune McEnroe2020-07-08
| | | | This saves 125 MB on my own database after VACUUM.
* Create index on events.timeJune McEnroe2020-07-07
| | | | This vastly improves the speed of scoop -a, -b and -D.
* Add additional permission for linking with LibreSSLJune McEnroe2020-06-08
| | | | https://www.gnu.org/licenses/gpl-faq.en.html#GPLIncompatibleLibs
* Perform all migrations in one transaction 1.3June McEnroe2020-05-22
|
* Fix dbPrepare errx callJune McEnroe2020-05-21
|
* Automatically perform database migrations in litterboxJune McEnroe2020-05-21
| | | | | To simplify upgrades, restarting litterbox should be sufficient. The database can still be explicitly migrated with -m.
* Add Ban and Unban event typesJune McEnroe2020-04-05
|
* Implement the causal.agency/consumer capabilityJune McEnroe2020-02-28
|
* Add -b flag for live backupJune McEnroe2020-01-14
|
* Add columnsize = 0 option to FTS indexJune McEnroe2020-01-14
| | | | | | | | | | | | Since we don't use ranking functions and I don't see them being useful, there is no point in having columnsize, which just takes extra space in the database. In my database of approximately 3.5 million events, disabling columnsize saves about 62 MB. The migration unfortunately has to rebuild the entire index to disable it.
* Bump busy timeout to 10sJune McEnroe2020-01-11
| | | | I'm running this on a RPi3 which is not the fastest computer.
* Enable SQLite WALJune McEnroe2020-01-04
|
* Factor out hashing functionJune McEnroe2020-01-01
|
* Join with USING wherever possibleJune McEnroe2019-12-30
|
* Use X macro for Type enumJune McEnroe2019-12-30
|
* Run PRAGMA optimize in dbCloseJune McEnroe2019-12-28
|
* Treat topics like motdsJune McEnroe2019-12-25
| | | | | It's more like a cache of existing topics. events is still meant to record actual topic events.
* Insert MOTDs into the databaseJune McEnroe2019-12-25
|
* Insert existing topics into the databaseJune McEnroe2019-12-25
| | | | | | | Not sure how to handle the 333 reply that contains the user who set the topic and the timestamp of when it was set, since they're two separate messages that aren't really easily correlated since there's no guarantee that you're even going to get a 333 at all.
* It's The Big RefactorJune McEnroe2019-12-24
|
* Take optional explicit path in dbFindJune McEnroe2019-12-23
|
* Factour out verbose, dbStep+resetJune McEnroe2019-12-23
|
* Rewrite litterbox statements with functionsJune McEnroe2019-12-18
|
* Use sqlite3_bind_intJune McEnroe2019-12-18
|
* Separate dbBindText wrappers to allow for transientJune McEnroe2019-12-17
|
* Use parameter names for all bindsJune McEnroe2019-12-17
|
* Move ARRAY_LEN to database.hJune McEnroe2019-12-16
|
* Style cleanupJune McEnroe2019-12-13
|
* Index network, context, nick, user, target, message in FTSJune McEnroe2019-12-13
| | | | | | This way the FTS query syntax for column filtering can be used like "network:freenode" without having to separately build a WHERE clause. The names.host column is not included since it's mostly just noise.
* Use a macro to write SQL as C tokens without quotesJune McEnroe2019-12-13
| | | | | | | | | | This switches to using :params rather than $params only because $ is allowed in identifiers as an extension, whereas : is always a separate preprocessor token. This has the advantage that # collapses excessive whitespace but otherwise preserves formatting, so the resulting SQL query strings look pretty normal.
* Fold networks into contextsJune McEnroe2019-12-06
|
* Rename IDs to nouns and join with USINGJune McEnroe2019-12-06
|
* Add eventsDelete triggerJune McEnroe2019-12-06
|
* Import in one transaction per fileJune McEnroe2019-12-05
|
* Add prepare and bind helpersJune McEnroe2019-12-05
|
* Set busy timeoutJune McEnroe2019-12-05
|
* Make user and host NOT NULL as wellJune McEnroe2019-12-02
| | | | | Since involving NULLs in comparisons is awkward, I think I'll just use "*" for unknowns.
* Enable foreign key enforcementJune McEnroe2019-12-02
|
* Implement DB initialization and migrationJune McEnroe2019-12-02
|
* Rename header file to database.hJune McEnroe2019-12-01