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