The database is corrupt. Could be caused by a bad SD card, losing power during a write, a number of reasons. I've been able to use this process to recover most of a corrupt data base. With 5 years of data, the recreate process will take a long time (days(?)) on a pi. I recommend coping the database to a faster machine to create the database, then copy it back to the pi.
# Dump the database as INSERT commands. sqlite3 weewx.sdb .mode insert .output dump_all.sql .dump .exit # remove unwanted records from the dump file cat dump_all.sql | grep -v TRANSACTION | grep -v ROLLBACK | grep -v COMMIT >dump_all_notrans.sql # recreate the database using the insert statements. sqlite3 new-weewx.sdb ".read dump_all_notrans.sql" make a copy of your existing weewx.sdb file and then copy new-weewx.sdb to weewx.sdb. On Monday, July 11, 2022 at 7:02:52 AM UTC-6 tke...@gmail.com wrote: > It is very unlikely that the size of the database is a problem. Like > Graham, I have over 15 years of data on mine without a problem. > > You did not say what kind of storage you are using, but if it is an old SD > card, it is much more likely that the card is corrupt. > > You may be able to recover the database by using the utility sqlite3. > > sqlite3 /home/weewx/archive/weewx.sdb > sqlite> .recover > sqlite> .quit > > However, usually this does not work, in which case you will have to > recover from a backup copy. Then, replace the card. > > -tk > > > On Sun, Jul 10, 2022 at 10:27 AM Fische Namenlos <aalmei...@gmail.com> > wrote: > >> here it is: >> Sun Jul 10 19:25:39 2022 user.debug weewx[2812] DEBUG weewx.restx: Shut >> down StationRegistry thread. >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: Caught >> unrecoverable exception: >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** database disk image is malformed >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** Traceback (most recent call last): >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 214, in run >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** self.dispatchEvent(weewx.Event(weewx.CHECK_LOOP, packet=packet)) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 245, in dispatchEvent >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** callback(event) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 634, in check_loop >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** raise BreakLoop >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** weewx.engine.BreakLoop >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: **** >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** During handling of the above exception, another exception occurred: >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: **** >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** Traceback (most recent call last): >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewxd", line 153, in main >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** engine.run() >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 221, in run >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** self.dispatchEvent(weewx.Event(weewx.POST_LOOP)) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 245, in dispatchEvent >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** callback(event) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 644, in post_loop >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** self._software_catchup() >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 715, in >> _software_catchup >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** self.engine.dispatchEvent(weewx.Event(weewx.NEW_ARCHIVE_RECORD, >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 245, in dispatchEvent >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** callback(event) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/engine.py", line 675, in >> new_archive_record >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** dbmanager.addRecord(event.record, >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/manager.py", line 301, in addRecord >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** self._updateHiLo(accumulator, cursor) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/manager.py", line 1031, in _updateHiLo >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** _stats_dict = self._get_day_summary(_sod_ts, cursor) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weewx/manager.py", line 1412, in >> _get_day_summary >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** _cursor.execute( >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weedb/sqlite.py", line 30, in guarded_fn >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** return fn(*args, **kwargs) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** File "/home/weewx/bin/weedb/sqlite.py", line 219, in execute >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** return sqlite3.Cursor.execute(self, *args, **kwargs) >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** sqlite3.DatabaseError: database disk image is malformed >> Sun Jul 10 19:25:39 2022 user.crit weewx[2812] CRITICAL __main__: >> **** Exiting. >> peterq...@gmail.com schrieb am Sonntag, 10. Juli 2022 um 17:45:42 UTC+2: >> >>> What error messages are you getting? >>> >>> On Sun, Jul 10, 2022 at 8:00 AM Graham Eddy <g...@geddy.au> wrote: >>> >>>> 15 years of data, running happily on RPi 4B: >>>> >>>> *graham@paperbark*:*/home/weewx/archive $* ls -l weewx.sdb >>>> -rw-r--r-- 1 weewx weewx 175935488 Jul 11 00:55 weewx.sdb >>>> >>>> >>>> On 11 Jul 2022, at 12:43 am, Fische Namenlos <aalmei...@gmail.com> >>>> wrote: >>>> >>>> my station is using sqlite database (weewx.sdb) for nearly 5 years, and >>>> now - I suppose - is getting to big for my Raspi-server, it stops >>>> working/writting. >>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "weewx-user" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to weewx-user+...@googlegroups.com. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/weewx-user/8C3EB25A-F4A3-4D14-B43C-16556831AF91%40geddy.au >>>> >>>> <https://groups.google.com/d/msgid/weewx-user/8C3EB25A-F4A3-4D14-B43C-16556831AF91%40geddy.au?utm_medium=email&utm_source=footer> >>>> . >>>> >>> >>> >>> -- >>> Peter Quinn >>> (415)794-2264 <(415)%20794-2264> >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "weewx-user" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to weewx-user+...@googlegroups.com. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/weewx-user/47d68a21-a20c-4145-bfc0-2179b9e847e8n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/weewx-user/47d68a21-a20c-4145-bfc0-2179b9e847e8n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/346a4232-4b7f-4ad5-ae22-094aa998cfban%40googlegroups.com.