La nostra applicazione serve un endpoint che riporta semplicemente os.environ ['CURRENT_VERSION_ID']. Lo usiamo per un tipo di monitoraggio che tiene traccia di quale versione è attualmente impostata come "versione predefinita".Versione app engine fornita da "default" sembra essere incoerente e thrash per un periodo dopo aver cambiato la versione predefinita
A partire dal pomeriggio del 5 marzo, abbiamo notato un comportamento strano quando si effettuavano richieste a questo endpoint. Poco dopo aver modificato la versione predefinita (tramite "appcfg.py set_default_version"), le richieste ripetute a questo endpoint si sarebbero invertite rispetto al valore predefinito precedente e al nuovo valore predefinito. Questo persiste per un periodo di circa 10 minuti, dopodiché tutte le richieste successive segnaleranno sempre la nuova versione predefinita corretta. Quindi sembra che durante questa finestra di 10 minuti, le richieste al nostro normale URL di default segnaleranno in modo incoerente la vecchia versione o quella nuova.
Questo sembra essere un cambiamento nel comportamento. La precedente modifica della versione predefinita per la nostra applicazione è avvenuta il 1 ° marzo e ogni altra modifica di versione precedente a tale data non mostrava questo comportamento di ribaltamento.
(Domanda rubato my teammate s' bug report)
Grazie per le informazioni, Fred.Il comportamento che descrivi è quello che mi aspetterei da un sistema di grandi dimensioni come GAE. Quello che mi imbarazza è il motivo per cui non abbiamo mai visto questo comportamento prima del 5 marzo. Prima di tale distribuzione, tutte le modifiche al default sembravano avvenire "atomicamente" per noi, quindi sembra che qualcosa sia cambiato. Non sono sicuro che tu possa confermarlo o meno, ma è bene avere conferma che questo è almeno il comportamento previsto in corso –
Qualche possibilità che stavi colpendo un "back-end" di App Engine in opposizione a un'istanza di frontend? Hai usato la divisione del traffico in qualsiasi punto del passato? Esistono diverse variabili che potrebbero influire sulla versione che desideri visualizzare dalla richiesta alla richiesta. Tuttavia, il comportamento che stai descrivendo è previsto e sicuramente qualcosa che ho visto prima. Dovrei anche notare che continuiamo a migliorare e apportare modifiche allo scheduler di App Engine, quindi un cambiamento nel comportamento osservato quando si verifica in un modo particolare non è del tutto inaspettato, anche se non riesco facilmente a spiegare perché non l'hai visto prima. –
@FredSauer: No, abbiamo sicuramente suonato i frontend per tutto questo tempo. Ad un certo punto siamo riusciti ad attivare accidentalmente la divisione del traffico, ma non credo che l'abbiamo mai configurato per fare altro che passare il 100% del traffico a una singola versione; l'abbiamo spento perché averlo su sembra disabilitare la cache del frontend. Per quanto ne sappiamo, non abbiamo cambiato nulla che avrebbe causato questo comportamento. –