ovsqlite
Julien ÉLIE
julien at trigofacile.com
Mon Dec 21 20:58:24 UTC 2020
Hi Bo,
>> Commits are done by default after 10 000 transactions. Maybe a
>> silly question but how does ovsqlite behaves if INN (or better
>> say>> ovsqlite-server) crashes or is killed without exiting
>> properly? (do we loose up to 10 000 overview changes since last
>> commit?) >
> You'd lose at most the last 10000 articles, or the last 10 seconds of
> changes, whichever is smaller. (I have no idea how many articles a
> typical INN site needs to store each second.)
>
> If it seems too high for daily use,
> we could lower it and add a note in the documentation about temporarily
> raising it when rebuilding overview data.
Interesting information; I haven't still read that part of code about 10
seconds. I'll mention this in the man page.
>> With ovsqlite, are article counts in newsgroups always accurate? (I think so)
>
> That's what the code attempts to do, at least. :-)
That's great!
> Manual undeletion would be a lot easier with ovsqlite than with ovdb,
> since you get a free SQL command line tool with each SQLite installation.
So true!
Here are a few gcc warnings I had with GCC 10.1.0:
* In ovsqlite/ovsqlite.c, the ovsqlite_open() function does not use its
argument "mode". Is it expected? (for read-only or writable mode)
* fill_search_buffer() should be static. (Fixed.)
* I'm facing 5 "cast increases required alignment of target type"
errors. Do you know how I could fix them?
ovsqlite/ovsqlite.c: Dans la fonction « finish_request »:
ovsqlite/ovsqlite.c:143:6: attention: le transtypage augmente
l'alignement requis pour le type ciblé [-Wcast-align]
143 | *(uint32_t *)request->data = request->left;
| ^
ovsqlite/ovsqlite.c: Dans la fonction « read_response »:
ovsqlite/ovsqlite.c:225:34: attention: le transtypage augmente
l'alignement requis pour le type ciblé [-Wcast-align]
225 | response_size = *(uint32_t *)response->data;
| ^
ovsqlite/ovsqlite.c: Dans la fonction « fill_search_buffer »:
ovsqlite/ovsqlite.c:584:20: attention: le transtypage augmente
l'alignement requis pour le type ciblé [-Wcast-align]
584 | rh->overview = (char **)store;
| ^
ovsqlite/ovsqlite.c:587:19: attention: le transtypage augmente
l'alignement requis pour le type ciblé [-Wcast-align]
587 | rh->arrived = (time_t *)store;
| ^
ovsqlite/ovsqlite.c:590:18: attention: le transtypage augmente
l'alignement requis pour le type ciblé [-Wcast-align]
590 | rh->artnum = (ARTNUM *)store;
| ^
I do not manage to link innd:
21:47 iulius at denver ~/work/inn/trunk/innd% ../libtool --mode=link
/home/iulius/work/gcc/gcc-10.1.0/bin/gcc -pie -Wl,-z,relro -Wl,-z,now -o
innd art.o cc.o chan.o icd.o innd.o keywords.o lc.o nc.o newsfeeds.o
ng.o perl.o proc.o python.o rc.o site.o status.o util.o wip.o
/home/iulius/work/inn/trunk/storage/libstorage.la
/home/iulius/work/inn/trunk/history/libinnhist.la
/home/iulius/work/inn/trunk/lib/libinn.la -ldb -lz
/home/iulius/work/inn/trunk/lib/perl.o -Wl,-E -fstack-protector
-L/usr/local/lib -L/usr/lib/x86_64-linux-gnu/perl/5.20/CORE -lperl -ldl
-lm -lpthread -lcrypt -L/usr/lib -lpython2.7 -lpthread -ldl -lutil -lm
-L/usr/lib -lz -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions
-Wl,-z,relro
/home/iulius/work/inn/trunk/storage/.libs/libstorage.so: undefined
reference to `unpack_now'
/home/iulius/work/inn/trunk/storage/.libs/libstorage.so: undefined
reference to `unpack_later'
/home/iulius/work/inn/trunk/storage/.libs/libstorage.so: undefined
reference to `pack_later'
/home/iulius/work/inn/trunk/storage/.libs/libstorage.so: undefined
reference to `pack_now'
My Makefile.global only has SQLITE3_LIBS set:
SQLITE3_CPPFLAGS =
SQLITE3_LDFLAGS =
SQLITE3_LIBS = -lsqlite3
Is there something I mislooked?
--
Julien ÉLIE
« Ce que j'aime dans les voyages, c'est l'étonnement du retour. »
(Stendhal)
More information about the inn-workers
mailing list