Pan.do/ra - po přidání bodu do mapy google mapa havaruje #128

Closed
opened 2017-10-25 01:12:27 +02:00 by Podhorecky · 10 comments
Podhorecky commented 2017-10-25 01:12:27 +02:00 (Migrated from git.spotter.cz)

Pokusil jsem se napsat k videu pod mapku keyword "Basel" a pak jsem z menu zvolil funkci "Define Place"

pak jsemn v tom velkém okně mapy světa našel a upravil místo Basel ve Švýcarsku na město Basel.

Všechno se zdálo OK, vrátil jsem se do editoru videa, ale to okénko s mapkou se neobnovilo s nově zadaným bodem.

fajn, tak jsem refreshnul celou stránku.

Po znovu natažení strany se už v okénku google mapka neukázala, je tam chybová hláška s informací že nějaký javascript je uozbitý.

tak jsem vlezl do error logu, bylo tam toto

Uncaught TypeError: Cannot read property 'getSouthWest' of undefined

TypeError: Cannot read property 'getSouthWest' of undefined
at Bg.mapChanged (https://media.spotter.cloud/static/oxjs/min/UI/js/UI.js?0.1.-93:54:95)
at trigger (https://maps.google.com/maps/api/js?callback=googleCallback&sensor=false&_=1508885384043:122:499)
at https://maps.google.com/maps-api-v3/api/js/30/10/common.js:8:135
at _.Po.H (https://maps.google.com/maps-api-v3/api/js/30/10/common.js:197:2303)

Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36

P.S.. ano, chápu celé je to poněkud dementní a neintuitivní způsob jak vložit do mapy bod.

Ale možná že teprv po více vložených bodech objevím skrytou myšlenku, která porodila tento postup.

Teď jen umět rozlišit tu hranici zda to je lehce opravitelné, nebo je to úloha na probdělé noci...
Pokud by byl autor ochoten, raději to přenechte na něj.

Pokusil jsem se napsat k videu pod mapku keyword "Basel" a pak jsem z menu zvolil funkci "Define Place" pak jsemn v tom velkém okně mapy světa našel a upravil místo Basel ve Švýcarsku na město Basel. Všechno se zdálo OK, vrátil jsem se do editoru videa, ale to okénko s mapkou se neobnovilo s nově zadaným bodem. fajn, tak jsem refreshnul celou stránku. Po znovu natažení strany se už v okénku google mapka neukázala, je tam chybová hláška s informací že nějaký javascript je uozbitý. tak jsem vlezl do error logu, bylo tam toto Uncaught TypeError: Cannot read property 'getSouthWest' of undefined TypeError: Cannot read property 'getSouthWest' of undefined at Bg.mapChanged (https://media.spotter.cloud/static/oxjs/min/UI/js/UI.js?0.1.-93:54:95) at trigger (https://maps.google.com/maps/api/js?callback=googleCallback&sensor=false&_=1508885384043:122:499) at https://maps.google.com/maps-api-v3/api/js/30/10/common.js:8:135 at _.Po.H (https://maps.google.com/maps-api-v3/api/js/30/10/common.js:197:2303) Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36 P.S.. ano, chápu celé je to poněkud dementní a neintuitivní způsob jak vložit do mapy bod. Ale možná že teprv po více vložených bodech objevím skrytou myšlenku, která porodila tento postup. Teď jen umět rozlišit tu hranici zda to je lehce opravitelné, nebo je to úloha na probdělé noci... Pokud by byl autor ochoten, raději to přenechte na něj.
Disassembler commented 2017-10-26 05:14:45 +02:00 (Migrated from git.spotter.cz)

Idea samotná mi zas až tak neintuitivní nepřijde. Jak říkal Jan v textu přeposlaném v issue #13, definuje se seznam míst, které jsou pak přiřazovány z jednotlivých vrstev. Dá se to udělat i tak, že nejprve místa definujete v Data > Manage Places a pak teprve přiřazujete.

Vámi reportovaný problém je nicméně způsoben tím, že mapka u videa neodesílá Google Maps API klíč, takže Google zpátky pošle akorát vztyčený prostředníček a Pandora s něčím takovým nepočítá, tak pro jistotu spadne celá.

Idea samotná mi zas až tak neintuitivní nepřijde. Jak říkal Jan v textu přeposlaném v issue #13, definuje se seznam míst, které jsou pak přiřazovány z jednotlivých vrstev. Dá se to udělat i tak, že nejprve místa definujete v *Data* > *Manage Places* a pak teprve přiřazujete. Vámi reportovaný problém je nicméně způsoben tím, že mapka u videa neodesílá Google Maps API klíč, takže Google zpátky pošle akorát vztyčený prostředníček a Pandora s něčím takovým nepočítá, tak pro jistotu spadne celá.
Disassembler commented 2017-10-26 05:14:51 +02:00 (Migrated from git.spotter.cz)

added ~14 label

added ~14 label
Disassembler commented 2017-10-26 18:36:41 +02:00 (Migrated from git.spotter.cz)

mimochodem, gerber už asi fixnul to Google API.
Přemýšlím jak mu projevit, že oceňuju jeho ochotu reagovat.
asi na to přijdu později, soudím, že ještě bude dost příležitostí.

Ještě nefixnul. Ty dva commity, co k tomu dneska vyrobil, jsem už aplikoval, ale API klíč se v náhledu stále nepředává. A po ranním vysvětlení, co po něm chci a jeho odpovědi Ah, ok, yes possible that the key does not get passed to the small widget yet, will have a look. jsem zatím žádnou další reakci nedostal. Asi to má rozbité víc, než čekal :)

> mimochodem, gerber už asi fixnul to Google API. Přemýšlím jak mu projevit, že oceňuju jeho ochotu reagovat. asi na to přijdu později, soudím, že ještě bude dost příležitostí. Ještě nefixnul. Ty dva commity, co k tomu dneska vyrobil, jsem už aplikoval, ale API klíč se v náhledu stále nepředává. A po ranním vysvětlení, co po něm chci a jeho odpovědi *Ah, ok, yes possible that the key does not get passed to the small widget yet, will have a look.* jsem zatím žádnou další reakci nedostal. Asi to má rozbité víc, než čekal :)
Podhorecky commented 2017-10-30 14:47:41 +01:00 (Migrated from git.spotter.cz)

Gerber ještě upravoval data v knihovně oxjs, pokud to stále není finále, tak asi počkáme...
https://git.0x2620.org/oxjs.git/commit/b11d6a81fefdc40ddcb938215010dcb01d87dc12

Gerber ještě upravoval data v knihovně oxjs, pokud to stále není finále, tak asi počkáme... https://git.0x2620.org/oxjs.git/commit/b11d6a81fefdc40ddcb938215010dcb01d87dc12
Disassembler commented 2017-10-30 19:24:06 +01:00 (Migrated from git.spotter.cz)

No jo. Je to tak. V tom případě opraveno v upstream commitech bf88243 a b11d6a8 a změna reflektována na obou našich instancích.

No jo. Je to tak. V tom případě opraveno v upstream commitech [bf88243](https://git.0x2620.org/pandora.git/commit/bf88243423c83762e6167b0959c68e912c9bbda3) a [b11d6a8](https://git.0x2620.org/oxjs.git/commit/b11d6a81fefdc40ddcb938215010dcb01d87dc12) a změna reflektována na obou našich instancích.
Disassembler commented 2017-10-30 19:24:06 +01:00 (Migrated from git.spotter.cz)

closed

closed
Podhorecky commented 2017-10-30 23:04:35 +01:00 (Migrated from git.spotter.cz)

ano, už to vypadá, že to dělá puntíky na mapě.
Ještě dotaz, který s tim nesouvisí.
Když uděláte opravu aplikace, tak ji pak restartnete.
Co se stane, když zrovna v task frontě čekají nějaká videa na kompresi? Předpokládám, že se probíhající komprese stopne, ale pak nevim, jestli tam ty čekající videa už zůstanou mrtvá na disku, nebo zda tam nějaký démon zase rozběhne kompresi?

Rád bych věděl zda tím nevzniká riziko zasekání disku materiálem, který bude zbytečně překážet a už nikdy se neobjeví v databázi.

ano, už to vypadá, že to dělá puntíky na mapě. Ještě dotaz, který s tim nesouvisí. Když uděláte opravu aplikace, tak ji pak restartnete. Co se stane, když zrovna v task frontě čekají nějaká videa na kompresi? Předpokládám, že se probíhající komprese stopne, ale pak nevim, jestli tam ty čekající videa už zůstanou mrtvá na disku, nebo zda tam nějaký démon zase rozběhne kompresi? Rád bych věděl zda tím nevzniká riziko zasekání disku materiálem, který bude zbytečně překážet a už nikdy se neobjeví v databázi.
Disassembler commented 2017-10-31 06:48:04 +01:00 (Migrated from git.spotter.cz)

Ne vždy je nutno aplikaci restartovat. V tomto případě třeba nebylo, protože šlo pouze o změnu statických souborů, které mají efekt na straně klienta. U jiných aplikací nemusí být třeba restart ani pokud dojde ke změně na straně serveru, protože s novým requestem se prostě nahraje nový kód. Restarty jsou potřeba akorát u high-performance aplikací s dlouho žijícími procesy, kde je kód kompilovaný a rekompilace se spouští manuálně nebo automaticky při restartu. Webové aplikace jsou naštěstí často hloupoučké, takže u nich je to potřeba málokdy.

Pandora je v tomhle poměrně komplexní. Sestává z několika démonů, které si mezi sebou povídají skrze messaging (RabbitMQ). Z toho, co jsem zatím vypozoroval vidím, že jeden z démonů se stará o řazení úloh do fronty a následně je informován o jejich dokončení. Předpokládám tedy, že pokud enkódování přerušíte, po restartu se znova spustí, protože úlohový démon ví, že ještě nebyla dokončena. Nicméně je to jen má domněnka, která vychází z pozorování a z best practices. V praxi jsem to neověřoval, takže vyzkouším.

Ne vždy je nutno aplikaci restartovat. V tomto případě třeba nebylo, protože šlo pouze o změnu statických souborů, které mají efekt na straně klienta. U jiných aplikací nemusí být třeba restart ani pokud dojde ke změně na straně serveru, protože s novým requestem se prostě nahraje nový kód. Restarty jsou potřeba akorát u high-performance aplikací s dlouho žijícími procesy, kde je kód kompilovaný a rekompilace se spouští manuálně nebo automaticky při restartu. Webové aplikace jsou naštěstí často hloupoučké, takže u nich je to potřeba málokdy. Pandora je v tomhle poměrně komplexní. Sestává z několika démonů, které si mezi sebou povídají skrze messaging (RabbitMQ). Z toho, co jsem zatím vypozoroval vidím, že jeden z démonů se stará o řazení úloh do fronty a následně je informován o jejich dokončení. Předpokládám tedy, že pokud enkódování přerušíte, po restartu se znova spustí, protože úlohový démon ví, že ještě nebyla dokončena. Nicméně je to jen má domněnka, která vychází z pozorování a z best practices. V praxi jsem to neověřoval, takže vyzkouším.
Podhorecky commented 2017-10-31 10:29:54 +01:00 (Migrated from git.spotter.cz)

Super, díky...
tohle je dobré vědět, kdyby náhodou začalo ubývat příliš moc místa na disku.

Super, díky... tohle je dobré vědět, kdyby náhodou začalo ubývat příliš moc místa na disku.
Podhorecky commented 2018-04-01 00:24:03 +02:00 (Migrated from git.spotter.cz)

changed milestone to %1

changed milestone to %1
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Disassembler/Spotter-VM#128
No description provided.