Why is sync so slow?

@matbe33  What is the download speed (your upload to me) of the Tablo database server and what is the size of the initial file per channel approximately?  I’m asking for a range obviously as I know 30 minute shows mean more records than 2 hour movies.  My initial sync was not using my 50 Mbs potential so I guess you manage upload speeds?

@supfulks

This is not normal behaviour. You likely have a networking issue. Tell us more about your set up. Or open a support ticket with Tablo, they can help you directly.

It IS normal on my phone if I don’t sync it prior to leaving home.  I have described what I think the problem is but @TabloSupport hasn’t changed anything or mention changes for the future.  I think the problem is TO MANY IMAGES.  Yes, those images look nice under recordings, but REMEMBER each of those images comes via the sync process.  Syncing at home using WiFi is faster than syncing on the 4G / 3G network.  I suggested ONLY SYNC when we press a sync button, or an app with a scheduler in it, so it will sync automatically at 3 AM daily.

I have just changed cell phone providers and my new phone, a Samsung Galaxy S5 will be here tonight.  I am switching to T-Mobile from Sprint. 

I removed 50+ channels last night to help with syncing speed, and by 3 AM it was still syncing and updating guide. I fear it did not record a favorite show although I set that to record last time I was fully connected and synced. iPhone 6.
Realized the box is plugged into wireless repeater within house, will try plugging directly into router tonight.

@beastman

Tablo Support already clarified the sync process and it does not download the images when the Tablo is being sync’d. The images are downloaded / loaded on the fly later as a url image from the Tablo.

Your sync issues over LTE are likely networking issues.

@theuser86 I will see how T-Mobile is. They can’t be any worse than Sprint. I will try sync using LTE while at home and see how it goes. If 5 mins pass and still syncing I will switch it to WiFi and belive the problem is the Tablo. Hopefully T-zmobike syncs fast and the problem is Sprint.

@beastman

  1. If it syncs well over WiFi which has a lot faster speeds then LTE then why it is the Tablo? I remember from another post you said you sync’d over remote WiFi and that was fast too?
  2. I can sync quickly over LTE with no problems. Remote WiFi too. Yes order of speed is local WiFi l, remote WiFi and then LTE. But the reasoning here is logical as the download speeds are faster on local WiFi vs LTE.

Taco Cabana blocked ports but WiFi at Starbucks was as fast as WiFi at home. Depends on how many people using and the connection from router to the internet. Star idle uses Googlle Fiber

@beastman

Thus if local and remote WiFi works well, the issue is not with the Tablo. The Tablo doesn’t differentiate between you connecting from a remote IP whether the remote device is on WiFi or LTE. The issue is LTE speeds or like you said weird networking quirks like port blocking or filtering.

@supfulks Feel free to send us a note directly. If you haven’t sync’d in a while, it can take several minutes. But the Connecting screen isn’t part of this process - nor should it last this long. We’ll get you fixed up.

@supfulks Feel free to send us a note directly. If you haven't sync'd in a while, it can take several minutes. But the Connecting screen isn't part of this process - nor should it last this long. We'll get you fixed up.
Looks like problem is iPhone 6. Tried the iPad and connect and sync worked great. iPhone not supported?

@supfulks

Sync is uber fast on my iPhone 6. Are you running iOS 8.2?

... I'm sure the root cause for these performance issues is due to the real time commit states along with the intense file counts per recording (600+ for an hour long recording?). I understand Tablo records little 10 second chunks of video and uses file names to track the playback order. I'm not sure if playlist files (m3u) are also generated... 

Seriously? That would explain a lot.  I don’t know much about video transcoding/recording/streaming, but I can’t imagine that is an efficient use of resources.  I am very sad that my 4 tuner, 2TB Tablo sits unused and we are still chained to Dish Network.  If MS hadn’t basically given up on MediaCenter I would be using that even with its clunky STB paradigm and nightmarish maintenance routine.  I love the concept of Tablo. It has fantastic potential but the implementation is fatally flawed.  If you find a way around the performance problems with the new Roku app I’ll happily jump back in and try to get the family to adopt it.

We're not using Meteor in a typical way. We use blaze/spacebars and tracker, along with their build tools -- effectively only using Meteor for its client-side tech. If we were using Meteor on the server (I.e. on the Tablo hardware), we wouldn't have to go through a sync copy process, but we'd need a far more powerful cpu to run nodejs... The images also aren't being synced. What's coming over the wire during the sync is basically your database, and subsequent syncs are patches to keep the database in sync with the database on the tablo. That database will contain a url to the thumbnails, not the thumbnail image data itself. In the webapp, the image is fetched like any other web site, via img src, and doesn't block the ui rendering. The tablo has a tiny web server that is capable of serving those images, among other things.

Being able to fetch exact sized thumbnails is something I really want as well – we are exploring ways of doing this without too much burden on the tablo hardware.

Btw when you are seeing images during sync, this is literally just for show… It’s not actually syncing images. It’s syncing an entire database. I simply happen to look at the data flying by and if I see a particular type of image url, I use it to show the image animation, just to help make the sync feel less boring.

Hope that helps clear some things up


@matb33

First all, thank you for taking time to reply with a technical explanation. I know a developer’s time can be in short supply.

From your explanation, what I see in the Chrome developer tools Console logs must be misleading. I see a number of “sync load image: http://xxx.xxx.xxx.xxx/stream/thumb?id=…” statements, 51 to be exact in my case. I can watch one such “sync load image” log message for every time i watch a thumbnail animation fly across the screen during a “sync” process. I also see a corresponding HTTP GET request for each such animation in the Network tab as well.

This process goes on for a couple of minutes. Are you saying that downloading those images which are flying across the screen is not affecting performance of the “sync” process the way it is reported in the Chrome developer tools? If it is affecting sync performance in any way, I would MUCH prefer to not see those animated images.

One of the problems for me is that it is not clear what triggers a “sync” process. Is it a certain amount of elapsed time since the last “sync”? Is there some browser setting I need to adjust? Is it the act of clearing my browser cache which triggers a sync?

I can’t convince myself that it is always a browser cache issue because sometimes I see the following in the Console logs:

 Detected forceCacheReload or forceResync, clearing local database true false
 Deleting database: tablo_SID_zzzzzzz
 FindTitles SQL query: 8.603 seconds
 Render tiles within coords: l {x1: -5464, y1: -1160, x2: 6830, y2: 1450, isInvalid: function} true
 WebSQL: DROP TABLE award
 WebSQL: DROP TABLE channel
 WebSQL: DROP TABLE clientInfo
 WebSQL: DROP TABLE conflict
 WebSQL: DROP TABLE genre
 WebSQL: DROP TABLE guideEpisode
 WebSQL: DROP TABLE guideMovie
 WebSQL: DROP TABLE guideMovieAiring
 WebSQL: DROP TABLE guideSeason

Why are all these tables being dropped? This doesn’t seem like a “sync”, but rather a wiping out of an existing database which causes a download of the whole database again, which is being triggered for some reason. I don’t see those “DROP TABLE” statements if I manually clear my browser cache and reload the Tablo UI.

Also, I would suggest that if you are using Meteor only for the client side implementation, then perhaps a completely new approach should be considered.

I cannot think of any consumer device or application or web site where such a “sync” process exists, or would be tolerable by today’s standards. Especially for a modern device on a fast local network. If you turn on your TV, want to watch a show and have to wait for minutes, that is not a good user experience. Imagine if you started your car and had to wait for minutes to listen to the radio. That’s the experience I often feel like I get with the Tablo. DVRs from 10 years were lightning fast by comparison (granted, they were always powered on, but so is my Tablo).

I saw other posts mention the experience on Roku, so I tried the Tablo channel on an aging Roku model I have laying around. I agree with the others that the loading experience on even an older Roku is a far better experience.

I really do hope you can find a way to improve or eliminate the “sync” design because the Tablo’s value and other features are still appealing. However, the fact that you saw the need to include animations to keep the user from getting “bored” during a “sync” says a lot about the user experience during the critical startup sequence. It’s a bad first impression that happens more often than I would like.

@tablouserjohn  - Mat has forwarded on some answers to your questions:


> Are you saying that downloading those images which are flying across the screen is not affecting performance of the “sync” process the way it is reported in the Chrome developer tools?

It has a minimal effect because what takes time during sync is a combination of the CPU on the Tablo crunching away the database into chunks, and protocol overhead of sending chunk after chunk.

>  Is it a certain amount of elapsed time since the last “sync”?

Yes, I believe it’s 10 days – and I believe this is actively being addressed. Not sure on ETA, but it’s high priority.

> Why are all these tables being dropped?

For various reasons (firmware update for example), but for the vast majority of cases, it’s from that 10 days of inactivity.

> … perhaps a completely new approach should be considered.

Whether we used Angular, Meteor, React, etc isn’t the issue. The engineers are looking at ways to improve the sync operation but have been busy building a RESTful API for the brand new Roku channel. They’ve done a fantastic job with it, and we will be experimenting with it in the webapp as well.
</div>

Hopefully the REST API will help, this is ridiculous in design. Why download the entire database just to look at the channels? Stupid. Did the developers think this is how Netflix or Hulu are designed, if I logged into Netflix and it took 15 minutes to “sync…” their catalog no one would buy it.

I do Have to give Kudos on the reliability of the device itself, but the overall experience sucks, the Iphone/Ipad app is nearly useless, I use roku (the old browser) and it is great, the new version is good, looking towards improvements in the web client.

1 Like

I’m a new Tablo user - mostly from my iPad, where I then AirPlay to my Apple TV.

I love the Tablo - except for ‘synch’! Why doesn’t it just have ALL my episodes available instantly, or within a fraction of a second? I can search the ENTIRE internet for ‘How to design good iPad apps’ in milli-seconds, but I have to wait a minute or two to see what Tablo recorded last night?? Don’t answer why - it’s rhetorical :slight_smile: I suggest you get someone ELSE at your firm to redesign this - not tweak it to make it 50% faster, but redesign it to make it work.

Otherwise - terrific product!

I am not seeing this, it takes MAYBE 10 seconds for the “Recordings” to show up (usually around five seconds).

If you connect to your Tablo daily on iPad it should sync quickly. Within 10-15 seconds.

Is your Tablo wired or WiFi to your router?

Philsoft and theuser86,

thank you for your replies:

My Tablo is hard wired, and I have a GB network. My wireless is Cisco, with four non-overlapping access points. I routinely stream HD video across the wireless network - so, no issue there.

If I connect daily, it does indeed go quicker - I haven’t timed it, but it still takes, I don’t know, 15-30 seconds for each episode to show up. And, after I came back from two weeks of vacation, it took forever to sync.

Look, I’m not suggesting that this be “tuned” a bit, to make the synch time quicker. I am suggesting that Tablo figures out a better way of doing this. We are just moving bits and bytes here, and if I can move HD bits and bytes to my HD TV quickly, the tiny number of bits and bytes needed to show me what’s on my Tablo, ought to appear in milliseconds, not 10,15 seconds, or a few minutes, or whatever it is doing now.

I know it isn’t “as simple as that”, but from a UX perspective - I just want to see what’s on my darn Tablo, please show me. Now. Right Now.

Thanks again for an otherwise terrific product!

1 Like