Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Weather jpg stops downloading after a few weeks
#21
Actually, looking at it, I was wrong as well about the serial number thing. The image IS cached (not cached in the sense of not getting it again from the server but in the sense of updating our web image cache) if in remote (RIVA) mode. In that case we have to put it into the cache so that the RIVA client will see it, and that also does bump the serial number when we update that web image cache. If not in RIVA mode, then there's no need to do that since the web image widget just has a local bitmap it keeps and redraw from that as required.

The no cache option just prevents the widget from using any sort of caching headers with the web server, so that it will always get an image, even if the server gives us a header that tells us it will be valid for such a length of time.

I'm diffused now. Let me dig into this more...
Dean Roddey
Software Geek Extraordinaire
Reply
#22
OK, so the Windows RIVA client does use the serial number. When it gets the TReqImgStart message, which is the first thing when an image is being downloaded, that has a serial number in it. It stores that in the cache with the image.

When an image drawing request is sent (TDrawBitmap, TAlphaBlit, etc..), the current serial number is sent with that as well. It goes and checks its cache using the provided image key. If it finds that key it checks the serial number. If that is the same, then it just returns the image it already has. Else, it downloads the image again.

Now, it's possible that the image I'm drawing in the web image widget, which is not being drawn from the cache but just from a local bitmap the widget keps, is not completely in sync with the cache's. So I will update it to make sure it sets the same serial number on that local image as is set in the cache.

But still, it's going up so even if the RIVA client was one serial number increment behind, it should still update. It is true that one of the versions back I was not setting the serial number on my local bitmap each time I set a new one, and that could have made the RIVA clients not update. But that was fixed and now it should be working ok.

So, Brian, you may just want to check your caching logic wrt to the serial number and make sure you are storing the new serial number each time you download the image, and also that you are using the one in the drawing request to check to see if you need to download the image again.
Dean Roddey
Software Geek Extraordinaire
Reply
#23
kfly,

How would I go about testing this, so I can investigate? Is there a server and template you can give me to show the behavior? It sounds like it stops updating immediately, which is good, because it will be easier to reproduce.

If you want to test it yourself, I think (if I remember correctly) that the Cache display in CQC Client shows the serial numbers of the cache entries. So in theory, you should see the serial number incrementing every time you view the cache. When it stops updating, the serial number should stay constant. If that's not the behavior you see, then something more complicated might be going on. Also, in the Opt page of the server settings, you could set Optimization to None, and see if that has an effect. Ordinarily, the app attempts to reorder the RIVA drawing commands in a limited way to get the screen to render more quickly, before all the graphics are available. Perhaps there's a flaw in my logic, in which case turning off this optimization should fix the problem.

Brian
Reply
#24
Brian,
Thanks for the reply.

Just create a "Static Web Image Widget" with this URL.(it updates every minute)
http://www.centennialbulb.org/ctbulb.jpg

If you switch/reload overlays or restart CQC client the time on the image should update if the new image is downloaded.

The serial number increments only once(if that is what (ser xx) is). If I clear the cache it will update the number but only if I clear cache again. It caches the item under "Other" in the Cache display.

I also changed the Server Optimization setting to "None" but it didn't change the behavior.

Thanks
Kevin
_______________
Denon 3808ci, 2112ci , SONOS, Russound CAA66,Z-Wave(Lights,Locks), Hue, SmartThings,
iPads,Tivo,Hikvision,Elk-M1,iTunes,TED5000,Somfy RTS blinds, Amazon Echo, Google Home, Polk XRT12,
Honeywell Wi-Fi 9000 & Caleo Wi-Fi Thermostats, Rainmachine
Reply
#25
Unfortunately, I don't have a CQC system myself, so I can't create a template or anything like that.
Reply
#26
brianmount Wrote:Unfortunately, I don't have a CQC system myself, so I can't create a template or anything like that.
If I can figure out how setup a test template(IOS RIVA) over the internet will it help to troubleshoot the issue.

Thanks
Kevin
_______________
Denon 3808ci, 2112ci , SONOS, Russound CAA66,Z-Wave(Lights,Locks), Hue, SmartThings,
iPads,Tivo,Hikvision,Elk-M1,iTunes,TED5000,Somfy RTS blinds, Amazon Echo, Google Home, Polk XRT12,
Honeywell Wi-Fi 9000 & Caleo Wi-Fi Thermostats, Rainmachine
Reply
#27
If you want to set one up, just let me know. You don't really need any actual hardware. You can just install simulator drivers and set up the room config and have a testable system easily enough.
Dean Roddey
Software Geek Extraordinaire
Reply
#28
Sure, if you can set something up, that would be great. I can also ask my friend Rob, aka Sam Vimes, to do it, but he has been awfully busy the last year or so with work, so I'm not sure how quickly he could put something together.
Reply
#29
brianmount Wrote:Sure, if you can set something up, that would be great. I can also ask my friend Rob, aka Sam Vimes, to do it, but he has been awfully busy the last year or so with work, so I'm not sure how quickly he could put something together.
I have setup a test page. I will PM with testing details.
_______________
Denon 3808ci, 2112ci , SONOS, Russound CAA66,Z-Wave(Lights,Locks), Hue, SmartThings,
iPads,Tivo,Hikvision,Elk-M1,iTunes,TED5000,Somfy RTS blinds, Amazon Echo, Google Home, Polk XRT12,
Honeywell Wi-Fi 9000 & Caleo Wi-Fi Thermostats, Rainmachine
Reply
#30
Thanks; I'm able to reproduce the problem. When I have my computer set up (and hopefully also an apartment of my own to set it up in), I will try to troubleshoot the problem.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)