I dislike one-uppers (me in this case), but when I started doing chip testing the early 80's, we also had PDP-11's (73's to be precise), and with that full 7' rack, we had 2 of the removable hard disks that were maybe 16" across and if I remember right, 5MB each. One held the O/S (TSX), and the other had the chip test programs and test patterns. My typing skills were pretty embarrassing early on. We used EDT on a VT-102 at the time, and TSX was great because we could switch among several terminal sessions. At some point we got (VMX?) cards so we could hook up Maxtor 5.25" disks in like 160MB. Can't remember if that was SCSI or ATA. I think we also got telnet to work. Now that was styling... Chris On Tuesday, October 13, 2020 at 10:09:01 AM UTC-6 [email protected] wrote:
> I bought a 512 MB disk for a VAX 11 in 1984 for $22,000. It was about the > size of a washing machine. These days, I don't think you can buy a disk > that small. > > On Tue, Oct 13, 2020 at 8:26 AM d k <[email protected]> wrote: > >> All vacuumed up. >> .../weewx_archive.db 770,588,672 >> .../weewx_elec_archive.db 630,120,488 >> >> Still 140,468 kb smaller or 18.2% Again today this isn't an issue. Rather >> small amount of space when you can buy a HD for ~$0.04/gb or less and an SD >> card for ~$0.4/gb or so. >> >> This is a long way from when I started and a mb of HD was $2.79 >> ($2,790/gb) and had an access time of > 20ms. I guess I old habits are hard >> to break. >> >> On Tuesday, October 13, 2020 at 10:44:20 AM UTC-4 d k wrote: >> >>> Maybe this belongs in -development rather than -user? >>> >>> The whole reason for this exercise is that I want to change the schema >>> anyway to add other data from my ted6000 and perhaps a couple of other >>> items like a sensaphone web600 in addition to the weather envoy. So I need >>> columns that aren't in the wview_extended schema. I've figured out how to >>> fix the reports and having the ability to do that makes this a lot easier. >>> >>> And I'm still learning about what tk did when he built this. So it's >>> wonderful that he's an email away. You don't get that often. >>> >>> On Tuesday, October 13, 2020 at 10:27:18 AM UTC-4 d k wrote: >>> >>>> Thought I vacuumed them but doing it again to be sure. They are >>>> separate files and opened in separate processes. I didn't use weewx to >>>> create them. Use the following statements. I'll see what happens. They >>>> don't all have the same data types. I used integers where that works. >>>> >>>> For the unmodified one in file .../weewx_archive.db: >>>> CREATE TABLE "archive" ( >>>> "dateTime" int NOT NULL UNIQUE, >>>> "usUnits" int NOT NULL, >>>> "interval" int NOT NULL, >>>> "barometer" REAL DEFAULT NULL, >>>> "pressure" REAL DEFAULT NULL, >>>> "altimeter" REAL DEFAULT NULL, >>>> "inTemp" REAL DEFAULT NULL, >>>> "outTemp" REAL DEFAULT NULL, >>>> "inHumidity" REAL DEFAULT NULL, >>>> "outHumidity" REAL DEFAULT NULL, >>>> "windSpeed" REAL DEFAULT NULL, >>>> "windDir" REAL DEFAULT NULL, >>>> "windGust" REAL DEFAULT NULL, >>>> "windGustDir" REAL DEFAULT NULL, >>>> "rainRate" REAL DEFAULT NULL, >>>> "rain" REAL DEFAULT NULL, >>>> "dewpoint" REAL DEFAULT NULL, >>>> "windchill" REAL DEFAULT NULL, >>>> "heatindex" REAL DEFAULT NULL, >>>> "ET" REAL REAL, >>>> "radiation" REAL DEFAULT NULL, >>>> "UV" REAL REAL, >>>> "extraTemp1" REAL DEFAULT NULL, >>>> "extraTemp2" REAL DEFAULT NULL, >>>> "extraTemp3" REAL DEFAULT NULL, >>>> "soilTemp1" REAL DEFAULT NULL, >>>> "soilTemp2" REAL DEFAULT NULL, >>>> "soilTemp3" REAL DEFAULT NULL, >>>> "soilTemp4" REAL DEFAULT NULL, >>>> "leafTemp1" REAL DEFAULT NULL, >>>> "leafTemp2" REAL DEFAULT NULL, >>>> "extraHumid1" REAL DEFAULT NULL, >>>> "extraHumid2" REAL DEFAULT NULL, >>>> "soilMoist1" REAL DEFAULT NULL, >>>> "soilMoist2" REAL DEFAULT NULL, >>>> "soilMoist3" REAL DEFAULT NULL, >>>> "soilMoist4" REAL DEFAULT NULL, >>>> "leafWet1" REAL DEFAULT NULL, >>>> "leafWet2" REAL DEFAULT NULL, >>>> "rxCheckPercent" REAL DEFAULT NULL, >>>> "txBatteryStatus" REAL DEFAULT NULL, >>>> "consBatteryVoltage" REAL DEFAULT NULL, >>>> "hail" REAL DEFAULT NULL, >>>> "hailRate" REAL DEFAULT NULL, >>>> "heatingTemp" REAL DEFAULT NULL, >>>> "heatingVoltage" REAL DEFAULT NULL, >>>> "supplyVoltage" REAL DEFAULT NULL, >>>> "referenceVoltage" REAL DEFAULT NULL, >>>> "windBatteryStatus" REAL DEFAULT NULL, >>>> "rainBatteryStatus" REAL DEFAULT NULL, >>>> "outTempBatteryStatus" REAL DEFAULT NULL, >>>> "inTempBatteryStatus" REAL DEFAULT NULL, >>>> PRIMARY KEY("dateTime") >>>> ); >>>> >>>> For the modified one in file .../weewx_elec_archive.db: >>>> CREATE TABLE "archive" ( >>>> "dateTime" INTEGER NOT NULL UNIQUE, >>>> "usUnits" INTEGER DEFAULT NULL, >>>> "interval" INTEGER DEFAULT NULL, >>>> "barometer" REAL DEFAULT NULL, >>>> "pressure" REAL DEFAULT NULL, >>>> "altimeter" REAL DEFAULT NULL, >>>> "inTemp" REAL DEFAULT NULL, >>>> "outTemp" REAL DEFAULT NULL, >>>> "inHumidity" INTEGER DEFAULT NULL, >>>> "outHumidity" INTEGER DEFAULT NULL, >>>> "windSpeed" REAL DEFAULT NULL, >>>> "windDir" REAL DEFAULT NULL, >>>> "windGust" REAL DEFAULT NULL, >>>> "windGustDir" REAL DEFAULT NULL, >>>> "rainRate" REAL DEFAULT NULL, >>>> "rain" REAL DEFAULT NULL, >>>> "dewpoint" REAL DEFAULT NULL, >>>> "windchill" REAL DEFAULT NULL, >>>> "heatindex" REAL DEFAULT NULL, >>>> "ET" REAL DEFAULT NULL, >>>> "radiation" INTEGER DEFAULT NULL, >>>> "UV" REAL DEFAULT NULL, >>>> "soilTemp1" REAL DEFAULT NULL, >>>> "leafTemp1" REAL DEFAULT NULL, >>>> "soilMoist1" INTEGER DEFAULT NULL, >>>> "leafWet1" INTEGER DEFAULT NULL, >>>> "rxCheckPercent" REAL DEFAULT NULL, >>>> "txBatteryStatus" INTEGER DEFAULT NULL, >>>> "consBatteryVoltage" REAL DEFAULT NULL, >>>> PRIMARY KEY("dateTime") >>>> ); >>>> >>>> >>>> On Tuesday, October 13, 2020 at 9:29:18 AM UTC-4 [email protected] >>>> wrote: >>>> >>>>> Oh, one other tip: make sure you VACUUM >>>>> <https://sqlite.org/lang_vacuum.html> both databases before comparing >>>>> sizes. >>>>> >>>>> On Tue, Oct 13, 2020 at 6:27 AM Tom Keffer <[email protected]> wrote: >>>>> >>>>>> How are you running the two benchmarks? In the same process? SQLite >>>>>> caches pages, so the second query should be much faster. >>>>>> >>>>>> Try reversing the order. >>>>>> >>>>>> -tk >>>>>> >>>>>> On Tue, Oct 13, 2020 at 6:18 AM d k <[email protected]> wrote: >>>>>> >>>>>>> I never used SQLite before and my previous comments were based on >>>>>>> mysql. I decided to do an experiment as it was raining yesterday. Read >>>>>>> some >>>>>>> of the SQLite documentation and installed it. Impressed by how >>>>>>> lightweight >>>>>>> it is. >>>>>>> >>>>>>> I have to agree with everyone that the savings from removing all the >>>>>>> unused columns in sqlite is small. In my case 19.3% or from 762,440 kb >>>>>>> to >>>>>>> 615,352 kb = 147,088 kb with 5,480,150 rows. Not insignificant but it >>>>>>> is a >>>>>>> small difference. >>>>>>> >>>>>>> Since I had the two SQLite database files I decided to try a query. >>>>>>> Expected a large time penalty from all the null columns. "SELECT * from >>>>>>> archive WHERE datetime BETWEEN 1490563860 and 1546298910;" on both >>>>>>> files. >>>>>>> I'm doing this on machine other than what I run weewx on, it's much >>>>>>> faster. >>>>>>> >>>>>>> When executed against the unmodified schema: >>>>>>> Execution finished without errors. >>>>>>> Result: 928677 rows returned in 729ms... >>>>>>> >>>>>>> When executed against the modified schema: >>>>>>> Execution finished without errors. >>>>>>> Result: 928677 rows returned in 127ms... >>>>>>> >>>>>>> That is without additional columns I need, which drove this to begin >>>>>>> with. When they are added in as they are null for all of these records >>>>>>> the >>>>>>> execution goes to about 429ms for the modified schema. >>>>>>> >>>>>>> A savings of 602ms or a query that runs in 82.6% less time is, well >>>>>>> huge when it's a simple select statement. >>>>>>> >>>>>>> I haven't tried replacing all the nulls with some value yet. Perhaps >>>>>>> '-1' or some other value those columns would never hold. But the next >>>>>>> rainy >>>>>>> day I just might. >>>>>>> >>>>>>> If you aren't doing a lot of queries on the data this also isn't all >>>>>>> that big a deal. Which was the reason for installing mysql. The nulls >>>>>>> are >>>>>>> the reason you can't normalize the data and have it work acceptable. >>>>>>> >>>>>>> On Sunday, October 11, 2020 at 9:09:23 PM UTC-4 bdf0506 wrote: >>>>>>> >>>>>>>> I've found that deleting columns out of the schema of the archive >>>>>>>> table does more hard than good. I had a 3.x installation for a while, >>>>>>>> and i >>>>>>>> had trimmed many columns that I didn't need, and also renamed some. >>>>>>>> While >>>>>>>> it would work great for general manual querying of the data, many >>>>>>>> skins >>>>>>>> would throw weird errors, mostly when they would expect schemas that >>>>>>>> weren't there. I moved to 4.x recently, and decided to ditch my custom >>>>>>>> schema and go with a fresh install with the extended schema. Exporting >>>>>>>> data >>>>>>>> from the old column names to then importing to the new column names >>>>>>>> proved >>>>>>>> to be trickier than I would have hoped, but eventually got it working >>>>>>>> and >>>>>>>> the had to go and manually update many skins I would use. Overall it >>>>>>>> was a >>>>>>>> PITA and I wish I would have just stuck with the original schema from >>>>>>>> the >>>>>>>> beginning. >>>>>>>> >>>>>>>> tl;dr - stick with the default schemas to save you a headache! >>>>>>>> >>>>>>>> On Saturday, October 10, 2020 at 12:40:53 AM UTC-4 [email protected] >>>>>>>> wrote: >>>>>>>> >>>>>>>>> BTW I'm in awe of what you've done with this. It's an amazing >>>>>>>>> effort and I really like what you've done. It works better than many >>>>>>>>> comercial apps I've had to use. >>>>>>>>> >>>>>>>>> On Friday, October 9, 2020 at 6:17:00 PM UTC-4 [email protected] >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Sorry. I should have prefaced my comments that they pertain to >>>>>>>>>> SQLite. I have no experience with MySQL. >>>>>>>>>> >>>>>>>>>> On Fri, Oct 9, 2020 at 8:52 AM d k <[email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> The size of the indexes on the archive table are <51mb in both >>>>>>>>>>> cases. There is no difference here. I totally agree. >>>>>>>>>>> >>>>>>>>>>> I think the reason you don't see a difference in size is because >>>>>>>>>>> of how null values are stored, I think in 1 byte but haven't found >>>>>>>>>>> a >>>>>>>>>>> reference. So yes even if you remove 20 unused types you only >>>>>>>>>>> remove 20 >>>>>>>>>>> bytes which as you point out is nothing. But the extra columns >>>>>>>>>>> still affect >>>>>>>>>>> read and write performance. Write isn't a big big deal as we don't >>>>>>>>>>> do lots >>>>>>>>>>> of writes anyway. But we might do lots of reads depending on what >>>>>>>>>>> we are >>>>>>>>>>> doing with our station data and we probably are all running this on >>>>>>>>>>> inexpensive slow hardware. In my case a RPi but a new one which >>>>>>>>>>> isn't all >>>>>>>>>>> that slow other than if you're comparing it to something else >>>>>>>>>>> that's new. >>>>>>>>>>> But, for instance it still cut the time to make the daily summiers >>>>>>>>>>> by more >>>>>>>>>>> than half. Again not like we do that often so not a huge deal. >>>>>>>>>>> >>>>>>>>>>> This is where the real change probably came from. I also changed >>>>>>>>>>> the data types of the observations from double (8 bytes) to float >>>>>>>>>>> (4 >>>>>>>>>>> bytes). Mysql made the sqllite data type doubles instead of floats. >>>>>>>>>>> I don't >>>>>>>>>>> have REAL_AS_FLOAT set and that's my fault. >>>>>>>>>>> >>>>>>>>>>> I am going to move to FLOAT(n) and set the precision on the >>>>>>>>>>> columns next which won't change the row length, as the columns are >>>>>>>>>>> all >>>>>>>>>>> still 4 bytes, but to make things easier when I use other >>>>>>>>>>> applications >>>>>>>>>>> against this data set. >>>>>>>>>>> >>>>>>>>>>> In my case the length of the data went from ~1.1 gb to <650mb in >>>>>>>>>>> this case. It also reduced the size of the binlogs, which get >>>>>>>>>>> purged >>>>>>>>>>> anyway. It also reduced the size of the *ib* files. It cut the time >>>>>>>>>>> to and >>>>>>>>>>> size of dumping the table almost by half, I haven't tried restoring >>>>>>>>>>> yet but >>>>>>>>>>> expect the same. Queries run faster. >>>>>>>>>>> >>>>>>>>>>> In my opinion there are other reasons to trim the schema to fit >>>>>>>>>>> your needs other than the size of the data file. But yes it's more >>>>>>>>>>> work and >>>>>>>>>>> that depends on how you use your data if it's worth it or not. >>>>>>>>>>> Obviously I >>>>>>>>>>> think it's worth it and YMMV. >>>>>>>>>>> >>>>>>>>>>> -dk >>>>>>>>>>> On Friday, October 9, 2020 at 9:01:49 AM UTC-4 [email protected] >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> Trimming the schema does not make as big a difference in >>>>>>>>>>>> database size as you might think. >>>>>>>>>>>> >>>>>>>>>>>> For example, using my own database of 1.4M rows, trimming the >>>>>>>>>>>> schema from 48 observation types to 27, reduces the size from >>>>>>>>>>>> 268MB to >>>>>>>>>>>> 201MB. >>>>>>>>>>>> >>>>>>>>>>>> The reason is that most of the space is taken up by the >>>>>>>>>>>> indexes, not the column data. >>>>>>>>>>>> >>>>>>>>>>>> -tk >>>>>>>>>>>> >>>>>>>>>>>> On Thu, Oct 8, 2020 at 8:02 PM d k <[email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Yup.. I just found that and was about to report back I was >>>>>>>>>>>>> trying it that was it. Just restarted the test system to see if >>>>>>>>>>>>> it went >>>>>>>>>>>>> away. I think I got rid of all of them now. >>>>>>>>>>>>> >>>>>>>>>>>>> Gary you are the best. Thanks so much. >>>>>>>>>>>>> >>>>>>>>>>>>> On Thursday, October 8, 2020 at 10:54:27 PM UTC-4 gjr80 wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>> >>>>>>>>>>>>>> First up, thank you for not posting images of text, it’s >>>>>>>>>>>>>> makes reading/searching logs a real pain. >>>>>>>>>>>>>> >>>>>>>>>>>>>> The error is due to a skin trying to generate a plot that >>>>>>>>>>>>>> involves extraTemp1 and from the short log extract I would >>>>>>>>>>>>>> guess that this is from the Seasons skin. If you look in the >>>>>>>>>>>>>> Seasons skin config file (skins/Seasons/skin.conf) under >>>>>>>>>>>>>> [ImageGenerator] >>>>>>>>>>>>>> you will find the daytemp, weektemp, monthtemp and yeartemp >>>>>>>>>>>>>> plots use >>>>>>>>>>>>>> extraTemp1 (and extraTemp2 and extraTemp3). Easiest fix is to >>>>>>>>>>>>>> comment out >>>>>>>>>>>>>> those plots, eg: >>>>>>>>>>>>>> >>>>>>>>>>>>>> # [[[daytemp]]] >>>>>>>>>>>>>> # yscale = None, None, 0.5 >>>>>>>>>>>>>> # [[[[extraTemp1]]]] >>>>>>>>>>>>>> # [[[[extraTemp2]]]] >>>>>>>>>>>>>> # [[[[extraTemp3]]]] >>>>>>>>>>>>>> >>>>>>>>>>>>>> Save skin.conf and the error should go away on the next >>>>>>>>>>>>>> report cycle. >>>>>>>>>>>>>> >>>>>>>>>>>>>> Gary >>>>>>>>>>>>>> On Friday, 9 October 2020 at 12:29:14 UTC+10 [email protected] >>>>>>>>>>>>>> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> I tried to post this as an image but it doesn't show. So >>>>>>>>>>>>>>> here is the text. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: Caught unrecoverable exception in generator >>>>>>>>>>>>>>> 'weewx.imagegenerator.ImageGenerator' >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** extraTemp1 >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** Traceback (most recent call >>>>>>>>>>>>>>> last): >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** File >>>>>>>>>>>>>>> "/usr/share/weewx/weewx/reportengine.py", line 197, in run >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** obj.start() >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** File >>>>>>>>>>>>>>> "/usr/share/weewx/weewx/reportengine.py", line 280, in start >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** self.run() >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** File >>>>>>>>>>>>>>> "/usr/share/weewx/weewx/imagegenerator.py", line 41, in run >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** >>>>>>>>>>>>>>> self.genImages(self.gen_ts) >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** File >>>>>>>>>>>>>>> "/usr/share/weewx/weewx/imagegenerator.py", line 176, in >>>>>>>>>>>>>>> genImages >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** start_vec_t, stop_vec_t >>>>>>>>>>>>>>> ,data_vec_t = >>>>>>>>>>>>>>> weewx.xtypes.get_series(var_type, >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** File >>>>>>>>>>>>>>> "/usr/share/weewx/weewx/xtypes.py", line 91, in get_series >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** raise >>>>>>>>>>>>>>> weewx.UnknownType(obs_type) >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** weewx.UnknownType: extraTemp1 >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] ERROR >>>>>>>>>>>>>>> weewx.reportengine: **** Generator terminated >>>>>>>>>>>>>>> Oct 8 20:03:19 prometis weewx[271870] DEBUG >>>>>>>>>>>>>>> weewx.reportengine: Report 'SmartphoneReport' not enabled. >>>>>>>>>>>>>>> Skipping. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Thursday, October 8, 2020 at 9:39:14 PM UTC-4 Duane >>>>>>>>>>>>>>> Kerzic wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks for all the help you provided last time around. >>>>>>>>>>>>>>>> Thanks in advance this time for your help. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I wanted to clean up weewx.archive table and make it a bit >>>>>>>>>>>>>>>> smaller. So I deleted the columns I don't think I'll ever use. >>>>>>>>>>>>>>>> But now I'm >>>>>>>>>>>>>>>> getting this in the system log. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I'm guessing that extraTemp1 is coded into one of those >>>>>>>>>>>>>>>> files but I haven't looked to find out yet. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I've shortened the average row length of the archive table >>>>>>>>>>>>>>>> to 126 from 217 bytes. Huge difference when you have 10 years >>>>>>>>>>>>>>>> of data. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -dk >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>> 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 [email protected]. >>>>>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>>>> https://groups.google.com/d/msgid/weewx-user/02d0a56e-c9fc-4e48-a74a-cdb6291474bbn%40googlegroups.com >>>>>>>>>>>>> >>>>>>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/02d0a56e-c9fc-4e48-a74a-cdb6291474bbn%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 [email protected]. >>>>>>>>>>> >>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>> https://groups.google.com/d/msgid/weewx-user/853cbe79-ee93-49b3-90c3-6a9a02dab1b7n%40googlegroups.com >>>>>>>>>>> >>>>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/853cbe79-ee93-49b3-90c3-6a9a02dab1b7n%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 [email protected]. >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/msgid/weewx-user/77e5e730-9cf0-4dbb-99c1-568d7fd32caen%40googlegroups.com >>>>>>> >>>>>>> <https://groups.google.com/d/msgid/weewx-user/77e5e730-9cf0-4dbb-99c1-568d7fd32caen%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 [email protected]. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/weewx-user/a82db714-911b-45df-9f3b-caef8c7f0471n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/weewx-user/a82db714-911b-45df-9f3b-caef8c7f0471n%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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/863ff043-750a-4adc-b654-a4b8db1b15fan%40googlegroups.com.
