Azure SDK 1.7 -> 1.8 или как потерять 1000р за один апдейт

Еще в октябре прошлого года одновременно с MSVS2012 появилась версия Azure SDK 1.8 и казалось, что это чисто формальное обновление связанное с переходом на новую Visual Studio. Конечно есть и улучшения, такие как поиск по имени ошибки во многочисленных логах IntelliTrace (как можно было не догадаться сделать это с самомго начала?). Возможно рано или поздно у нас также появится средства для нормальной работы с blobstorage из самой студии. Однако, подозрения, что с 1.8 что-то не так начали появляться сразу, о чем был поднять вопрос в сообществе по рекламе Azure в России.

По опыту выяснилось,что
1) В результате автоматического обновления ссылки на библиотеки 1.8 ставятся CopyLocal = False, даже если до этого у вас стояло копирования этой библиотеки.
2) Уничтожен класс CloudConfigurationManager, отвечавший за получение настроек роли. Вместо него можно использовать RoleEnvironment.GetConfigurationSettingValue("Diagnostics.ConnectionString"); С той лишь разницей, что последняя может падать, если RoleEnvironment.IsAvailiable = false.Например, если обратиться до завершения WebRole.OnStart
3) И самое страшное проиллюстрирую следующим кодом. Заключается в различной обработке Таблицами параметров содержащих символов попадающих под UrlEncode.
Copy Source | Copy HTML
  1. string pageuri = pageElement.Attribute("uri").Value.ToLower().Replace("/default.aspx", "/");
  2. string pageuri_encoded = HttpUtility.UrlEncode(pageuri);
  3. SapePageAzure result = (from e in CreateQuery()
  4.                         where e.RowKey == pageuri_encoded &&
  5.                         e.PartitionKey == partitionid select e).FirstOrDefault();
  6. if (result == null)
  7. {
  8.     result = new SapePageAzure
  9.     {
  10.         RowKey = pageuri,
  11.         PartitionKey = partitionid,
  12.         LastAccess = DateTime.Now
  13.     };
  14.     ContainerTable.AddObject(TableName, result);
  15.     //ContainerTable.SaveChangesWithRetries();
  16. }

Если в Azure SDK1.7 нужно было использовать в обоих местах pageuri_encoded, и в выворе и во вставке. То в Azure SDK1.8 добавилась скрытая перекодировка, и получилось, что при выборе параметров из таблицы нужно использовать pageuri_encoded, а при вставке pageuri, так как теперь кодируется автоматически.
Как результат - все блоги из blogscloud.ru, которые синхронизированы с Sape и хранят набор ссылок в виде URL в таблицах, перестали корректно работать. Sape обнаруживает, что все ссылки на сайтах не отображаются и блокирует все сайты отправляя их на повторную можерацию. End of story.


PS: По случаю отзыв про tfspreview.com - возможность бесплатного использования TFS2012 для одиноких разработчиков. В общем ни в коем случае не расчитывайте на нее. Очень сильно тормозит и не дает чекинить большое количество документов. Появилось сие творение видимо потому, что все нормальные платные TFS провайдеры, такие как discountasp.net не смогли или не захотели вовремя предоставить TFS2012 для коммерческих пользователей.

Метки:   Категории:Analytics | Csharp | microsoft | Code


blog comments powered by Disqus

Добавить комментарий

Кто я?

Программист. Я слежу за блогосферой и знаю, как будет развиваться интернет. Когда у меня есть время я даже прилагаю для этого усилия. Подробнее

Последние комментарии

Не отображать

Topbot at FeedsBurner

Облако тэгов

Мои Твиты

Twitter апреля 23, 18:27
⚫️Тематика черного цвета для России http://dlvr.it/QQWQ8B https://twitter.com/f1ashr/status/988484514685960195/photo/1

Twitter апреля 23, 10:44
Голосовой набор тэгов http://dlvr.it/QQSx71

Twitter апреля 19, 09:13
Польша сняла мини-фантастику про 2-й час http://dlvr.it/QQ36lD https://twitter.com/f1ashr/status/986895676582674432/photo/1

Twitter апреля 15, 09:31
Больше Ада на первом канале http://dlvr.it/QPb8Sf https://twitter.com/f1ashr/status/985450416811884545/photo/1

Twitter апреля 15, 08:59
Суперлайки в Перископе http://dlvr.it/QPb3HN

Twitter апреля 14, 08:51
Что американские военные забыли у берегов КНДР? http://dlvr.it/QPVZ8F https://twitter.com/f1ashr/status/985078070875832320/photo/1

Twitter апреля 13, 19:41
Текущая ситуация с инстаграммом http://dlvr.it/QPS7sy

Twitter апреля 13, 15:50
Русский youtube и твиты за день http://dlvr.it/QPR1dl https://twitter.com/f1ashr/status/984821028940427264/photo/1

Twitter апреля 13, 15:50
Как потратить валютные резервы России - Мыслить №50 http://dlvr.it/QPR1Xz

Twitter апреля 13, 14:12
Японское аниме в российских кинотеатрах http://dlvr.it/QPQSG3 https://twitter.com/f1ashr/status/984796468316815360/photo/1

Twitter апреля 13, 13:08
Полное затмение суперлуны 27 сентября (впервые с 1982 года) http://dlvr.it/QPQ5q6 https://twitter.com/f1ashr/status/984780360230649857/photo/1

Twitter апреля 13, 12:03
Реклама Андромеды http://dlvr.it/QPPkwn https://twitter.com/f1ashr/status/984764125942243328/photo/1

Twitter апреля 13, 11:31
Теневой бизнес ГИБДД http://dlvr.it/QPPZnf https://twitter.com/f1ashr/status/984755956763340800/photo/1

Twitter апреля 13, 10:27
В Ступино напечатали первый 3D дом http://dlvr.it/QPPG1p

Twitter апреля 13, 10:27
Google Glasses fail http://dlvr.it/QPPFz6 https://twitter.com/f1ashr/status/984739734407671808/photo/1

Twitter апреля 13, 08:49
Пришел ответ от Youtube по поводу видео http://dlvr.it/QPNpH6

Twitter апреля 12, 19:39
Автоматическое информирование о выходе новых сезонов http://dlvr.it/QPL4pB

Twitter апреля 11, 07:28
Разбор сериала "Молодой папа" (теория общего знания, часть 22) http://dlvr.it/QP7wlv https://twitter.com/f1ashr/status/983970149765038085/photo/1

Twitter апреля 11, 01:33
В бюджете Америки появились лишние 2 трлн. долларов http://dlvr.it/QP6nN4

Twitter апреля 11, 01:33
Про школьников и Навального http://dlvr.it/QP6nMt

Мой твиттер

Копирайт

Все мысли, высказанные в блоге, являются моим мнением и за это мнение меня никто не забанит! Кроме того, никто не имеет право копировать материалы блога без использования ctrl+C/V!

© Copyright 2008