The Movie Database-ondersteuning

Hi, I'm the developer of SeriesGuide and tmdb-java!

On occasion and for random shows and for one or more seasons of that show data returned by TMDb is not in the available translation. The issue typically disappears when the request is tried again later (e.g. within a few hours).

APIs used are https://developers.themoviedb.org/3/tv-seasons/get-tv-season-details and https://developers.themoviedb.org/3/tv/get-tv-details. So far only observed with language code de. User agent is okhttp/4.9.1.

For example GET https://api.themoviedb.org/3/tv/4087/season/8?language=de&api_key=API_KEY

I sadly can't share any response headers as I'm not able to reproduce the issue due to it appearing so rarely. Let me know if there is any additional info that I can share!

More details also in the GitHub issue at https://github.com/UweTrottmann/SeriesGuide/issues/807

38 antwoorden (op pagina 1 van 3)

Jump to last post

Volgende paginaLaatste pagina

I am a user of SeriesGuide and have this problem almost every day. Thanks to Uwe for reporting this problem. It's weird, that not a whole series is affected, but only a few seasons.

If can I help anyhow, please tell me. (I am using the Android app "SeriesGuide" on my tablet Samsung Galaxy S7+.)

What about using the primary language translation instead?

GET https://developers.themoviedb.org/3/configuration/get-primary-translations

In other words the ISO-3166-1 (de-DE) instead of ISO-639-1 (de). I hadn't problems so far while using the primary country added to the language.

OK, got headers of a response that incorrectly contains English data.

Request{method=GET, url=https://api.themoviedb.org/3/tv/48891/season/6?language=de&api_key=API_KEY}

Response{protocol=http/1.1, code=200, message=, url=https://api.themoviedb.org/3/tv/48891/season/6?language=de&api_key=API_KEY}
content-type: application/json;charset=utf-8
date: Fri, 16 Jul 2021 11:12:09 GMT
server: openresty
access-control-allow-origin: *
access-control-allow-methods: GET, HEAD, POST, PUT, DELETE, OPTIONS
access-control-expose-headers: ETag, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After, Content-Length, Content-Range
cache-control: public, max-age=28800
x-memc: HIT
x-memc-key: b04e30571b7e80cb82b972ba31a370c0d4c9b826
x-memc-age: 5360
x-memc-expires: 9308
etag: W/"6fd128be5675fc1be6b727b53c02c78b"
vary: Accept-Encoding
x-cache: Hit from cloudfront
via: 1.1 560d8d35213ac925f8d05c5730db1582.cloudfront.net (CloudFront)
x-amz-cf-pop: FRA6-C1
x-amz-cf-id: f_Y7vPY1URbrHAIuknku3-sniLAjxj3yEHYHp9BrTyGGwq925oF-cw==
age: 13633

Running the same request from my dev machine I get the "correct" response with German data, but looking at headers from a different cache server. See https://github.com/UweTrottmann/SeriesGuide/issues/807#issuecomment-881521036 (forum would not let me post such a long message here).

Ya, so it looks like the same cache key is being used for 2 separate requests, which is obviously wrong and shouldn't be happening.

Can you let me know the full request headers you're sending? I want to see the whole request in detail.

Example request headers:

Host: api.themoviedb.org
Connection: Keep-Alive
Accept-Encoding: gzip
User-Agent: okhttp/4.9.1
If-None-Match: W/"6fd128be5675fc1be6b727b53c02c78b"

I'm assuming If-None-Match is sent because the HTTP client cache contained the previous response (edit: actually matches etag from above request).

This still keeps happening. Is there anything else I can share or do to move this along?

@travisbell : Any news about this problem? This is happening (and annoying) every day for me.

@travisbell said:

Ya, so it looks like the same cache key is being used for 2 separate requests, which is obviously wrong and shouldn't be happening.

Hi @travisbell , you confirmed this as a bug. Any news about fixing it? Thanks a lot! This problem occurs every day. :-(

Hi @KeksBln, I saw what I believe to be the issue in the data but no matter what combination of ways I try and re-create the problem in dev so that I can fix the issue, I have been unable to do so.

@travisbell said:

Hi @KeksBln, I saw what I believe to be the issue in the data but no matter what combination of ways I try and re-create the problem in dev so that I can fix the issue, I have been unable to do so.

I tried just two requests and could reproduce it (via latest Chrome on Android 12 and Firefox on Windows 10): https://api.themoviedb.org/3/tv/58841/season/7?language=de&api_key=...

returns the english data instead of the german data.

Request (FF, Win10):

GET /3/tv/58841/season/7?language=de&api_key=***************************** HTTP/2
Host: api.themoviedb.org
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: de-DE,de;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate, br
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: cross-site
Pragma: no-cache
Cache-Control: no-cache
TE: trailers

Response:

HTTP/2 200 OK
content-type: application/json;charset=utf-8
date: Sat, 11 Jun 2022 20:16:10 GMT
server: openresty
access-control-allow-origin: *
access-control-allow-methods: GET, HEAD, POST, PUT, DELETE, OPTIONS
access-control-expose-headers: ETag, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After, Content-Length, Content-Range
cache-control: public, max-age=28800
x-memc: HIT
x-memc-key: 106a542d9297e69a6ce005b5d26eecd52e84eb54
x-memc-age: 16705
x-memc-expires: 720
etag: W/"28e6e374d7244ccf1606a29b607957ce"
content-encoding: gzip
vary: Accept-Encoding
x-cache: Hit from cloudfront
via: 1.1 68b2682a924ac399aa2724b5b439e75c.cloudfront.net (CloudFront)
x-amz-cf-pop: FRA60-P3
x-amz-cf-id: 55alhQc1BiEwFqOugEXi26eNkaHIIHIKI_rQxJymcRH8g3vNjISwnQ==
age: 262
X-Firefox-Spdy: h2

When requesting "language=en", then the "x-memc..." values are different, but the etag is identical:

HTTP/2 200 OK
content-type: application/json;charset=utf-8
date: Sat, 11 Jun 2022 20:29:30 GMT
server: openresty
access-control-allow-origin: *
access-control-allow-methods: GET, HEAD, POST, PUT, DELETE, OPTIONS
access-control-expose-headers: ETag, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After, Content-Length, Content-Range
cache-control: public, max-age=28800
x-memc: HIT
x-memc-key: dcd0b0f77d99d4fc4a4babfd6968719cdd0b33cc
x-memc-age: 2549
x-memc-expires: 15104
etag: W/"28e6e374d7244ccf1606a29b607957ce"
content-encoding: gzip
vary: Accept-Encoding
x-cache: Miss from cloudfront
via: 1.1 e670d901736ac01599c0ed6fbe3a3c58.cloudfront.net (CloudFront)
x-amz-cf-pop: TXL52-C1
x-amz-cf-id: AWSZvzw81XjZFNIOS6TsncTbFHnEYCAthSh0itmdKvaHKPDDaNo-cA==
X-Firefox-Spdy: h2

When requesting "language=de-DE", then the correct german data is returned (at the moment). Response header (with different etag):

HTTP/2 200 OK
date: Sat, 11 Jun 2022 20:33:45 GMT
content-type: application/json; charset=utf-8
vary: Accept-Encoding
server: BunnyCDN-DE1-832
cdn-pullzone: 775334
cdn-uid: 29af4e0e-bcbd-4fcb-8635-74ddc38a1ebf
cdn-requestcountrycode: DE
access-control-allow-methods: GET, HEAD, POST, PUT, DELETE, OPTIONS
access-control-allow-origin: *
access-control-expose-headers: ETag, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After, Content-Length, Content-Range
cache-control: public, max-age=28800
etag: W/"7532b68ad9e253722dc804043908e98a"
x-memc: HIT
x-memc-key: d423ddf7cfd8edc9d313f9187ac4cdce9f69ed3b
x-memc-age: 14689
x-memc-expires: 2738
cdn-proxyver: 1.02
cdn-requestpullsuccess: True
cdn-requestpullcode: 200
cdn-cachedat: 06/11/2022 20:33:45
cdn-edgestorageid: 832
cdn-status: 200
cdn-requestid: 1d43a39450c88e33de85170d77883498
cdn-cache: MISS
content-encoding: br
X-Firefox-Spdy: h2

Oh, now "language=de" returns the german data again. Response Header:

HTTP/2 304 Not Modified
date: Sat, 11 Jun 2022 20:49:49 GMT
server: BunnyCDN-DE1-832
cdn-pullzone: 775334
cdn-uid: 29af4e0e-bcbd-4fcb-8635-74ddc38a1ebf
cdn-requestcountrycode: DE
access-control-allow-methods: GET, HEAD, POST, PUT, DELETE, OPTIONS
access-control-allow-origin: *
access-control-expose-headers: ETag, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After, Content-Length, Content-Range
cache-control: public, max-age=28800
etag: W/"7532b68ad9e253722dc804043908e98a"
x-memc: HIT
x-memc-key: 106a542d9297e69a6ce005b5d26eecd52e84eb54
x-memc-age: 735
x-memc-expires: 15956
cdn-proxyver: 1.02
cdn-requestpullsuccess: True
cdn-requestpullcode: 200
cdn-cachedat: 06/11/2022 20:49:16
cdn-edgestorageid: 832
cdn-status: 304
cdn-requestid: c318f4303ea86ced378efb985ce39067
cdn-cache: HIT
X-Firefox-Spdy: h2

... in my FF on Win10. But in my Chrome on Android the URL still returns the english data (even when I hit Ctrl+Shift+R)!

EDIT: Oh, it's again the english data in my FF on Win10. Weird ...

I can not reproduce it (until now) with "language=fr" or "language=de-DE" (or "de-de").

@travisbell : Since my last comment I could not reproduce it for this URL / for this series and season.

Now the problem is here: series "S.W.A.T.", seasons 1, 2, 4, and 5:
https://api.themoviedb.org/3/tv/71790/season/1?language=de&api_key=...
https://api.themoviedb.org/3/tv/71790/season/2?language=de&api_key=...
https://api.themoviedb.org/3/tv/71790/season/4?language=de&api_key=...
https://api.themoviedb.org/3/tv/71790/season/5?language=de&api_key=...

But season 3 is correct in german:
https://api.themoviedb.org/3/tv/71790/season/3?language=de&api_key=...

When I use "language=de-de", then always the correct german data is returned.

@aeonmckay : Could you use "de-de" instead of "de" in the app as a workaround?

@travisbell : "S.W.A.T." works again, now here is the problem ("Desperate Housewives"): https://api.themoviedb.org/3/tv/693/season/3?language=de&api_key=...

Again, "language=de-de" is correct.

@KeksBln said:
@travisbell : "S.W.A.T." works again, now here is the problem ("Desperate Housewives"):
https://api.themoviedb.org/3/tv/693/season/3?language=de&api_key=...
Again, "language=de-de" is correct.

There are 3 variations for "de" language:
12 "de-AT"
13 "de-CH"
14 "de-DE"
See here https://developers.themoviedb.org/3/configuration/get-primary-translations

The default language "de" is "de-DE".

Film of tv-serie niet gevonden? Log dan in om deze te creëren.

Wereldwijd

s focus op zoekbalk
p open profielmenu
esc sluit een open venster
? open sneltoetsen venster

Op media pagina's

b ga terug (of ga naar bovenliggend item)
e ga naar beweken

Op TV seizoenspagina's

(rechter pijl) ga naar volgende seizoen
(linker pijl) ga naar vorig seizoen

Op pagina's met TV-programma's

(rechter pijl) ga naar volgende aflevering
(linker pijl) ga naar vorige aflevering

Op alle afbeeldingspagina's

a open venster afbeelding toevoegen

Op alle bewerkte pagina's

t open vertaalmenu
ctrl+ s verstuur formulier

Op discussiepagina's

n start nieuwe discussie
w Verander kijk status
p privé of openbaar
c gesloten of open
a open activiteit
r beantwoord discussie
l ga naar laatste antwoord
ctrl+ enter verstuur uw bericht
(rechter pijl) volgende pagina
(linker pijl) vorige pagina

Instellingen

Want to rate or add this item to a list?

Inloggen