mirror of
https://github.com/postgres/postgres.git
synced 2025-10-21 02:52:47 +03:00
Make new event trigger facility actually do something.
Commit 3855968f32
added syntax, pg_dump,
psql support, and documentation, but the triggers didn't actually fire.
With this commit, they now do. This is still a pretty basic facility
overall because event triggers do not get a whole lot of information
about what the user is trying to do unless you write them in C; and
there's still no option to fire them anywhere except at the very
beginning of the execution sequence, but it's better than nothing,
and a good building block for future work.
Along the way, add a regression test for ALTER LARGE OBJECT, since
testing of event triggers reveals that we haven't got one.
Dimitri Fontaine and Robert Haas
This commit is contained in:
@@ -59,12 +59,6 @@ get_tsearch_config_filename(const char *basename,
|
||||
return result;
|
||||
}
|
||||
|
||||
static int
|
||||
comparestr(const void *a, const void *b)
|
||||
{
|
||||
return strcmp(*(char *const *) a, *(char *const *) b);
|
||||
}
|
||||
|
||||
/*
|
||||
* Reads a stop-word file. Each word is run through 'wordop'
|
||||
* function, if given. wordop may either modify the input in-place,
|
||||
@@ -140,7 +134,7 @@ readstoplist(const char *fname, StopList *s, char *(*wordop) (const char *))
|
||||
|
||||
/* Sort to allow binary searching */
|
||||
if (s->stop && s->len > 0)
|
||||
qsort(s->stop, s->len, sizeof(char *), comparestr);
|
||||
qsort(s->stop, s->len, sizeof(char *), pg_qsort_strcmp);
|
||||
}
|
||||
|
||||
bool
|
||||
@@ -148,5 +142,5 @@ searchstoplist(StopList *s, char *key)
|
||||
{
|
||||
return (s->stop && s->len > 0 &&
|
||||
bsearch(&key, s->stop, s->len,
|
||||
sizeof(char *), comparestr)) ? true : false;
|
||||
sizeof(char *), pg_qsort_strcmp)) ? true : false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user