Tag Archives: 1093

ЕС: Програма за култура 2018

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/23/agenda_culture/

Комисията представя  нова програма за култура.

Оказва се, че за младите европейци културните индустрии са значим вход към пазара на труда – и по-специално в България, Латвия, Румъния, Кипър,  Португалия, Естония
и Испания  по-висок дял  са заети в културата, отколкото в икономиката като цяло. Това е споменаването на България в програмата, иначе се говори за синергии, холистичен подход, трансформативен характер на културата и за Западните Балкани.

Digital  и производни  на думата се срещат 25 пъти в текста, но културно наследство – 35 пъти, има и културен туризъм, кино,  справедливи авторски възнаграждения,   не са стигнали обаче до най-българския специалитет  – да приоритизират комбинация {креативни + рекреативни} индустрии и голф.

 

 

Достъп до документи – триалози – още една стъпка напред

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/22/access_ep/

Документите за триалозите често се оказват в ръцете на  привилегировани лобисти само минути, след като се произвеждат. Даването на гражданите на един и същ достъп до тези документи не е просто въпрос на справедливост, необходимо е да се позволи обществен контрол върху целия законодателен процес. Парламентът многократно призовава за проактивно публикуване на документите за триалозите  на уебсайтовете на институциите.

Коментарът на Юлия Реда за новината, че Комисията по правни въпроси (JURI)  препоръча на Европейския парламент да не обжалва решението на Общия съд по делото De Capitani v. European Parliament , с което се дава достъп до документите от триалозите (вж за решението).

 

Швеция: „Ако настъпи криза или война“

Post Syndicated from Григор original http://www.gatchev.info/blog/?p=2141

Ако има три неща, които да не могат да се кажат за шведите, те са: че са неорганизирани, че не се грижат за хората си, и най-вече че са глупави. Швеция е пословична с доста неща, и всяко от тях е несъвместимо с тези трите.

Затова се постреснах мъничко, когато до (почти) всяко домакинство в Швеция беше доставена една специална брошура, озаглавена „Ако настъпи криза или война“. През 1947 г. Швеция наистина беше изготвила подобна брошура, и мине се не мине десетилетие през Студената война, я доставяше на домакинствата си. За последен път това се случи през 1990 г. Почти трийсет години беше история. Но сега я доставиха пак – в осъвременен вариант.

Често си мисля, че съм мъничко параноик. (И мъничко оптимист – понякога предвиждам вероятност за лоши неща, понякога за добри…) Но се боя, че моята оценка за мира в света в средносрочно бъдеще също клони към песимистична. Вероятността да се стигне до война в Европа засега ми се струва малка – да кажем, 10%. Но като се има предвид какви ще са последствията, това не е за пренебрегване… Накратко казано – личната ми преценка е да си живея живота щастливо и без страх от война, и да планирам мирни старини, но за всеки случай да имам в някое ъгълче на мозъка си план за действия при подобно развитие.

А има и друго. Държавите имат много начини да се сдобиват с информация за ситуацията в света. Много от тези начини не са от най-чистите и обществено приемливи, и по тази причина (а и по много други) придобитата информация не се огласява. Ако обаче е обезпокоителна в някое отношение, разумните и загрижени за бъдещето си държави вземат мерки според нея. Понякога дори ако тези мерки не харесват особено на електората им.

Как мислите, Швеция разумна и загрижена за бъдещето и хората си държава ли е? Ако да, за каква не-публична нейна информация ви говорят тези мерки? Да, една брошура не е много. Но струва пари, които могат да бъдат дадени за удоволствия за електората, съответно по-добър имидж за управниците. А гледам, че и военният бюджет на Швеция за тази година е подскочил забележимо, след десетилетия без увеличение…

Възможно ли е шведското правителство също да са мъничко параноици? Естествено. Само че правителствата страдат от параноя доста по-рядко от отделните хора. Особено когато тази параноя ги кара да правят неща, които се разминават пряко с изгодата им… Затова съм склонен да приема, че не-публичната (но обоснована на разни информации) оценка на Швеция за ситуацията не е много далече от моята.

Прегледах листовката (ето тук има неин вариант на английски, като PDF). Доколкото мога да го преценя, информацията в нея е типично по шведски простичка, добре премислена и надеждна при употреба. Ако недай боже се случи война (или дори само терористичен акт – листовката разглежда и това), тази информация би била от отлична полза на шведите.

Част от нея, примерно сигналите на сирените, вероятно са различни за България. (За срам не знам българските.) Но много от нещата биха били от отлична полза и за българи. Естествено, у нас само кръгъл идиот ще разчита на правителството или общината да се погрижат за него с шведска добросъвестност. Или да организират съпротива срещу агресор, вместо да ни продадат на него срещу жълти стотинки, мисля си… Но много от съветите в брошурата касаят какви индивидуални действия следва да предприеме човек, за да подобри шансовете си за оцеляване.

За незнаещите английски си позволявам да преведа набързо някои от най-важните изречения и абзаци. (Тук-там с мои коментари.)

—-

Извънредните ситуации могат да попречат на обществото да функционира както сме свикнали. Промените в климата могат да направят наводненията и пожарите по-чести. Катастрофи в други части на света могат да доведат до недостиг на някои храни. Проблеми във важни ИТ системи могат да попречат на електроснабдяването. Много бързо ежедневният ви живот може да се сблъска с проблеми:

– Отоплението спира да работи
– Съхраняването на храни и готвенето може да стане трудно
– Храни и други стоки могат да изчезнат от магазините
– Водоснабдяването може да спре
– Може да няма гориво за колата ви
– Банковите карти и банкоматите може да спрат да работят
– Мобилните телефони и Интернет може да спрат да работят
– Общественият транспорт (а и други видове транспорт) може да спре
– Лекарствата и медицинските услуги може да станат трудно достъпни

Помислете как вие и хората около вас ще можете да се справяте в ситуация, в която нормалните услуги на обществото не работят както обикновено.

Не само „вие“, а „и хората около вас“. Полезно уточнение, от което доста българи имат нужда… а някои са неспособни да схванат изобщо.

В случай на обществени затруднения, помощ ще бъде предоставена (от държавата и общините – Григор) първо на най-нуждаещите се. Мнозинството се очаква да могат да се справят сами, поне отначало. Колкото по-добре сте подготвени, толкова повече ще можете да помогнете на тези, които по една или друга причина не са подготвени.

Най-важно е да имате вода, храна и топлина, и да можете да получавате информация от властите и да поддържате връзка с близките си.

Помислете за рисковете, които засягат конкретно вас и мястото, където живеете и работите. Податливо ли е то на наводнения или свлачища? Има ли наоколо някакво опасно производство или друго, което е добре да знаете?

Така ми се иска да бяхме такова общество. А си зависи само от нас – дори не от всички заедно, а от всеки поотделно… дано схващате намека.

Внимавайте за лъжлива информация

Държави и организации и в момента използват подвеждаща информация, за да се опитат да влияят върху нашите ценности и действия. Целта им може да бъде да подкопаят нашата решителност и желание да защитаваме себе си.

Най-добрата защита срещу лъжлива информация и враждебна пропаганда е критичната оценка на източника:

– Това факти ли са, или мнения?
– Каква е целта на тази информация?
– Кой я изнася?
– Източникът заслужава ли доверие?
– Достъпна ли е тази информация и другаде? Къде?
– Нова ли е или стара тази информация? Защо бива изнасяна точно в този момент?

Търсете и преценявайте сами информацията. Най-добрият начин да противодействате на пропагандата и лъжливата информация е да сте си написали домашното.

Не вярвайте на слухове – използвайте повече от един надежден източник, за да прецените дали дадена информация е вярна.

Не разпространявайте слухове – ако дадена информация не е достоверна, не я предавайте по-нататък.

Не че няма и още много начини за различаване на лъжите от истината – но и това само да прави човек, вече няма да е малко. А напоследък е пълно с лъжи, старателно инженерирани с цел разлагане на „вероятния противник“, да припомня един стандартен израз от едно минало, което всички толкова искаме да е минало завинаги…

Терористичните атаки могат да бъдат насочени срещу отделни хора или групи, срещу масовия гражданин или срещу важни обществени функции като например електроснабдяването или транспортната система. Има много различни начини за извършване на терористична атака, но някои съвети са приложими в почти всички ситуации:

– Отидете на безопасно място и избягвайте големите групи хора.
– Обадете се на полицията и ги информирайте, ако виждате нещо важно.
– Предупредете тези в опасност и помогнете тези, които имат нужда от помощ.
– Изключете звука на мобилния си телефон и не се обаждайте на никой, който може да е в застрашената зона. Позвъняването на телефона може да издаде някой, който се крие.
– Не се обаждайте по мобилен телефон, освен при абсолютна необходимост. Ако мрежата бъде претоварена, особено важни позвънявания може да се окажат невъзможни.
– Изпълнявайте исканията на полицията, пожарната, спасителните екипи и властите.
– Не разпространявайте непотвърдена информация онлайн или по други начини.

Дори аз не се бях замислял, че в подобна ситуация е добре да не звъниш на хора, които може да са в опасност – и изобщо, за да не задръстваш мрежата.

Домашна готовност

Храна:

Важно е да имате в къщи запас от храна, която дава достатъчно калории. Използвайте трайни храни, които се приготвят бързо и не изискват много вода, или могат да се ядат пряко:

– картофи, зеле, моркови, яйца
– траен хляб – тортили, черен хляб, крекери…
– бадемово, соено или сухо мляко
– олио и кашкавал
– спагети, ориз, зърнени храни, сухо картофено пюре
– консерви – боб, леща, зеленчуци, месо, риба, супи…
– доматено пюре, в което могат да се сварят спагетите
– плодови пюрета, сладка и мармалади в буркани
– плодови сокове или други напитки, които могат да се съхраняват при стайна температура
– кафе, чай, шоколад, мед, бадеми, ядки, орехи, енергийни блокчета

Вода:

Питейната вода е жизнено важна. Предвидете поне по три литра на човек на ден. Ако качеството ѝ е съмнително, трябва да намерите как да я преварите.

Ако няма вода за тоалетната, поставете здрав пластмасов чувал в тоалетната чиния. Добрата хигиена на ръцете е важна за избягване на инфекции.

– бутилки
– кофи с капаци
– пластмасови бутилки за замразяване на вода в тях (не ги пълнете догоре, ще се пръснат)
– минерална вода
– туби, в идеалния случай с кранче, в които да събирате вода. Някои можете да напълните с питейна вода за резерв. Тях ги дръжте на хладно и тъмно място.

Топлина:

Ако токът и парното спрат в студено време, домът ви бързо ще изстине. Съберете се в една стая, закачете одеала на прозорците, покрийте пода с килими, направете под маса леговище, което лесно се пази топло. Мислете за риска от пожар. Гасете свещите и печките преди да заспите. Проветрявайте редовно стаята, за да влезе кислород.

– вълнени дрехи
– топли дрехи за излизане навън в студено време
– шапки, ръкавици, шалове
– одеала
– дюшеци
– спални чували
– свещи
– кибрит или запалки
– горивно отопление – газови бутилки с котлон или горелка, парафинови отоплители…

Комуникации:

При сериозен инцидент трябва да имате как да получавате информация от властите. да следите медиите, да поддържате връзка с роднини и приятели, и да потърсите спешна помощ при нужда.

– радио на батерии, слънчеви батерии или ръчно динамо
– автомобилно радио
– списък важни телефонни номера (на хартия)
– допълнителни батерии или пауърбанк за мобилни телефони и подобни
– зареждащо устройство за мобилни телефони, което може да се зарежда в кола

Други:

– спиртен (сух спирт) котлон и гориво за него
– фенерче, евентуално за глава
– батерии
– пари в дребни банкноти
– запас от често употребявани лекарства
– мокри кърпички
– дезинфектант за ръце
– тоалетна хартия и средства за менструална хигиена
– хартиени копия на важни документи, вкл. застраховки, банкова информация, регистрации
– гориво за колата

Списъкът е колкото може да се хване на една страница в брошура. Но който се е сетил сам за всичко това, го поздравявам. Аз имах пропуски.

Трябва да сме способни да отразяваме атаки, насочени срещу страната ни. Дори сега се правят атаки срещу нашите ИТ системи и опити да ни повлияят чрез фалшива информация. Можем да бъдем засегнати и непряко от конфликти в нашия регион. Потенциалните атаки включват:

– Кибератаки, които да повредят важни ИТ системи
– Саботаж на инфраструктурата (напр. пътища, жп линии, мостове, летища, електропроводи, атомни електростанции)
– Терористични атаки, които засягат голям брой хора или важни организации
– Опити да бъдат контролирани овластени хора или жителите на Швеция
– Прекъсване на транспортни връзки, което води до недостиг на храни и други стоки
– Военни атаки – бомбардировки, ракетни атаки и други военни действия

Ако Швеция е атакувана от друга държава, ние никога няма да се предадем. Всяка информация, че съпротивата трябва да се прекрати, е лъжа.

В реални условия дори Швеция може да се наложи да се предаде – но им се възхищавам на духа. Лично аз бих се замислил сериозно, преди да ги нападна.

Намерете предварително какви укрития има близо до местата, където живеете и работите, за в случай че се наложи да ги използвате. При предупреждение за въздушна или друга военна атака, веднага отидете в укритие, или ако няма време за това, в импровизирано укритие като мазе, тунел или станция на метрото.

Дано не се стига до това – но ако ситуацията стане напечена, идеята човек да е предварително информиран е чудесна. Не че в България имаме укрития за други освен слугите на народа, но все пак.

Научете се да оказвате първа помощ. Вашите познания могат да спасят животи. Ако сте първите, които пристигат на мястото на сериозен инцидент, веднага се обадете на телефон 112. Можете да звъните на него дори ако сметката ви не е платена или даже нямате SIM карта в телефона.

Войните са рядкост, за щастие – но автомобилни катастрофи, пожари, падания и други инциденти се случват и в най-добрите времена. Подписвам се с две ръце под съвета за първата помощ. Че каквито „специалисти по първа помощ“ съм виждал – не ти трябва автомобилна катастрофа…

История за един контрапротестен автобус

Post Syndicated from Bozho original https://blog.bozho.net/blog/3103

В края на миналата година Министерски съвет прие промени в плана за управление на Пирин. Както писах тогава, е доста спорно дали промените са в съответствие със Закона за защитените територии. Със сигурност процедурата не беше в съответсвие със Закона за нормативните актове, т.е. изисквания за общественото обсъждане (напр. качване на съгласувателната таблица преди приемането) не са спазени (дали планът за управление е нормативен акт – в променената му част по-скоро да).

Административният съд ще реши кой прав, кой крив в този случай (макар практиката му да е доста спорна). Тук целта ми е да опиша свързан с този казус проблем. След като бяха провеждани протести срещу решението на Министерския съвет, по традиция беше организиран и контрапротест. С тонколони, с музика, с представители на изпълнителната власт, с автобуси. И именно за един от тези автобуси става дума.

Автобусът е училищен, а е возил протестиращи. Имаше разбираемо недоволство, поради което реших да питам Министерство на образованието защо училищен автобус се използва за такива цели.

Междувременно се появи репортаж на Нова, в който заместник кмета на Община Сапарева баня обяснява, че трябвало с друг автобус да се превозят протестиращите, ама той се счупил.

Защо общината, т.е. публичната власт, организира и извозва хора на протест в защита на решение на Министерски съвет (т.е. пак публичната власт) е въпрос, на който нямам отговор. Т.е. имам, но не знам той доколко е в съответствие със закона. Може и да е законно, но със сигурност буди съмнения.

Отговорът на МОН казва, че те автобусите са ги предоставили на общините безвъзмездно, срещу договор, в който пише, че могат да се използват само за превоз на ученици. Т.е. МОН може да потърси отговорност на общината за нарушаване на договора. Разбира се, МОН няма да го направи. Не би било добра идея пък да си вземе автобуса, защото основната му цел – превоз на ученици – няма да може да бъде изпълнена. Така че общо взето министърът е напомнил на кмета, че „така не бива“.

След отговора на МОН питах (пак по Закона за достъп до обществена информация) община Сапарева баня – на какво основание и с чия заповед е използван автобуса. Там след известно забавяне ми върнаха отговор, който постави цялата история в друга светлина.

Според отговора, заповедта е за транспорт на „ученици-спортисти“. Т.е. според тази заповед нарушение на договора няма – превозвани са били ученици. Това не непременно противоречи на думите на зам. кмета – той не казва дали протестиращите не са били ученици. Т.е. това, което имаме „черно на бяло“ е, че на протеста са превозвани ученици. Да използваш ученици за такива цели е меко казано нередно. Освен това, както се вижда от снимката по-горе, автобусът е в София по тъмно. И след това се прибира по тъмно. Което е в нарушение на наредба, която забранява превоза на ученици в тъмната част на денонощието. Така че подадох сигнал до Изпълнителна агенция „Автомобилна администрация“, която е компетентният орган.

След известно време питах ИААА как е завършила проверката, и техният отговор е: няма нарушение, тъй като не е извършван превоз на ученици. В моя сигнал бях прикачил заповедта на кмета, но явно проверката е установила, че заповедта не е била спазена?

Така или иначе, имаме „омотаване“ на институциите дори когато става дума за тривиален казус. Документи, заповеди и договори се пишат проформа, за „да има нещо“. Ама те всъщност не отразяват реалността. И всичко е наред, докато някой не пита, когато започва сричането и мазането. И най-важното – накрая санкционирани няма.

Няма друга поука, няма оптимистично заключение. Да, един автобус не е „най-големият проблем на държавата“. Но е симптоматичен.

Индексът на настигането: публикуван е докладът за 2017

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/16/catch_up_index/

Индексът на настигането на Институт “Отворено общество” – София измерва и сравнява развитието на тридесет и пет европейски страни по четири категории: “икономика”, “демокрация”, “качество на живот” и “управление”.

Според методологията на изследването, изходните данни по индикатори се стандартизират в точки по скала от 0 до 100 – от най-нисък до най-висок резултат. Страните също така се класират според резултатите си – от 1 (най-висока) до 35 (последна) позиция.

Според новоизлезлия доклад България е на 29-то място.

Самата категория “демокрация” се измерва с редица индикатори, сред които и такива за свобода на медиите.

Съвет на Европа: Състояние на демокрацията, правата на човека и върховенството на закона (5-ти доклад)

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/16/coe-2/

Публикуван е пореден 5-ти доклад Състояние на демокрацията, правата на човека и върховенството на закона на генералния секретар на Съвета на Европа.

Както и при предишните доклади, петте глави са посветени на основни елементи на демокрацията: ефективни, безпристрастни и независими съдебни системи; свобода на изразяване; свобода на събранията и свобода на сдружаване; демократични институции; социално включване.

Оценките във втората глава потвърждават оценките в индексите за състоянието на медиите, публикувани  досега.

Чудотворният телефон

Post Syndicated from Григор original http://www.gatchev.info/blog/?p=2139

Преди няколко дни установих, че имам чудотворен телефон.

По-точно камерата му. Оказва се, че тя лекувала нелечими болести!

Бях чул новината, че „Граф Игнатиев“ ще бъде ремонтиран, включително няколко най-ключови и популярни зони – площад „Гарибалди“, площад „Славейков“, частта с пазарчето покрай „Свети Седмочисленици“… И ми се поиска да си имам спомен от това какъв е бил. Тъй де, де да знае човек как ще изглежда след ремонта!

Отидох и започнах да снимам. На „Гарибалди“ още ме беше срам, но на „Славейков“ се развихрих с пълна сила. И докато правех втората панорама, се случи чудото!

В обектива на камерата попаднаха двама слепи просяци – единият пред Градската библиотека, другият пред Макдоналдс. И докато ги снимах, внезапно и двамата прогледнаха и си тръгнаха! Истина ви казвам, честен кръст, честен полумесец и каквото още щете честно – прогледнаха и си тръгнаха!

(Единият даже отначало тръгна към мен, сигурно искаше да ми благодари. Само че фасонът ми – като на двуметров оркски главатар – очевидно дойде твърде много на все още крехкото му новородено зрение, и той се отказа. Дано да не е запазил кошмарен спомен за мен.)

Уви, не знам дали чудотворната мощ на телефона ми не е свършила. По-долу, при Раковска, имаше още един сляп просяк – на него не помогна, въпреки че го хванах на поне две-три снимки. Или пък може да трябва да мине време, за да се зареди пак, де да знам. Сигурно трябва да пробвам…

Ако забележа камерата ми да прави нови чудеса, непременно ще пиша пак. Чакам и идеи какво да ида да снимам.

Съвместима ли е таксата за радио и телевизия с правото на ЕС

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/13/fee_psm/

През март  2018 г. Oberverwaltungsgericht Rheinland-Pfalz (Върховен административен съд на Рейнланд-Пфалц – OVG Rheinland-Pfalz) решава, че таксата за радио и телевизия в Германия е съвместима с правото на ЕС (дело № 7 A 11938/17) . Съдът отхвърля тезата, че таксата е несъвместима с правото на ЕС, тъй като предоставя на обществените радио- и телевизионни доставчици на медийни услуги несправедливо предимство пред техните частни конкуренти.

Съдът посочва, че през 2016 г. Bundesverwaltungsgericht (Федерален административен съд – BVerwG) вече е установил съответствието на таксата  – в новата й форма, въведена през 2013 г. – с правото на ЕС (решение от 18 март 2016 г., BVerwG 6 С 6.15). Съгласно това решение въвеждането на таксата  не изисква съгласието на Европейската комисия и е с съвместимо с Директивата за аудиовизуалните медийни услуги.  Обществените и частните радио- и телевизионни оператори  неизбежно ще бъдат финансирани по различни начини. Това обаче не означава непременно, че обществените радио- и телевизионни оператори са получили несправедливо предимство, тъй като за разлика от частните радио- и телевизионни оператори те са подложени на много по-ограничителни правила за рекламиране и следователно са финансово зависими от таксата.

Междувременно Landgericht Tübingen (Районен съд в Тюбинген, решение от 3 август 2017 г., дело № 5 T 246/17 и др.) е постановил, че таксата  нарушава правото на ЕС  – и в резултат има подадено преюдициално запитване до Съда на ЕС –  дело  С-492/17.

 

Преюдициални въпроси:

1)

Несъвместим ли е с правото на Съюза националният Gesetz vom 18.10.2011 zur Geltung des Rundfunkbeitragsstaatsvertrags (RdFunkBeitrStVtrBW) vom 17 Dezember 2010 (Закон от 18 октомври 2011 г. за прилагане на Държавния договор за вноската за радио- и телевизионно разпространение от 17 декември 2010 г., наричан по-нататък „RdFunkBeitrStVtrBW“) на провинция Баден-Вюртемберг, последно изменен с член 4 от Neunzehnter Rundfunkänderungsstaatsvertrag (Деветнадесети държавен договор за изменение на Държавните договори за радио- и телевизионно разпространение) от 3 декември 2015 г. (Закон от 23 февруари 2016 г., GBl. стр. 126, 129), поради това че вноската, събирана от 1 януари 2013 г. съгласно този закон безусловно по принцип от всяко живеещо в германската федерална провинция Баден-Вюртемберг пълнолетно лице в полза на радио- и телевизионните оператори SWR и ZDF, представлява помощ, която противоречи на правото на Съюза и предоставя по-благоприятно третиране само в полза на тези обществени радио- и телевизионни оператори спрямо частни радио- и телевизионни оператори? Трябва ли членове 107 и 108 ДФЕС да се тълкуват в смисъл, че за Закона за вноската за радио- и телевизионно разпространение е трябвало да се получи разрешението на Комисията и поради липсата на разрешение той е невалиден?

2)

Трябва ли член 107 ДФЕС, съответно член 108 ДФЕС да се тълкува в смисъл, че в обхвата му попада правна уредба, установена в националния закон „RdFunkBeitrStVtrBW“, която предвижда, че по принцип от всяко живеещо в Баден-Вюртемберг пълнолетно лице безусловно се събира вноска в полза само на държавни/обществени радио- и телевизионни оператори, поради това че тази вноска съдържа противоречаща на правото на Съюза и предоставяща по-благоприятно третиране помощ с цел изключването по технически причини на оператори от държави от Европейския съюз, доколкото вноските са предназначени да се използват за създаването на конкурентен начин на пренос (монопол върху DVB-T2), без да е предвидено той да се използва от чуждестранни оператори? Трябва ли член 107 ДФЕС, съответно член 108 ДФЕС да се тълкува в смисъл, че в обхвата му попадат не само преки субсидии, но и други релевантни от икономическа гледна точка привилегии (право на издаване на изпълнителен лист, правомощия за предприемане на действия както в качеството на стопанско предприятие, така и в качеството на орган, поставяне в по-благоприятно положение при изчисляването на дълговете)?

3)

Съвместимо ли е с принципа на равно третиране и със забраната за предоставящи привилегии помощи положение, при което на основание национален закон на провинция Баден-Вюртемберг германски телевизионен оператор, който се урежда от нормите на публичното право и има предоставени правомощия на орган, но същевременно се конкурира с частни радио- и телевизионни оператори на рекламния пазар, е привилегирован в сравнение с тези оператори поради това че не трябва като частните конкуренти да иска по общия съдебен ред да му бъде издаден изпълнителен лист за вземанията му срещу зрителите, преди да може да пристъпи към принудително изпълнение, а самият той има право, без участието на съд, да издаде титул, който същевременно му дава право на принудително изпълнение?

4)

Съвместимо ли е с член 10 от ЕКПЧ /член [11] от Хартата на основните права (свобода на информация) положение, при което държава членка предвижда в национален закон на провинция Баден-Вюртемберг, че телевизионен оператор, на който са предоставени правомощия на орган, има право да изисква плащането на вноска от всяко живеещо в зоната на радио- и телевизионното излъчване пълнолетно лице за целите на финансирането на точно този оператор, при неплащането на която е предвидена глоба, независимо дали това лице въобще разполага с приемник или само използва услугите на други, а именно чуждестранни или други, частни оператори?

5)

Съвместим ли е националният закон „RdFunkBeitrStVtrBW“, и по-специално членове 2 и 3, с установените в правото на Съюза принципи на равно третиране и на недопускане на дискриминация в положение, при което вноската, която следва да се плаща безусловно от всеки жител за целите на финансирането на обществен телевизионен оператор, налага на всяко лице, което само отглежда детето си, тежест в размер, многократно по-висок от сумата, дължима от лице, което живее в общо жилище с други хора? Следва ли Директива 2004/113/ЕО (1) да се тълкува в смисъл, че спорната вноска също попада в обхвата ѝ и че e достатъчно да е налице косвено поставяне в по-неблагоприятно положение, след като с оглед на реалните дадености 90 % от жените понасят по-голяма тежест?

6)

Съвместим ли националният закон „RdFunkBeitrStVtrBW“, и по-специално членове 2 и 3, с установените в правото на Съюза принципи на равно третиране и на недопускане на дискриминация в положение, при което вноската, която следва да се плаща безусловно от всеки жител за целите на финансирането на обществен телевизионен оператор, за нуждаещите се от второ жилище лица по свързана с работата причина е двойно по-голяма, отколкото за други работници?

7)

Съвместим ли е националният закон „RdFunkBeitrStVtrBW“, и по-специално членове 2 и 3, с установените в правото на Съюза принципи на равно третиране и на недопускане на дискриминация и със свободата на установяване, ако вноската, която следва да се плаща безусловно от всеки жител за целите на финансирането на обществен телевизионен оператор, е уредена по такъв начин, че при еднаква възможност за приемане на радио- и телевизионно разпространение непосредствено преди границата със съседна държава от ЕС германски гражданин дължи вноската само поради мястото си на пребиваване, докато германският гражданин, живущ непосредствено от другата страна на границата, не дължи вноската, също както гражданинът на друга държава — членка на ЕС, който по свързани с работата причини трябва да се установи непосредствено от другата страна на вътрешна граница на ЕС, понася тежестта на вноската, но не и гражданинът на ЕС, живущ непосредствено преди границата, дори и никой от двамата да не се интересува от приемането на излъчванията на германския оператор?

Коментар по въпрос №4:  допуснат е въпрос за съвместимост с чл.10 от Конвенцията за правата на човека. Съдът за правата на човека вече се е произнасял, има съображения за недопустимост по сходно дело отпреди десетина години –  ето тук съм писала – вж Faccio v Italy – но нека да се произнесе и Съдът на ЕС.

И – отново за характера на таксата: ако  плащат и хората без приемник, това очевидно не е такса в смисъл цена за услуга, а данъчно вземане, по мое мнение това е тенденцията.

Чакаме решението на Съда на ЕС. Нека да се развива и множи практиката.

Седем мита за GDPR

Post Syndicated from Bozho original https://blog.bozho.net/blog/3105

GDPR, или новият Общ регламент относно защитата на данните, е гореща тема, тъй като влиза в сила на 25-ти май. И разбира се, публичното пространство е пълно с мнения и заключения по въпроса. За съжаление повечето от тях са грешни. На база на наблюденията ми от последните месеци реших да извадя 7 мита за Регламента.

От края на миналата година активно консултирам малки и големи компании относно регламента, водя обучения и семинари и пиша технически разяснения. И не, не съм юрист, но Регламентът изисква познаване както на правните, така и на технологичните аспекти на защитата на данните.

1. „GDPR ми е ясен, разбрал съм го“

Най-опасното е човек да мисли, че разбира нещо след като само е чувал за него или е прочел две статии в новинарски сайт (както за GDPR така и в по-общ смисъл). Аз самият все още не твърдя, че познавам всички ъгълчета на Регламента. Но по конференции, кръгли маси, обучения, срещи, форуми и фейсбук групи съм чул и прочел твърде много глупости относно GDPR. И то такива, които могат да се оборят с „Не е вярно, виж чл. Х“. В тази категория за съжаление влизат и юристи, и IT специалисти, и хора на ръководни позиции.

От мита, че познаваме GDPR, произлизат и всички останали митове. Част от вината за това е и на самия Регламент. Дълъг е, чете се трудно, има лоши законодателни практики (3 различни хипотези в едно изречение??) и нито Европейската Комисия, нито някоя друга европейска институция си е направила труда да го разясни за хората, за които се отнася – а именно, за почти всички. Т.нар. „работна група по чл. 29 (от предишната Директива)“ има разяснения по някои въпроси, но те са също толкова дълги и трудно четими ако човек няма контекст. При толкова широкообхватно законодателство е голяма грешка то да се остави нерязяснено. Да, в него има много нюанси и много условности (което е друг негов минус), но е редно поне общите положения да бъдат разказани ясно и то от практическа гледна точка.

Така че не – да не си мислим, че сме разбрали GDPR.

2. „Личните данни са тайна“

Определението за лични данни в Регламента може би характеризира целия Регламент – трудно четима и „увъртяно“:

„лични данни“ означава всяка информация, свързана с идентифицирано физическо лице или физическо лице, което може да бъде идентифицирано („субект на данни“); физическо лице, което може да бъде идентифицирано, е лице, което може да бъде идентифицирано, пряко или непряко, по-специално чрез идентификатор като име, идентификационен номер, данни за местонахождение, онлайн идентификатор или по един или повече признаци, специфични за физическата, физиологичната, генетичната, психическата, умствената, икономическата, културната или социална идентичност на това физическо лице;

Всъщност лични данни са всичко, което се отнася за нас. Включително съвсем очевидни неща като цвят на очи и коса, ръст и т.н. И не, личните данни не са тайна. Имената ни не са тайна, ръстът ни не е тайна. ЕГН-то ни не е тайна (да, не е). Има специални категории лични данни, които могат да бъдат тайна (напр. медицински данни), но за тях има специален ред.

Разграничаването, което GDPR не прави ясно, за разлика от едно разяснение на NIST – има лични данни, на база на които хората могат да бъдат идентифицирани, и такива, с които не могат, но се отнасят за тях. По цвят на косата не можем да бъдем идентифицирани. Но цветът на косата представлява лични данни. По професия не можем да бъдем идентифицирани. (По три имена и професия обаче – евентуално може и да можем). И тук едно много важно нещо, посочено в последните изречения на съображение 26 – данни, които са лични, но не могат да бъдат отнесени към конкретно лице, и на база на които не може да бъде идентифицирано такова, не попадат в обхвата на регламента. И съвсем не са тайна – „имаме 120 клиента на възраст 32 години, които са си купили телефон Sony между Април и Юли“ е напълно окей.

Та, личните данни не са та тайни – някои даже са съвсем явни и видни. Целта на GDPR е да уреди тяхната обработка с автоматизирани средства (или полуавтоматизирани в структуриран вид, т.е. тетрадки). С други думи – кой има право да ги съхранява, за какво има право да ги използва и как трябва да ги съхранява и използва.

3. „GDPR не се отнася за мен“

Няма почти никакви изключения в Регламента. Компании под 250 души не са длъжни да водят едни регистри, а компании, които нямат мащабна обработка и наблюдение на субекти на данни нямат задължение за длъжностно лице по защита на данните (Data protection officer; тази точка е дискусионна с оглед на предложенията за изменения на българския закон за защита на личните данни, които разширяват прекалено много изискванията за DPO). Всичко останало важи за всички, които обработват лични данни. И всички граждани на ЕС имат всички права, посочени в Регламента.

4. „Ще ни глобят 20 милиона евро“

Тези глоби са единствената причина GDPR да е популярен. Ако не бяха те, на никого нямаше да му дреме за поредното европейско законодателство. Обаче заради плашещите глоби всякакви консултанти ходят и обясняват как „ами те глобите, знаете, са до 20 милиона“.

Но колкото и да се повтарят тези 20 милиона (или както някои пресоляват манджата „глоби над 20 милиона евро“), това не ги прави реалистични. Първо, има процес, който всички регулатори ще следват, и който включва няколко стъпки на „препоръки“ преди налагане на глоба. Идва комисията, установява несъответствие, прави препоръки, идва пак, установява взети ли са мерки. И ако сте съвсем недобросъвестни и не направите нищо, тогава идват глобите. И тези глоби са пропорционални на риска и на количеството данни. Не е „добър ден, 20 милиона“. Според мен 20-те милиона ще са само за огромни международни компании, като Google и Facebook, които обработват данни на милиони хора. За тетрадката с вересиите глоба няма да има (правото да бъдеш забравен се реализира със задраскване, но само ако магазинерът няма легитимен интерес да ги съхранява, а именно – да му върнете парите :)).

Тук една скоба за българското законодателство – то предвижда доста високи минимуми на глобите (10 хил. лева). Това се оспорва в рамките на общественото обсъждане и е несъразмерно на минимумите в други европейски държави и се надявам да спадне значително.

5. „Трябва да спрем да обработваме лични данни“

В никакъв случай. GDPR не забранява обработката на лични данни, просто урежда как и кога те да се обработват. Имате право да обработвате всички данни, които са ви нужни, за да си свършите работата.

Някои интернет компании напоследък обявиха, че спират работа заради GDPR, защото не им позволявал да обработват данни. И това в общия случай са глупости. Или те така или иначе са били на загуба и сега си търсят оправдание, или са били такъв разграден двор и са продавали данните ви наляво и надясно без ваше знание и съгласие, че GDPR представлява риск. Но то това му е идеята – да няма такива практики. Защото (както твърди Регламентът) това представлява риск за правата и свободите на субектите на данни (субект на данните – това звучи гордо).

6. „Трябва да искаме съгласие за всичко“

Съгласието на потребителите е само едно от основанията за обработка на данните. Има доста други и те дори са по-често срещани в реалния бизнес. Както отбелязах по-горе, ако можете да докажете легитимен интерес да обработвате данните, за да си свършите работата, може да го правите без съгласие. Имате ли право да събирате адреса и телефона на клиента, ако доставяте храна? Разбира се, иначе не може да му я доставите. Няма нужда от съгласие в този случай (би имало нужда от съгласие ако освен за доставката, ползвате данните му и за други цели). Нужно ли е съгласие за обработка на лични данни в рамките на трудово правоотношение? Не, защото Кодекса на труда изисква работодателят да води трудово досие. Има ли нужда банката да поиска съгласие, за да ви обработва личните данни за кредита? Не, защото те са нужни за изпълнението на договора за кредит (и не, не можете да кажете на банката да ви „забрави“ кредита; правото да бъдеш забравен важи само в някои случаи).

Усещането ми обаче е, че ще плъзнат едни декларации и чекбоксове за съгласие, които ще са напълно излишни…но вж. т.1. А дори когато трябва да ги има, ще бъдат прекалено общи, а не за определени цели (съгласявам се да ми обработвате данните, ама за какво точно?).

7. „Съответсвието с GDPR е трудно и скъпо“

…и съответно Регламентът е голяма административна тежест, излишно натоварване на бизнеса и т.н. Ами не, не е. Съответствието с GDPR изисква осъзната обработка на личните данни. Да, изисква и няколко хартии – политики и процедури, с които да докажете, че знаете какви лични данни обработвате и че ги обработвате съвестно, както и че знаете, че гражданите имат някакви права във връзка с данните си (и че всъщност не вие, а те са собственици на тези данни), но извън това съответствието не е тежко. Е, ако хал хабер си нямате какви данни и бизнес процеси имате, може и да отнеме време да ги вкарате в ред, но това е нещо, което по принцип e добре да се случи, със или без GDPR.

Ако например досега в една болница данните за пациентите са били на незащитен по никакъв начин сървър и всеки е имал достъп до него, без това да оставя следа, и също така е имало още 3-4 сървъра, на които никой не е знаел, че има данни (щото „IT-то“ е напуснало преди 2 години), то да, ще трябват малко усилия.

Но почти всичко в GDPR са „добри практики“ така или иначе. Неща, които са полезни и за самия бизнес, не само за гражданите.

Разбира се, синдромът „по-светец и от Папата“ започва да се наблюдава. Освен компаниите, които са изсипали милиони на юристи, консултанти, доставчици (и което накрая е имало плачевен резултат и се е оказало, че за един месец няколко човека могат да я свършат цялата тая работа) има и такива, които четат Регламента като „по-добре да не даваме никакви данни никъде, за всеки случай“. Презастраховането на големи компании, като Twitter и Facebook например, има риск да „удари“ компании, които зависят от техните данни. Но отново – вж. т.1.


В заключение, GDPR не е нещо страшно, не е нещо лошо и не е „измислица на бюрократите в Брюксел“. Има много какво да се желае откъм яснотата му и предполагам ще има какво да се желае откъм приложението му, но „по принцип“ е окей.

И както става винаги със законодателства, обхващащи много хора и бизнеси – в началото ще има не само 7, а 77 мита, които с времето и с практиката ще се изяснят. Ще има грешки на растежа, има риск (особено в по-малки и корумпирани държави) някой „да го отнесе“, но гледайки голямата картинка, смятам, че с този Регламент след 5 години ще сме по-добре откъм защита на данните и откъм последици от липсата на на такава защита.

Отново тезата на премиера, че нямал общо със състоянието на медиите

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/05/20299borisov/

Премиерът Борисов   се е изказал отново, че свободата на медиите зависи от собствениците и той няма общо със ситуацията:

Проблемът на свободата на словото е в собствениците на медиите. Ние на тях не им се месим. Какво можем да направим ние?

Това вече го слушаме вече девет години, каза го още  при Валерия Велева, 2009:

Между мен и медиите има коректен тон и нормални отношения. Моята любов с медиите не е платена. Давам на всички информация, но на никого не съм казал какво да пише. Докато любовта между тройната коалиция и медиите бе платена любов. Моята поне е без пари.

След като твърдението се повтаря – налага се и реакцията да се повтаря: не, не е без пари, платена е – дори ако не говорим за комуникационните бюджети по европейските програми – любовта на медиите към ГЕРБ  е платена щедро: с  уредено спокойствие на олигарсите над закона   –  това е цената.

Има изрично изказване на Вежди Рашидов за бартера:

Бойко се е предоверил, за да има едно спокойствие. Добре, получил е това спокойствие. Защото дайте да не се лъжем – всяка нормална партия иска да има някаква медийна подкрепа. Медиите са сила и няма защо да си затваряме очите. Медиите са страшна сила […]   Ние оставихме всички мангизи да минават през банката на тоя… на Доган, парите да текат, спокойно да се управлява заради един медиен комфорт и сега разбрахме, че това са едни гадове, които ни изпързаляха.

Пеевски “нямаше медии” въпреки изискванията на законите –  банкер казва за Пеевски следното  (преди сделките, с които той се легализира като собственик на медии):

Самият Пеевски няма фирми, защото няма право по закон.  Ноторен факт е, че той е собственик на Булгартабак, пресгрупата и така нататък.

Красимир Гергов “нямаше медии” въпреки изискванията на законите:

относно предположенията, че имам участия в Би Ти Ви,  Триада, Фокс лайф и др., ще кажа, че не мога да имам такива, понеже ми е забранено по закон.

ГЕРБ не просто го остави – ГЕРБ отмени законова забрана  за вертикална интеграция, за да може Гергов да се легализира като собственик.

Цветан Василев “нямаше медии”, нито мултиплекси – министърът Московски дори не знаеше на кого са мултиплексите  (ще проверя и ще ви кажа в понеделник – понеделникът, който не настъпи)   – а в това време от средствата в банката  се е плащало за въпросната любов – 300 милиона за ТВ Седем и още:

„След като толкова много цялото правителство се бори да връща парите, какво прави с вестниците на Тошо Тошев, т. нар вестник на Тошо Тошев и на Даниел Руц (Преса)? Какво прави с т. нар. вестници на Венелина Гочева (24 часа) и на Петьо Блъсков (Труд)? Какво прави с т. нар. вестник на Славка Бозукова и на Тодор Батков (Стандарт)? Да ги изреждам ли? (…) Всички дължат пари. Защо не работи държавата по връщането на тези пари? Защото обслужват тези, които са на власт”.

Докладът на Репортери без граници за 2018 г. казва именно това:  преплитане на власт, олигарси и медии – което е несвобода (колкото и Йордан Цонев да твърди, че свободата е, ако той говори, без да го цензурират) :

Корупцията и тайните споразумения между медиите, политиците и олигарсите са широко разпространени. Най-прословутото въплъщение на тази аномалия е Дилян Пеевски, бивш шеф на ДАНС и собственик на Нова  българска медийна група.

Отделна тема са обществените медии, които били антиправителствени и били оставени на мира –  на мира?  с две промени на закона, ясно защо,  и след време със сглобяване на сегашното ръководство на БНТ (стил Митко, казах ти да не го питаш и Кошлуков с приятели).

И накрая – за чуденето на премиера  “Какво да направим, за да спрем Пеевски и Прокопиев да воюват?”  

Премиерът  от години обяснява системни последици от  липсата на върховенство на закона със сценария   двама братя се боричкат и Пеевски и Прокопиев воюват. Това не е махалата, едни младежи се закачат – това е държава. Върховенство на правото е средството, иначе законите  – и да ги има – ще продължават да не се отнасят до прословутото въплъщение и до обръчите на управляващите, както Доган вече ни обясни.

 

m121(сн.24 часа)

м8 (сн. БТА)

м14 (сн:Пик)

2018-05-03 python, multiprocessing, thread-ове и забивания

Post Syndicated from Vasil Kolev original https://vasil.ludost.net/blog/?p=3384

Всеки ден се убеждавам, че нищо не работи.

Открих забавен проблем с python и multiprocessing, който в момента още не мога да реша чий проблем е (в крайна сметка ще се окаже мой). Отне ми прилично количество време да го хвана и си струва да го разкажа.

Малко предистория: ползваме influxdb, в което тъпчем бая секундни данни, които после предъвкваме до минутни. InfluxDB има continuous queries, които вършат тази работа – на някакъв интервал от време хващат новите данни и ги сгъват. Тези заявки имаха няколко проблема:
– не се оправят с попълване на стари данни;
– изпълняват се рядко и минутните данни изостават;
– изпълняват се в общи линии в един thread, което кара минутните данни да изостават още повече (в нашия случай преди да ги сменим с около 12 часа).

Хванаха ме дяволите и си написах просто демонче на python, което да събира информация за различните бази какви данни могат да се сгънат, и паралелно да попълва данните. Работи в общи линии по следния начин:
– взима списък с базите данни
– пуска през multiprocessing-а да се събере за всяка база какви заявки трябва да се пуснат, на база на какви measurement-и има и докога са минутните и секундните данни в тях;
– пуска през multiprocessing-а събраните от предния pass заявки
– и така до края на света (или докато зависне).

След като навакса за няколко часа, успяваше да държи минутните данни в рамките на няколко минути от последните секундни данни, което си беше сериозно подобрение на ситуацията. Единственият проблем беше, че от време на време спираше да process-ва и увисваше.

Днес намерих време да го прегледам внимателно какво му се случва. Процесът изглежда като един parent и 5 fork()-нати child-а, като:
Parent-а спи във futex 0x22555a0;
Child 18455 във futex 0x7fdbfa366000;
Child 18546 read
Child 18457 във futex 0x7fdbfa366000
Child 18461 във futex 0x7fdbfa366000
Child 18462 във futex 0x7fdbfa366000
Child 18465 във futex 0x7fdbf908c2c0

Това не беше особено полезно, и се оказа, че стандартния python debugger (pdb) не може да се закача за съществуващи процеси, но за сметка на това gdb с подходящи debug символи може, и може да дава доста полезна информация. По този начин открих, че parent-а чака един child да приключи работата си:


#11 PyEval_EvalFrameEx (
[email protected]=Frame 0x235fb80, for file /usr/lib64/python2.7/multiprocessing/pool.py, line 543, in wait (self== 1525137960000000000 AND time < 1525138107000000000 GROUP BY time(1m), * fill(linear)\' in a read only context, please use a POST request instead', u'level': u'warning'}], u'statement_id': 0}]}, None], _callback=None, _chunksize=1, _number_left=1, _ready=False, _success=True, _cond=<_Condition(_Verbose__verbose=False, _Condition__lock=, acquire=, _Condition__waiters=[], release=) at remote 0x7fdbe0015310>, _job=45499, _cache={45499: < ...>}) a...(truncated), [email protected]=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3040

Като в pool.py около ред 543 има следното:


class ApplyResult(object):

...

def wait(self, timeout=None):
self._cond.acquire()
try:
if not self._ready:
self._cond.wait(timeout)
finally:
self._cond.release()

Първоначално си мислех, че 18546 очаква да прочете нещо от грешното място, но излезе, че това е child-а, който е спечелил състезанието за изпълняване на следващата задача и чака да му я дадат (което изглежда се раздава през futex 0x7fdbfa366000). Един от child-овете обаче чака в друг lock:


(gdb) bt
#0 __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1 0x00007fdbf9b68dcb in _L_lock_812 () from /lib64/libpthread.so.0
#2 0x00007fdbf9b68c98 in __GI___pthread_mutex_lock ([email protected]=0x7fdbf908c2c0 ) at ../nptl/pthread_mutex_lock.c:79
#3 0x00007fdbf8e846ea in _nss_files_gethostbyname4_r ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcb8e0, [email protected]=0x7fdbecfcb340 "hZ \372\333\177",
[email protected]=1064, [email protected]=0x7fdbecfcb8b0, [email protected]=0x7fdbecfcb910, [email protected]=0x0) at nss_files/files-hosts.c:381
#4 0x00007fdbf9170ed8 in gaih_inet (name=, [email protected]=0x233fa44 "localhost", service=, [email protected]=0x7fdbecfcbb90, [email protected]=0x7fdbecfcb9f0,
[email protected]=0x7fdbecfcb9e0) at ../sysdeps/posix/getaddrinfo.c:877
#5 0x00007fdbf91745cd in __GI_getaddrinfo ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcbbc0 "8086", [email protected]=0x7fdbecfcbb90, [email protected]=0x7fdbecfcbb78)
at ../sysdeps/posix/getaddrinfo.c:2431
#6 0x00007fdbeed8760d in socket_getaddrinfo (self=
, args=) at /usr/src/debug/Python-2.7.5/Modules/socketmodule.c:4193
#7 0x00007fdbf9e5fbb0 in call_function (oparg=
, pp_stack=0x7fdbecfcbd10) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4408
#8 PyEval_EvalFrameEx (
[email protected]=Frame 0x7fdbe8013350, for file /usr/lib/python2.7/site-packages/urllib3/util/connection.py, line 64, in create_connection (address=('localhost', 8086), timeout=3000, source_address=None, socket_options=[(6, 1, 1)], host='localhost', port=8086, err=None), [email protected]=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3040

(gdb) frame 3
#3 0x00007fdbf8e846ea in _nss_files_gethostbyname4_r ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcb8e0, [email protected]=0x7fdbecfcb340 "hZ \372\333\177",
[email protected]=1064, [email protected]=0x7fdbecfcb8b0, [email protected]=0x7fdbecfcb910, [email protected]=0x0) at nss_files/files-hosts.c:381
381 __libc_lock_lock (lock);
(gdb) list
376 enum nss_status
377 _nss_files_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat,
378 char *buffer, size_t buflen, int *errnop,
379 int *herrnop, int32_t *ttlp)
380 {
381 __libc_lock_lock (lock);
382
383 /* Reset file pointer to beginning or open file. */
384 enum nss_status status = internal_setent (keep_stream);
385

Или в превод – опитваме се да вземем стандартния lock, който libc-то използва за да си пази reentrant функциите, и някой го държи. Кой ли?


(gdb) p lock
$3 = {__data = {__lock = 2, __count = 0, __owner = 16609, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}},
__size = "\002\000\000\000\000\000\000\000\[email protected]\000\000\001", '\000' , __align = 2}
(gdb) p &lock
$4 = (__libc_lock_t *) 0x7fdbf908c2c0

Тук се вижда как owner-а на lock-а всъщност е parent-а. Той обаче не смята, че го държи:


(gdb) p lock
$2 = 0
(gdb) p &lock
$3 = (__libc_lock_t *) 0x7fdbf9450df0
(gdb) x/20x 0x7fdbf9450df0
0x7fdbf9450df0
: 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e00 <__abort_msg>: 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e10 : 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e20 : 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e30 : 0x001762c9 0x00000000 0x00000000 0x00000000

… което е и съвсем очаквано, при условие, че са два процеса и тая памет не е обща.

Та, явно това, което се е случило е, че докато parent-а е правел fork(), тоя lock го е държал някой, и child-а реално не може да пипне каквото и да е, свързано с него (което значи никакви reentrant функции в glibc-то, каквито па всички ползват (и би трябвало да ползват)). Въпросът е, че по принцип това не би трябвало да е възможно, щото около fork() няма нищо, което да взима тоя lock, и би трябвало glibc да си освобождава lock-а като излиза от функциите си.

Първоначалното ми идиотско предположение беше, че в signal handler-а на SIGCHLD multiprocessing модула създава новите child-ове, и така докато нещо друго държи lock-а идва сигнал, прави се нов процес и той го “наследява” заключен. Това беше твърде глупаво, за да е истина, и се оказа, че не е…

Около въпросите с lock-а бях стигнал с търсене до две неща – issue 127 в gperftools и Debian bug 657835. Първото каза, че проблемът ми може да е от друг lock, който някой друг държи преди fork-а (което ме накара да се загледам по-внимателно какви lock-ове се държат), а второто, че като цяло ако fork-ваш thread-нато приложение, може после единствено да правиш execve(), защото всичко друго не е ясно колко ще работи.

И накрая се оказа, че ако се ползва multiprocessing модула, той пуска в главния процес няколко thread-а, които да се занимават със следенето и пускането на child-ове за обработка. Та ето какво реално се случва:

– някой child си изработва нужния брой операции и излиза
– parent-а получава SIGCHLD и си отбелязва, че трябва да види какво става
– главния thread на parent-а тръгва да събира списъка бази, и вика в някакъв момент _nss_files_gethostbyname4_r, който взима lock-а;
– по това време другия thread казва “а, нямам достатъчно child-ове, fork()”
– profit.

Текущото ми глупаво решение е да не правя нищо в главния thread, което може да взима тоя lock и да се надявам, че няма още някой такъв. Бъдещото ми решение е или да го пиша на python3 с някой друг модул по темата, или на go (което ще трябва да науча).

БХК: Правата на човека в България 2017

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/02/hr2017-2/

Публикуван е доклад Правата на човека в България 2017, изготвен от Българския Хелзинкски комитет.

Докладът има част (77-89), посветена на свободата на изразяване, която започва така:

Драстичното влошаване на свободата на изразяване в България продължи със стремглави темпове и през 2017 г. Годината беше белязана най-вече от безпрецедентен политически натиск, атаки и заплахи към журналисти и медии. Отвъд това нивата на автоцензура останаха тревожно високи, много медии продължиха да играят ролята на пазители на комфорта на властта и „бухалки“ срещу опонентите ѝ; а властта продължи да им „плаща“ чрез договори за реклама и медийно отразяване. За поредна година наблюдавахме непрозрачна собственост и финансиране, масово потъпкване на базови етични правила, липса на ясно разграничение между редакционно и платено съдържание. Речта на омразата тържествуваше, а фалшивите новини достигнаха още по-абсурдни и свърхпритеснителни размери.
На този фон звучи още по-притеснително, че България е на последно място от страните в ЕС по медийна грамотност според сравнителен анализ за нивото на медийна грамотност и способността на държавите да се справят с „постистината“, изготвен от Институт „Отворено общество“ – София, се казва в доклада.
.

Права върху снимка: маймуната в джунглата

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/01/naruto/

Във вторник 9 -ти апелативен съд отхвърли искането, свързано с известното вече  селфи на маймуна (делото Наруто срещу Слейтър).

Дейвид Слейтър оставя оборудването си в джунглата и маймуната се е заснела сама. Организацията за защита на животните ПЕТА   твърди, че Слейтър е нарушил авторските права на маймуната, като е издал книга за фотография “Wildlife Personalities”.

Решението:  Животните   нямат право на защита на права по Закона за авторските права.

Решението подлежи на обжалване.

 

Съобщение на ЕК: Борба с дезинформацията онлайн: европейски подход

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/01/disinfo/

Европейската комисия публикува Съобщение  COM(2018) 236 final  Борба  с дезинформацията онлайн: европейски подход.

Съобщението очертава цели, принципи и мерки за справяне с дезинформацията.

В частност препоръчва се

  • да се подобри прозрачността по отношение на произхода на информацията и начина, по който тя се създава, финансира, разпространява и насочва, за да даде възможност на гражданите да оценят съдържанието, до което те имат достъп, и да разкрие възможни опити за манипулиране на мнение.
  • да се насърчава разнообразието на информация, за да се даде възможност на гражданите да вземат информирани решения въз основа на критично мислене, чрез подкрепа за висококачествена журналистика, медийна грамотност и ребалансиране на връзката между създателите на информация и дистрибуторите.
  • да се насърчи надеждността на информацията, като се означава достоверната информация, проследяват се каналите за разпространение до източниците на информация и    се верифицират влиятелните доставчици на информация.
  • в дългосрочен план да се работи за повишаване на осведомеността,  медийна грамотност, широко участие на заинтересованите страни и сътрудничество между държавните органи, онлайн платформи, рекламодатели, експерти по незаконното съдържание, журналисти и медийни групи.

 

Нарочно не придумаешь

Post Syndicated from Григор original http://www.gatchev.info/blog/?p=2136

Имаше едно време една такава рубрика в съветския хумористичен вестник „Крокодил“. Наскоро си я спомних, при сладък чат с брат по душа (тоест, маниак на тема фантастика) от Русия. А той покрай нея си спомни следната история, случила се преди три-четири години:

Негов познат е на командировка в Щатите, въпреки че не знае на практика нито дума английски. Вечерта, докато си почива в хотела, внезапно го срязва сърцето – и то здраво.

Да крещи на руски очевидно е безполезно. След мъчителни секунди съобразяване славянската душа се усеща, че е гледал американски филми и там набират телефон 911. Набира го и се опитва да обясни, че е зле, на известен само на него език.

За смайване на главния герой (а и на доста от слушателите на историята), след пет минути в стаята му нахълтва почти като командоси лекарският екип. Обяснява той какъв му е проблемът на най-универсалния език на света – този на жестовете. Лекарите кимват, и след още 10 минути той вече е в болницата, на легло и със система, и се чуди какво ще става с него.

Внезапно разбира, че е умрял и всичко това му се присънва. Защото в отделението при него влиза огромен негър с лекарска престилка и го поздравява:

– Добре дошъл, брат! Размина ли ти сърцето вече?

На безупречен руски.

… Пет минути по-късно нещата се изясняват. Въпросният лекар, родом някъде от Африка, бил завършил медицина в Русия, след което бил емигрирал в Щатите. При приемането на пациента се ориентирали, че май е руснак, и спешно издирили сред персонала единствения човек, който знаел руски.

Проблемът със сърцето се оказал преходна исхемия. Но от инфаркта в тези обстоятелства го спасила единствено ударната доза лекарства в системата.

#FixCopyright #SaveTheLink #CensorshipMachines

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/04/28/fixcopyright-savethelink-censorshipmachines/

На 26 април 2018 г. учени от 25 водещи изследователски института за интелектуална собственост в Европа  публикуваха отворено писмо, изразяващо сериозни опасения относно  предложената директива за авторско  право.

Според авторите след балансиран проектодоклад на докладчика на Европейския парламент Тереза ​​Комодини (Доклад Comodini,  10 март 2017 г.) неотдавнашни текстове от новия докладчик Axel Voss и българското председателство  на Съвета на Европейският съюз изглежда водят към компромис, който не отговаря на целите на директивата за подобряване на избора, достъпа и справедливостта в цифровата среда.

Има научен консенсус
– че предложеното изключение   по чл. 3 няма да постигне целта си да стимулира иновациите и научните изследвания, ако се ограничи до определени организации,
– че предложенията за право на  издателите по чл. 11 ще благоприятстват по-скоро интересите на издателските интереси в пресата, отколкото иновативната журналистика,
– и че предложенията за чл. 13 застрашават ползата от  Директивата за електронната търговия (2000/31 / ЕО), която споделя отговорността за прилагането между носителите на авторски права и доставчиците на услуги.

169 представители на академичните среди предупреждават за недобре замислените планове за въвеждането на ново право на интелектуална собственост (сродно право за издателите). Те напомнят, че широк спектър от заинтересовани групи вече представи становища, че Директивата за авторското право в настоящия си вид няма да бъде в обществен интерес.

Близо 150 неправителствени организации също се противопоставят на актуалния проект. Според тях предопределено е, че транспониране на  законодателство в този вид ще е  кошмар. Същото се отнася и до проверката на съответствието на директивата с  Хартата на основните права на ЕС и Бернската конвенция. Отворено писмо

По стечение на обстоятелствата името на България  ще остане свързано с тази директива. Ако това ни интересува.

*

На 27 април 2018 г. (вчера) по план в COREPER се обсъжда  предоставяне на мандат за преговори с Европейския парламент по Директивата за авторското право.  

 (текстът)

Kакво е решил COREPER? според Юлия Реда не е даден мандат:

Цифрова икономика и цифрово общество

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/04/26/eu_digital-4/

От сайта на Съвета на ЕС – обобщение за хода на изпълнението на цифровата стратегия на ЕС:

  • премахване на таксите за роуминг;
  • модернизиране на защитата на данни;
  • гарантиране на трансгранична преносимост на онлайн съдържание;
  • насърчаване на електронната търговия чрез преустановяване на необоснованото геоблокиране.

ЕК готви голям нов пакет от амбициозни мерки за подпомагане завършването на цифровия единен пазар  с цел по-нататъшното разширяване на цифровата икономика на ЕС и премахването на регулаторните пречки между държавите от ЕС  като например в областта на

Задачите на дневен ред – от сайта на ЕК:

На 26 април 2018 е поредното 9-то заседание/ триалог за ревизията на Директивата за аудиовизуални медийни услуги

На 26 април 2018 се обявяват и мерките за справяне с дезинформацията онлайн.

Също днес ЕК огласява мерки за справедливо третиране на дружествата от страна на платформите и търсачките.

И отново Международна конференция!

Post Syndicated from Григор original http://www.gatchev.info/blog/?p=2135

Най-сетне! Хип-хип-ура! Любо Николов пусна поредната част от невероятния си разказ!

Тези, които са го прочели, сигурно си спомнят как нещастният Николай Светлев бе замесен въпреки волята си в доста странен (както и другите събития около него) побой, и попадна в ръцете на архонтската полиция – каквото и да е тя. Е, сега ще прочетете какво се случва с него след това – и ще откриете и малко намеци какви всъщност са толкова странните му спътници.

Историята, както винаги, можете да откриете в блога на Любомир Николов, в категорията „Международна конференция“. (Записите в нея са отзад напред – за да прочетете историята хронологично, вървете от най-долния към най-горния запис.)

… А аз въздишам с тонове завист. Да, напоследък не съм имал време да пиша, но и всичкото ми време да отиваше за писане, нямаше да доближа на светлинни години до таланта на Любо Николов, докато съм жив. Колкото и да чопля паметта си – а в нея има немалко четива! – той е единственият, който е не само весел поне колкото Тери Пратчет, но и пише с повече финес и по-добър стил от него.

А от това може да има само една по-голяма приказка – че не е преувеличение. И наистина не е.

Благодаря ти от сърце, Любо! Нямам търпение да прочета и следващите части! И не само аз – сигурно още хиляди читатели го нямат! Благодаря ти, че ни подари възможността да се повеселим от сърце и душа – с една мъдра, блага и весела история.

О-ще! О-ще! О-ще!

Congratulations to Oracle on MySQL 8.0

Post Syndicated from Michael "Monty" Widenius original http://monty-says.blogspot.com/2018/04/congratulations-to-oracle-on-mysql-80.html

Last week, Oracle announced the general availability of MySQL 8.0. This is good news for database users, as it means Oracle is still developing MySQL.

I decide to celebrate the event by doing a quick test of MySQL 8.0. Here follows a step-by-step description of my first experience with MySQL 8.0.
Note that I did the following without reading the release notes, as is what I have done with every MySQL / MariaDB release up to date; In this case it was not the right thing to do.

I pulled MySQL 8.0 from [email protected]:mysql/mysql-server.git
I was pleasantly surprised that ‘cmake . ; make‘ worked without without any compiler warnings! I even checked the used compiler options and noticed that MySQL was compiled with -Wall + several other warning flags. Good job MySQL team!

I did have a little trouble finding the mysqld binary as Oracle had moved it to ‘runtime_output_directory’; Unexpected, but no big thing.

Now it’s was time to install MySQL 8.0.

I did know that MySQL 8.0 has removed mysql_install_db, so I had to use the mysqld binary directly to install the default databases:
(I have specified datadir=/my/data3 in the /tmp/my.cnf file)

> cd runtime_output_directory
> mkdir /my/data3
> ./mysqld –defaults-file=/tmp/my.cnf –install

2018-04-22T12:38:18.332967Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.
2018-04-22T12:38:18.333109Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-04-22T12:38:18.333135Z 0 [ERROR] [MY-010119] [Server] Aborting

A quick look in mysqld –help –verbose output showed that the right command option is –-initialize. My bad, lets try again,

> ./mysqld –defaults-file=/tmp/my.cnf –initialize

2018-04-22T12:39:31.910509Z 0 [ERROR] [MY-010457] [Server] –initialize specified but the data directory has files in it. Aborting.
2018-04-22T12:39:31.910578Z 0 [ERROR] [MY-010119] [Server] Aborting

Now I used the right options, but still didn’t work.
I took a quick look around:

> ls /my/data3/
binlog.index

So even if the mysqld noticed that the data3 directory was wrong, it still wrote things into it.  This even if I didn’t have –log-binlog enabled in the my.cnf file. Strange, but easy to fix:

> rm /my/data3/binlog.index
> ./mysqld –defaults-file=/tmp/my.cnf –initialize

2018-04-22T12:40:45.633637Z 0 [ERROR] [MY-011071] [Server] unknown variable ‘max-tmp-tables=100’
2018-04-22T12:40:45.633657Z 0 [Warning] [MY-010952] [Server] The privilege system failed to initialize correctly. If you have upgraded your server, make sure you’re executing mysql_upgrade to correct the issue.
2018-04-22T12:40:45.633663Z 0 [ERROR] [MY-010119] [Server] Aborting

The warning about the privilege system confused me a bit, but I ignored it for the time being and removed from my configuration files the variables that MySQL 8.0 doesn’t support anymore. I couldn’t find a list of the removed variables anywhere so this was done with the trial and error method.

> ./mysqld –defaults-file=/tmp/my.cnf

2018-04-22T12:42:56.626583Z 0 [ERROR] [MY-010735] [Server] Can’t open the mysql.plugin table. Please run mysql_upgrade to create it.
2018-04-22T12:42:56.827685Z 0 [Warning] [MY-010015] [Repl] Gtid table is not ready to be used. Table ‘mysql.gtid_executed’ cannot be opened.
2018-04-22T12:42:56.838501Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2018-04-22T12:42:56.848375Z 0 [Warning] [MY-010441] [Server] Failed to open optimizer cost constant tables
2018-04-22T12:42:56.848863Z 0 [ERROR] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we’re sending the information to the error-log instead: MY-001146 – Table ‘mysql.component’ doesn’t exist
2018-04-22T12:42:56.848916Z 0 [Warning] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we’re sending the information to the error-log instead: MY-003543 – The mysql.component table is missing or has an incorrect definition.
….
2018-04-22T12:42:56.854141Z 0 [System] [MY-010931] [Server] /home/my/mysql-8.0/runtime_output_directory/mysqld: ready for connections. Version: ‘8.0.11’ socket: ‘/tmp/mysql.sock’ port: 3306 Source distribution.

I figured out that if there is a single wrong variable in the configuration file, running mysqld –initialize will leave the database in an inconsistent state. NOT GOOD! I am happy I didn’t try this in a production system!

Time to start over from the beginning:

> rm -r /my/data3/*
> ./mysqld –defaults-file=/tmp/my.cnf –initialize

2018-04-22T12:44:45.548960Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: px)NaaSp?6um
2018-04-22T12:44:51.221751Z 0 [System] [MY-013170] [Server] /home/my/mysql-8.0/runtime_output_directory/mysqld (mysqld 8.0.11) initializing of server has completed

Success!

I wonder why the temporary password is so complex; It could easily have been something that one could easily remember without decreasing security, it’s temporary after all. No big deal, one can always paste it from the logs. (Side note: MariaDB uses socket authentication on many system and thus doesn’t need temporary installation passwords).

Now lets start the MySQL server for real to do some testing:

> ./mysqld –defaults-file=/tmp/my.cnf

2018-04-22T12:45:43.683484Z 0 [System] [MY-010931] [Server] /home/my/mysql-8.0/runtime_output_directory/mysqld: ready for connections. Version: ‘8.0.11’ socket: ‘/tmp/mysql.sock’ port: 3306 Source distribution.

And the lets start the client:

> ./client/mysql –socket=/tmp/mysql.sock –user=root –password=”px)NaaSp?6um”
ERROR 2059 (HY000): Plugin caching_sha2_password could not be loaded: /usr/local/mysql/lib/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory

Apparently MySQL 8.0 doesn’t work with old MySQL / MariaDB clients by default 🙁

I was testing this in a system with MariaDB installed, like all modern Linux system today, and didn’t want to use the MySQL clients or libraries.

I decided to try to fix this by changing the authentication to the native (original) MySQL authentication method.

> mysqld –skip-grant-tables

> ./client/mysql –socket=/tmp/mysql.sock –user=root
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)

Apparently –skip-grant-tables is not good enough anymore. Let’s try again with:

> mysqld –skip-grant-tables –default_authentication_plugin=mysql_native_password

> ./client/mysql –socket=/tmp/mysql.sock –user=root mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 8.0.11 Source distribution

Great, we are getting somewhere, now lets fix “root”  to work with the old authenticaion:

MySQL [mysql]> update mysql.user set plugin=”mysql_native_password”,authentication_string=password(“test”) where user=”root”;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘(“test”) where user=”root”‘ at line 1

A quick look in the MySQL 8.0 release notes told me that the PASSWORD() function is removed in 8.0. Why???? I don’t know how one in MySQL 8.0 is supposed to generate passwords compatible with old installations of MySQL. One could of course start an old MySQL or MariaDB version, execute the password() function and copy the result.

I decided to fix this the easy way and use an empty password:

(Update:: I later discovered that the right way would have been to use: FLUSH PRIVILEGES;  ALTER USER’ root’@’localhost’ identified by ‘test’  ; I however dislike this syntax as it has the password in clear text which is easy to grab and the command can’t be used to easily update the mysql.user table. One must also disable the –skip-grant mode to do use this)

MySQL [mysql]> update mysql.user set plugin=”mysql_native_password”,authentication_string=”” where user=”root”;
Query OK, 1 row affected (0.077 sec)
Rows matched: 1 Changed: 1 Warnings: 0
 
I restarted mysqld:
> mysqld –default_authentication_plugin=mysql_native_password

> ./client/mysql –user=root –password=”” mysql
ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords.

Ouch, forgot that. Lets try again:

> mysqld –skip-grant-tables –default_authentication_plugin=mysql_native_password

> ./client/mysql –user=root –password=”” mysql
MySQL [mysql]> update mysql.user set password_expired=”N” where user=”root”;

Now restart and test worked:

> ./mysqld –default_authentication_plugin=mysql_native_password

>./client/mysql –user=root –password=”” mysql

Finally I had a working account that I can use to create other users!

When looking at mysqld –help –verbose again. I noticed the option:

–initialize-insecure
Create the default database and exit. Create a super user
with empty password.

I decided to check if this would have made things easier:

> rm -r /my/data3/*
> ./mysqld –defaults-file=/tmp/my.cnf –initialize-insecure

2018-04-22T13:18:06.629548Z 5 [Warning] [MY-010453] [Server] [email protected] is created with an empty password ! Please consider switching off the –initialize-insecure option.

Hm. Don’t understand the warning as–initialize-insecure is not an option that one would use more than one time and thus nothing one would ‘switch off’.

> ./mysqld –defaults-file=/tmp/my.cnf

> ./client/mysql –user=root –password=”” mysql
ERROR 2059 (HY000): Plugin caching_sha2_password could not be loaded: /usr/local/mysql/lib/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory

Back to the beginning 🙁

To get things to work with old clients, one has to initialize the database with:
> ./mysqld –defaults-file=/tmp/my.cnf –initialize-insecure –default_authentication_plugin=mysql_native_password

Now I finally had MySQL 8.0 up and running and thought I would take it up for a spin by running the “standard” MySQL/MariaDB sql-bench test suite. This was removed in MySQL 5.7, but as I happened to have MariaDB 10.3 installed, I decided to run it from there.

sql-bench is a single threaded benchmark that measures the “raw” speed for some common operations. It gives you the ‘maximum’ performance for a single query. Its different from other benchmarks that measures the maximum throughput when you have a lot of users, but sql-bench still tells you a lot about what kind of performance to expect from the database.

I tried first to be clever and create the “test” database, that I needed for sql-bench, with
> mkdir /my/data3/test

but when I tried to run the benchmark, MySQL 8.0 complained that the test database didn’t exist.

MySQL 8.0 has gone away from the original concept of MySQL where the user can easily
create directories and copy databases into the database directory. This may have serious
implication for anyone doing backup of databases and/or trying to restore a backup with normal OS commands.

I created the ‘test’ database with mysqladmin and then tried to run sql-bench:

> ./run-all-tests –user=root

The first run failed in test-ATIS:

Can’t execute command ‘create table class_of_service (class_code char(2) NOT NULL,rank tinyint(2) NOT NULL,class_description char(80) NOT NULL,PRIMARY KEY (class_code))’
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘rank tinyint(2) NOT NULL,class_description char(80) NOT NULL,PRIMARY KEY (class_’ at line 1

This happened because ‘rank‘ is now a reserved word in MySQL 8.0. This is also reserved in ANSI SQL, but I don’t know of any other database that has failed to run test-ATIS before. I have in the past run it against Oracle, PostgreSQL, Mimer, MSSQL etc without any problems.

MariaDB also has ‘rank’ as a keyword in 10.2 and 10.3 but one can still use it as an identifier.

I fixed test-ATIS and then managed to run all tests on MySQL 8.0.

I did run the test both with MySQL 8.0 and MariaDB 10.3 with the InnoDB storage engine and by having identical values for all InnoDB variables, table-definition-cache and table-open-cache. I turned off performance schema for both databases. All test are run with a user with an empty password (to keep things comparable and because it’s was too complex to generate a password in MySQL 8.0)

The result are as follows
Results per test in seconds:

Operation         |MariaDB|MySQL-8|

———————————–
ATIS              | 153.00| 228.00|
alter-table       |  92.00| 792.00|
big-tables        | 990.00|2079.00|
connect           | 186.00| 227.00|
create            | 575.00|4465.00|
insert            |4552.00|8458.00|
select            | 333.00| 412.00|
table-elimination |1900.00|3916.00|
wisconsin         | 272.00| 590.00|
———————————–

This is of course just a first view of the performance of MySQL 8.0 in a single user environment. Some reflections about the results:

  • Alter-table test is slower (as expected) in 8.0 as some of the alter tests benefits of the instant add column in MariaDB 10.3.
  • connect test is also better for MariaDB as we put a lot of efforts to speed this up in MariaDB 10.2
  • table-elimination shows an optimization in MariaDB for the  Anchor table model, which MySQL doesn’t have.
  • CREATE and DROP TABLE is almost 8 times slower in MySQL 8.0 than in MariaDB 10.3. I assume this is the cost of ‘atomic DDL’. This may also cause performance problems for any thread using the data dictionary when another thread is creating/dropping tables.
  • When looking at the individual test results, MySQL 8.0 was slower in almost every test, in many significantly slower.
  • The only test where MySQL was faster was “update_with_key_prefix”. I checked this and noticed that there was a bug in the test and the columns was updated to it’s original value (which should be instant with any storage engine). This is an old bug that MySQL has found and fixed and that we have not been aware of in the test or in MariaDB.
  • While writing this, I noticed that MySQL 8.0 is now using utf8mb4 as the default character set instead of latin1. This may affect some of the benchmarks slightly (not much as most tests works with numbers and Oracle claims that utf8mb4 is only 20% slower than latin1), but needs to be verified.
  • Oracle claims that MySQL 8.0 is much faster on multi user benchmarks. The above test indicates that they may have done this by sacrificing single user performance.
  •  We need to do more and many different benchmarks to better understand exactly what is going on. Stay tuned!

Short summary of my first run with MySQL 8.0:

  • Using the new caching_sha2_password authentication as default for new installation is likely to cause a lot of problems for users. No old application will be able to use MySQL 8.0, installed with default options, without moving to MySQL’s client libraries. While working on this blog I saw MySQL users complain on IRC that not even MySQL Workbench can authenticate with MySQL 8.0. This is the first time in MySQL’s history where such an incompatible change has ever been done!
  • Atomic DDL is a good thing (We plan to have this in MariaDB 10.4), but it should not have such a drastic impact on performance. I am also a bit skeptical of MySQL 8.0 having just one copy of the data dictionary as if this gets corrupted you will lose all your data. (Single point of failure)
  • MySQL 8.0 has several new reserved words and has removed a lot of variables, which makes upgrades hard. Before upgrading to MySQL 8.0 one has to check all one’s databases and applications to ensure that there are no conflicts.
  • As my test above shows, if you have a single deprecated variable in your configuration files, the installation of MySQL will abort and can leave the database in inconsistent state. I did of course my tests by installing into an empty data dictionary, but one can assume that some of the problems may also happen when upgrading an old installation.

Conclusions:
In many ways, MySQL 8.0 has caught up with some earlier versions of MariaDB. For instance, in MariaDB 10.0, we introduced roles (four years ago). In MariaDB 10.1, we introduced encrypted redo/undo logs (three years ago). In MariaDB 10.2, we introduced window functions and CTEs (a year ago). However, some catch-up of MariaDB Server 10.2 features still remains for MySQL (such as check constraints, binlog compression, and log-based rollback).

MySQL 8.0 has a few new interesting features (mostly Atomic DDL and JSON TABLE functions), but at the same time MySQL has strayed away from some of the fundamental corner stone principles of MySQL:

From the start of the first version of MySQL in 1995, all development has been focused around 3 core principles:

  • Ease of use
  • Performance
  • Stability

With MySQL 8.0, Oracle has sacrifices 2 of 3 of these.

In addition (as part of ease of use), while I was working on MySQL, we did our best to ensure that the following should hold:

  • Upgrades should be trivial
  • Things should be kept compatible, if possible (don’t remove features/options/functions that are used)
  • Minimize reserved words, don’t remove server variables
  • One should be able to use normal OS commands to create and drop databases, copy and move tables around within the same system or between different systems. With 8.0 and data dictionary taking backups of specific tables will be hard, even if the server is not running.
  • mysqldump should always be usable backups and to move to new releases
  • Old clients and application should be able to use ‘any’ MySQL server version unchanged. (Some Oracle client libraries, like C++, by default only supports the new X protocol and can thus not be used with older MySQL or any MariaDB version)

We plan to add a data dictionary to MariaDB 10.4 or MariaDB 10.5, but in a way to not sacrifice any of the above principles!

The competition between MySQL and MariaDB is not just about a tactical arms race on features. It’s about design philosophy, or strategic vision, if you will.

This shows in two main ways: our respective view of the Storage Engine structure, and of the top-level direction of the roadmap.

On the Storage Engine side, MySQL is converging on InnoDB, even for clustering and partitioning. In doing so, they are abandoning the advantages of multiple ways of storing data. By contrast, MariaDB sees lots of value in the Storage Engine architecture: MariaDB Server 10.3 will see the general availability of MyRocks (for write-intensive workloads) and Spider (for scalable workloads). On top of that, we have ColumnStore for analytical workloads. One can use the CONNECT engine to join with other databases. The use of different storage engines for different workloads and different hardware is a competitive differentiator, now more than ever.

On the roadmap side, MySQL is carefully steering clear of features that close the gap between MySQL and Oracle. MariaDB has no such constraints. With MariaDB 10.3, we are introducing PL/SQL compatibility (Oracle’s stored procedures) and AS OF (built-in system versioned tables with point-in-time querying). For both of those features, MariaDB is the first Open Source database doing so. I don’t except Oracle to provide any of the above features in MySQL!

Also on the roadmap side, MySQL is not working with the ecosystem in extending the functionality. In 2017, MariaDB accepted more code contributions in one year, than MySQL has done during its entire lifetime, and the rate is increasing!

I am sure that the experience I had with testing MySQL 8.0 would have been significantly better if MySQL would have an open development model where the community could easily participate in developing and testing MySQL continuously. Most of the confusing error messages and strange behavior would have been found and fixed long before the GA release.

Before upgrading to MySQL 8.0 please read https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html to see what problems you can run into! Don’t expect that old installations or applications will work out of the box without testing as a lot of features and options has been removed (query cache, partition of myisam tables etc)! You probably also have to revise your backup methods, especially if you want to ever restore just a few tables. (With 8.0, I don’t know how this can be easily done).

According to the MySQL 8.0 release notes, one can’t use mysqldump to copy a database to MySQL 8.0. One has to first to move to a MySQL 5.7 GA version (with mysqldump, as recommended by Oracle) and then to MySQL 8.0 with in-place update. I assume this means that all old mysqldump backups are useless for MySQL 8.0?

MySQL 8.0 seams to be a one way street to an unknown future. Up to MySQL 5.7 it has been trivial to move to MariaDB and one could always move back to MySQL with mysqldump. All MySQL client libraries has worked with MariaDB and all MariaDB client libraries has worked with MySQL. With MySQL 8.0 this has changed in the wrong direction.

As long as you are using MySQL 5.7 and below you have choices for your future, after MySQL 8.0 you have very little choice. But don’t despair, as MariaDB will always be able to load a mysqldump file and it’s very easy to upgrade your old MySQL installation to MariaDB 🙂

I wish you good luck to try MySQL 8.0 (and also the upcoming MariaDB 10.3)!

Критика към новия Закон за движението по пътищата

Post Syndicated from Bozho original https://blog.bozho.net/blog/3099

Прочетох предложението за нов Закон за движение по пътищата, в частта с административното наказване, връчване на наказателни постановления и фишове, електронни фишове, камери.

С две думи – никаква реформа.

Буквално текстовете са преписани от стария закон. И то текстове, които са омазани, хаотични, неработещи и непокриващи 50% от хипотезите в реалния живот. По същество:

  • не се дефинират възможности за електронно връчване
  • малоумният анахронизъм „контролен талон“ остава. Тоя син парцал ще си го носим и като се върнем от някое пътуване до Марс след 50 години.
  • процесът по връчване на електронен фиш (което е тъпо наименование; трябва да е „електронно-съставен фиш“, щото фишът си е хартиен) оставя същите вратички за измъкване с даване на копие на чужда книжка или лична карта на чужденец. Познайте в google images дали няма такива. И дали тарикатите не ги ползват. Специфични случаи като „фирма с повече от един управител“, „електронен фиш издаден от орган различен от МВР“ изобщо не са засегнати.
  • в ЗАНН продължава да се говори за „препис“, а административният съд е обявявал, че разпечатките не са преписи – трябвало индиго. В тази връзка вероятно е въведна глупостта „връчване на разпечатка за издадени, но невръчени наказателни постановления“. WAT. Ако наказателното постановление е в електронен вид, ще може да му се връчи самото то на пътя, няма нужда от „разпечатки“, че после да ходиш да си вземаш и постановлението. Да не говорим, че не е покрита хипотезата на НП, което е връчено, но е платено след принудително събиране от НАП. Сега излиза, че талонът не се връща.
  • електронното управление значи да не се изискват копия на всевъзможни документи, които държавата има (напр. трудови договори). Но ЗДвП изисква „копие от“ на доста места
  • доомазали са Закона за българските лични документи, но са пропуснали важна подробност – че макар на книжката да няма адрес, сме длъжни да си я сменим, ако си сменим адреса. Чл. 81 иска корекция, ама кой да се сети

Общо взето, законопроектът е преписване на стария закон, без да се отчетат проблемите с него, ниската събираемост, бъдещите нужди, възможностите за по-ефективен контрол, удобството на гражданите.

Докато бях съветник, макар МВР да не ми беше ресор, с колегата Величков написахме и оставихме законопроект за тази част с решения за всички тези проблеми. Сигурно се е загубил в някой шкаф.

Ще дойде денят, в който министрите ще осъзнаят, че реформа не се прави като кажеш на администрацията „направете тука някаква реформа“. Ама няма да е скоро.