Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
timestamptz data types have sub-second precision, but we use time() with
second precision for comparing, resulting in false positives. Using
Time::HiRes::time should give the same precision as PostgreSQL's NOW(),
so things should be working fine now.
It's still a bad idea to use Multi's time instead of a PostgreSQL value
for comparing... should really think of a clean way of fixing this.
|
|
Everyone had access to the commands with the |8 flag enabled. Oops!
|
|
Requires the new PoCo-Pg
|
|
|
|
That was the last one. I hope I haven't forgotten to update anything.
|
|
|
|
Everything still seems to be working fine so far.
|
|
|
|
|
|
|
|
'idle' is currently defined as 60+rand(300) minutes, so it'll only
occur in *very* idle channels... might be an idea to lower these numbers
later on.
|
|
|
|
|
|
Works as it did before. But maybe it's time to add a small throttle to
prevent misuse?
|
|
Tiny bug introduced in a recent commit.
|
|
And force this for some commands. Calling !die in a channel with
multiple bots isn't a good idea, after all...
|
|
|
|
Nothing beats seeing a:
<Multi> [t2.7] Reply to Alias: added Japanese title Posted in db,
u:retardsrox, u:nacchi, v:Natsu, Semi, Shoujo, v:Dal-eu Jajang-ga
By applehq @ http://beta.vndb.org/t2.7
|
|
Most of the functionality of the old IRC bot should be present again,
with notifications and the !vn command being the only exceptions. I'll
reimplement those later.
The configuration has changed a little:
- 'user' variable renamed to 'nick'
- 'channel' renamed to 'channels' (it's an arrayref, after all)
- the 'masters' variable now uses IRC masks rather than nicks
This new version also has three user levels rather than two: regular
users, OPs in the first channel, and 'masters'. This way #vndb OPs can
get control over some useful functions as well. The 'master' functions
are far too powerful and as such should only be used by the person
operating the bot.
|
|
Everything now uses Async SQL access, and doesn't rely on
POE::Component::Cron anymore.
I removed a few maintenance functions that weren't needed. Warning for
unkanime is already done by Multi::Anime, and integrity checking should
really be done in PgSQL.
The tag<->vn cache is now also regenerated daily rather than hourly.
|
|
This isn't really necessary when shutting down the entire process, but it
is for the individual session to shut down. This will make it possible to
load/unload/reload Multi modules on demand without restarting the process.
|
|
This finishes the new relation graph generator, as it'll now regenerate
graphs as soon as is needed.
This obsletes the VNDB::Util::Misc::vnCacheUpdate() function, this
functionality is provided by triggers within PostgreSQL.
The update_vncache(0) procedure is now significantly slower due to the
trigger on the vn table. It'd be a good idea to rewrite this procedure
by using triggers and conditional updates, to drastically lower the number
of rows that need to be updated.
|
|
It should be a bit more efficient and non-blocking. Also a lot less
verbose with logging.
|
|
Before this edit, the options part of the DSN was incorrect, resulting
in DBD::Pg ignoring the pg_enable_utf8 flag.
|
|
This finished the rewrite of Multi::Image and everything surrounding it.
|
|
There were only two states, processed and unprocessed, so simply
using a boolean column with correct naming is more clarifying.
|
|
Yay! Another weird shared-memory-command optimized away. And the image
resizer reacts a lot faster now. Noticably, even.
|
|
Decided to remove the Image::MetaData::JPEG dependency as well, as the
Image::Magick::Thumbnail function removes a lot of unecessary
information, profiles and other data as well.
|
|
The notify is called from a trigger function, which is called on any
UPDATE or INSERT INTO query of which the lastfetch column is NULL.
This guarantees that anime info in the DB will always be updated, no
matter how its inserted.
|
|
No shared memory! Asynchronous SQL! yay!
|
|
This should've taken me less than an hour, but unfortunately it took a
bit longer because I found a rather hard-to-fix bug in PoCo::Pg.
Be sure to update to the latest POE::Component::Pg.
Also, this change removes the DateTime dependency. Its functionality
could be replaced with the strftime() found in POSIX (which every Perl
has)
|
|
These events will be signalled to Multi's modules as a 'shutdown'
signal.
|
|
Started on multi.pl and Multi::Core, the main differences:
- Uses POE::Component::Pg now (get it from http://g.blicky.net/poco-pg.git/)
- Doesn't use shared memory anymore
- No 'commands' anymore, every session has to handle its own events
(communication goes either through POE itself, or the PostgreSQL DB)
- No weird Cron stuff anymore
All other Multi modules will have to be updated/rewritten to reflect
these changes. None of them will work at the moment.
|
|
|
|
|
|
|
|
|
|
|
|
Updated hourly by Multi.
May want to look for a better way to update this cache, because I'm
afraid the current tags_vn_calc() is going to perform very badly on
larger databases.
|
|
|
|
|
|
|
|
May actually be a better idea to just log a HUGE WARNING in case
the cached values don't match the actual values, as that really
shouldn't happen. But oh well, updating is fine, too. Makes sure
everything stays correct in the long term.
|
|
...these colours look horrible on light skins, need to find a
solution to that >.>
|
|
|
|
|
|
git-svn-id: svn://vndb.org/vndb@101 1fe2e327-d9db-4752-bcf7-ef0cb4a1748b
|
|
problems, fixed display of wrong ID for screenshot diff, and increased screenshot JPEG quality to 90
git-svn-id: svn://vndb.org/vndb@95 1fe2e327-d9db-4752-bcf7-ef0cb4a1748b
|
|
git-svn-id: svn://vndb.org/vndb@94 1fe2e327-d9db-4752-bcf7-ef0cb4a1748b
|