Автор Тема: Има ли значение дали версията на пача е enUS или enGB?  (Прочетена 7674 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

Неактивен admin

  • Owner
  • Challenger
  • *****
  • Публикации: 11572
  • EVO Karma: 316
  • Think of will!
    • Peycho's Blog - Think of will!
  • ISP: AWS
  • Герой: Alein
Най-често героите изчезват в следната ситуация:

Сървъра забива до ниво в което се нуждае ръчен рестарт.
При подобна случка има възможност от счупени sql таблици.
При поправка, счупените редове в таблицата се изтриват... там изчезват и героите.
A systems programmer will know what to do when society breaks down, because the systems programmer already lives in a world without laws.

EVOWOW Private Wow Server
WOTLK Database

Неактивен ironlady

  • Emperor
  • ***
  • Публикации: 248
  • EVO Karma: 10
  • Crazy, stone cold crazy
Разбирам ви и двамата :wink:

Ама какво правим после? Връщат ли се загубените данни с някакъв restore скрипт или нещо?

Хайде не ми отговаряй, моите герои са си тука. Аз само се 'гъбаркам' с този разговор ;-)
We integrate Bug2Bug solutions

Неактивен MeKeTa

  • Challenger
  • *******
  • Публикации: 2392
  • EVO Karma: 133
  • .:Security System Admin:.
    • Горна Оряховица
  • ISP: evolve or die
  • Side: For The Horde
  • Герой: Aspirin
Е, герой ми е изчезвал и преди когато бях на enUS. Пък и като чета какво си написал, всичко е въпрос на случайност, но факт е че трябва да има някакъв механизъм срещу загуба на данни. Значи герой може да изчезне и с enUS и с enGB, само дето с enGB шанса е по-голям, защото съм с различен локал. Ок. Въпросът тогава е какво става като ти изчезне героя? И какъв е шанса да го върнете?
Backup.
Няма работеща система за backup на единични герои. Или цялата база се връща или пиеш студена вода за героя.
Такива са последствията на пиратките :)

Неактивен Wollverine

  • Emperor
  • ***
  • Публикации: 289
  • EVO Karma: -35
за да помогна на тея които са с enGB ето ви линк за последния пач

http://files.filefront.com/WoW+2418125+to+2428278+enGB+patchzip/;10209138;/fileinfo.html

ArtI^

  • Гост
offtopic:
Има ли някакви по значителни промени в тоя пач специални за които да знаем
Ontopic;
Ironlady предполагам че иска да каже ако стане такъв фал с изтриването на героя ще му бъдат ли върнати левелите и предметите или наистина ще се пие студена вода?

Неактивен MeKeTa

  • Challenger
  • *******
  • Публикации: 2392
  • EVO Karma: 133
  • .:Security System Admin:.
    • Горна Оряховица
  • ISP: evolve or die
  • Side: For The Horde
  • Герой: Aspirin
offtopic:
Има ли някакви по значителни промени в тоя пач специални за които да знаем
Ontopic;
Ironlady предполагам че иска да каже ако стане такъв фал с изтриването на героя ще му бъдат ли върнати левелите и предметите или наистина ще се пие студена вода?
Отговорил съм й.

Abroit

  • Гост
за да помогна на тея които са с enGB ето ви линк за последния пач

http://files.filefront.com/WoW+2418125+to+2428278+enGB+patchzip/;10209138;/fileinfo.html
http://www.wowwiki.com/Patch_mirrors мисля че това също е полезно :). Винаги можете да намерите най-новите пачове за всички версии :).

Неактивен kostading

  • Knight
  • *
  • Публикации: 47
  • EVO Karma: 0
Ами най-малкия пример. Всяка карта си има определен ID. Има разминаване между версиите на картите, защото повечето които се занимават работят с enUS локал на пачовете. Затова когато ходите по някои територии може да ви даде грешка и когато mangos-а се опита да поправи проблема, той изпълнява sql заявка която да премести героя ви 'назад' и ако има някаква грешка и в тази заявка, героя ви изчезва, защото на практика заявката е delete from **** insert into *** :) Надявам се някой да ме е разбрал хаха

Не си прав.
ID-to е едно за всички locales, точно това е идеята на ID-to както в базата така и в DBC фаиловете, map файловете и т.н.
Идеята е че зад всяко Id стой някаква локализация била тя ако искаш и на китаиски.
Образно казано в сървъра ти се канектва човек от китай, тои ще вижда всичко на китаиски което е от неговата клиентска част но съответно когато тръгне да изпълнява да кажем куест ще получите данните от колоната description в таблицата quest_template която в твоя случай е на англииски.
Същото важи когато се четат данни от таблицата mangos_strings и т.н.
Локализацията на клиентската част не от значение за сървърската част, цялата идея на локализацията е точно тази.
Така че ако един клиент се канекнте с EnGB локализация а сървъра е с EnUs това по никакъв начин не може да е причина някой да си загуби героя.
Единственото правило в случая е клиента и сървъра да бъдат на една и съща версия за да може даденият клиент да играе.
Ако поразгледаш Source Codes на Mangos ще видиш че съм прав.
ПС: Цялата идея не е на Mangos тя е тръгнала от Blizzard, да не кажеме че и идеята не е тяхна даже.
Подобно нещо се казва Нормализация на базата, има няколко нива на нормализация но това е друга тема.
Отностно някой беше писал тук за транзакциите в mangos, ажаба аз никаде в source code на мангос не съм видял да се пуска транзанция и при Exeption да се rollback или при успех да се Commit.
Изцяло разчитат на Auto Start Transaction, и може би по добре в случая защото една увиснала транзакция а тя може да не се окаже една в дадения случай ще разкатае мамата на SQL Servera.
Отедлно че в Source Code на Mangos не е спазен стандарта ANSI SQL и съответно  имплементирането на mangos с друг SQL Server е трудоемко и почти невъзможно.
Заявки от сорта:
ALTER TABLE `item_template`
 ADD COLUMN `RequiredArenaRank` INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER `ExtendedCost`;
не отговарят на ANSI стандарта и не могат да бъдат имплементирани в MS SQL Server например.
Правилната заявка е:

ALTER TABLE item_template
 ADD COLUMN RequiredArenaRank INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER ExtendedCost;

Това е от мен.
Все пак трябва да се радваме на това което полуаваме безплатно макар и то да не е савършенно.

И с какво са нарушени правилата за подписа?
Ето още едно нарушение на правилата:
http://informaticslibrary.com/

Неактивен kostading

  • Knight
  • *
  • Публикации: 47
  • EVO Karma: 0
Backup.
Няма работеща система за backup на единични герои. Или цялата база се връща или пиеш студена вода за героя.
Такива са последствията на пиратките :)

Има, има система за бекуп на важните бази Characters и Realmd на 1,2 или 3 часа и съответно Full Bekup ежедневно.
Заповядай: http://koce.dynalias.net/tmp/MangosBackup.exe

Ако имаш въпроси отностно този tool съм готов да помогна, приемам и идей за неговото бъдещо развитие.
Имам идея да го доравия да пише на две места едновременно, разбирай двете места да са два физически дикса едновременно и да направя изборно времето за Important Bekup да не е само на 1,2 или 3 часа а ако искаш да е на 20 минути но уви времето за писане не ми достига.
Full Beckup ти бекупва и четирите бази mangos, realmd, characters, scriptdev2 веднъж на ден в указано време от теб.
« Последна редакция: Юни 20, 2008, 12:17:22 am от kostading »
И с какво са нарушени правилата за подписа?
Ето още едно нарушение на правилата:
http://informaticslibrary.com/

Неактивен ironlady

  • Emperor
  • ***
  • Публикации: 248
  • EVO Karma: 10
  • Crazy, stone cold crazy
Не си прав.
ID-to е едно за всички locales, точно това е идеята на ID-to както в базата така и в DBC фаиловете, map файловете и т.н.
Идеята е че зад всяко Id стой някаква локализация била тя ако искаш и на китаиски.
Образно казано в сървъра ти се канектва човек от китай, тои ще вижда всичко на китаиски което е от неговата клиентска част но съответно когато тръгне да изпълнява да кажем куест ще получите данните от колоната description в таблицата quest_template която в твоя случай е на англииски.
Същото важи когато се четат данни от таблицата mangos_strings и т.н.
Локализацията на клиентската част не от значение за сървърската част, цялата идея на локализацията е точно тази.
Така че ако един клиент се канекнте с EnGB локализация а сървъра е с EnUs това по никакъв начин не може да е причина някой да си загуби героя.
Единственото правило в случая е клиента и сървъра да бъдат на една и съща версия за да може даденият клиент да играе.
Ако поразгледаш Source Codes на Mangos ще видиш че съм прав.
ПС: Цялата идея не е на Mangos тя е тръгнала от Blizzard, да не кажеме че и идеята не е тяхна даже.
Подобно нещо се казва Нормализация на базата, има няколко нива на нормализация но това е друга тема.
Отностно някой беше писал тук за транзакциите в mangos, ажаба аз никаде в source code на мангос не съм видял да се пуска транзанция и при Exeption да се rollback или при успех да се Commit.
Изцяло разчитат на Auto Start Transaction, и може би по добре в случая защото една увиснала транзакция а тя може да не се окаже една в дадения случай ще разкатае мамата на SQL Servera.
Отедлно че в Source Code на Mangos не е спазен стандарта ANSI SQL и съответно  имплементирането на mangos с друг SQL Server е трудоемко и почти невъзможно.
Заявки от сорта:
ALTER TABLE `item_template`
 ADD COLUMN `RequiredArenaRank` INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER `ExtendedCost`;
не отговарят на ANSI стандарта и не могат да бъдат имплементирани в MS SQL Server например.
Правилната заявка е:

ALTER TABLE item_template
 ADD COLUMN RequiredArenaRank INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER ExtendedCost;

Това е от мен.
Все пак трябва да се радваме на това което полуаваме безплатно макар и то да не е савършенно.

Съжалявам че трябва да ти противореча, но връзката между нормализацията (във всичките и форми) и локализацията ми убягва когато става въпрос за ДБ. А колкото до работата на сървъра с MS SQL, Oracle или дори MaxDB... ами да кажем че това е смешно твърдение. Предполагам и двамата знаем че пиратските продукти предпочитат базички като MySQL.

Но съм съгласна че локализацията на клиентската страна, по никакъв начин не трябва да засяга работата на сървъра.
« Последна редакция: Юни 20, 2008, 01:28:46 am от ironlady »
We integrate Bug2Bug solutions

Неактивен kostading

  • Knight
  • *
  • Публикации: 47
  • EVO Karma: 0
Съжалявам че трябва да ти противореча, но връзката между нормализацията (във всиките и форми) и локализацията ми убягва когато става въпрос за ДБ. А колкото до работата на сървъра с MS SQL, Oracle или дори MaxDB... ами да кажем че това е смешно твърдение. Предполагам и двамата знаем че пиратските продукти предпочитат базички като MySQL.

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

Може би не си ме рабрал/ла правилно или аз съм изписал повече ненужни неща, както виждам имаш идея за нормализация на базата, явно аз не съм се изразил правилно като съм изписал куп ненужни глупости.
Естествено локализацията няма нищо общо с нормализацията.
Идеята ми беше че във всички таблици Primary Key е по Entry, ID и т.н. и това което пише в останалите Character колони е без значение, ажаба всичко в кода е по Entry= еди какво си, ID= Еди какво си.
А кажи ми сега какво значение има какво седи в стринговата колона която е на езика X, има само за този който вижда резултата.

Отностно пиратските сървъри, проектат Mangos е под лиценза GNU GPL което не го прави никак пиратски, това е Open Source software който всеки може да променя и развива, нищо от кода написан там не е откраднато от blizzard, всичко е реверсе инженеринг донякъде вътре.
Отностно идеята за базата на сървъра мангос да е на MSSQL например не виждам нищо лошо освен многото труд който ще трябва да се хвърли, опитах се веднъж да го направя но се отказах в момента в който видях че уж има базов клас през чиито методи и Properties да минават всички заявки и в момента в който видях исипана заявка директно в кода извън този клас и то не на ANSI SQL се отказах.
Иначе спор няма че всички предпочитат MYSQL но той е далеч от сигурноста на MSSQL затова съм се и принудил да пиша толове за бекуп на определено време на базата.
Всяко спиране на тока, всяко ненормално рестарторане на машината чупи поне 3 таблици в базата: characters, creature_respawn, Gameobject_respawn.
А repair table еди коя си просто прави truncate на дадената таблица със записите с който не може да се оправи.
Е затова банките не биха ползвали MySql :)
И с какво са нарушени правилата за подписа?
Ето още едно нарушение на правилата:
http://informaticslibrary.com/

Неактивен ironlady

  • Emperor
  • ***
  • Публикации: 248
  • EVO Karma: 10
  • Crazy, stone cold crazy
Ок. След като си толкова добре запознат, не е ли възможно да се използва някакъв персистант лейър вместо да се пишат SQLи в кода. Това определено ще даде повече сигурност и надежност на транзакциите. И ще направи кода дори по лесно менажиран.
We integrate Bug2Bug solutions

Неактивен ironlady

  • Emperor
  • ***
  • Публикации: 248
  • EVO Karma: 10
  • Crazy, stone cold crazy
Може би не си ме рабрал/ла правилно или аз съм изписал повече ненужни неща, както виждам имаш идея за нормализация на базата, явно аз не съм се изразил правилно като съм изписал куп ненужни глупости.
Естествено локализацията няма нищо общо с нормализацията.
Идеята ми беше че във всички таблици Primary Key е по Entry, ID и т.н. и това което пише в останалите Character колони е без значение, ажаба всичко в кода е по Entry= еди какво си, ID= Еди какво си.
А кажи ми сега какво значение има какво седи в стринговата колона която е на езика X, има само за този който вижда резултата.

Отностно пиратските сървъри, проектат Mangos е под лиценза GNU GPL което не го прави никак пиратски, това е Open Source software който всеки може да променя и развива, нищо от кода написан там не е откраднато от blizzard, всичко е реверсе инженеринг донякъде вътре.
Отностно идеята за базата на сървъра мангос да е на MSSQL например не виждам нищо лошо освен многото труд който ще трябва да се хвърли, опитах се веднъж да го направя но се отказах в момента в който видях че уж има базов клас през чиито методи и Properties да минават всички заявки и в момента в който видях исипана заявка директно в кода извън този клас и то не на ANSI SQL се отказах.
Иначе спор няма че всички предпочитат MYSQL но той е далеч от сигурноста на MSSQL затова съм се и принудил да пиша толове за бекуп на определено време на базата.
Всяко спиране на тока, всяко ненормално рестарторане на машината чупи поне 3 таблици в базата: characters, creature_respawn, Gameobject_respawn.
А repair table еди коя си просто прави truncate на дадената таблица със записите с който не може да се оправи.
Е затова банките не биха ползвали MySql :)

Съжалявам за новия пост, но...

Мисля че грешно си разбрал обясненията на МеКеТа за чупенето на базата (тоест за изчезването на героите) или поне моето разбиране е различно. Проблема не е в локализацията на базата, чупенето е просто следствие. Ще използвам примера ти с китаиците че ми хареса. Значи ако китайския ти клиент се движи по дадена територия, се получава постоянен обмен на пакети с данни които се записват в базата, нали така, да кажем записват се координати. Тоест идваме до момента в който в някоя колонка имаме китайски, и той в даден момент ще бъде прочетен. Мисля че вече стигнахме до извода че великите 'ревърс' инжинери не са направили кой знае какво секюрити, за това за мен е лесно да предположа че пишейки ядрото за enUS не са предвидили че може да получат данни различни от US локала. Естествено се получава някаква грешка в кода, която е по време на изпълнение на транзакция и това чупи базата.

А колкото до GNU GPL лиценза ... ами не мисля че е толкова трудно да го получиш. И за мен това просто означава че пичовете са се изчерпали и си търсят свежи идеи от надъхани хора като теб самия.
We integrate Bug2Bug solutions

Неактивен MeKeTa

  • Challenger
  • *******
  • Публикации: 2392
  • EVO Karma: 133
  • .:Security System Admin:.
    • Горна Оряховица
  • ISP: evolve or die
  • Side: For The Horde
  • Герой: Aspirin
Има, има система за бекуп на важните бази Characters и Realmd на 1,2 или 3 часа и съответно Full Bekup ежедневно.
Аз много добре знам, че има, но няма за всеки герой поотделно.
В момента съм дал идея на двама приятели от psdb отбора които ще направят подобна на тази която ти си дал, но ще изважда данни за всеки герой поотделно, в sql формат и на определен период от време. Все пак благодаря ти за загрижеността :)  :clover:

Неактивен kostading

  • Knight
  • *
  • Публикации: 47
  • EVO Karma: 0
Съжалявам за новия пост, но...

Мисля че грешно си разбрал обясненията на МеКеТа за чупенето на базата (тоест за изчезването на героите) или поне моето разбиране е различно. Проблема не е в локализацията на базата, чупенето е просто следствие. Ще използвам примера ти с китаиците че ми хареса. Значи ако китайския ти клиент се движи по дадена територия, се получава постоянен обмен на пакети с данни които се записват в базата, нали така, да кажем записват се координати. Тоест идваме до момента в който в някоя колонка имаме китайски, и той в даден момент ще бъде прочетен. Мисля че вече стигнахме до извода че великите 'ревърс' инжинери не са направили кой знае какво секюрити, за това за мен е лесно да предположа че пишейки ядрото за enUS не са предвидили че може да получат данни различни от US локала. Естествено се получава някаква грешка в кода, която е по време на изпълнение на транзакция и това чупи базата.

А колкото до GNU GPL лиценза ... ами не мисля че е толкова трудно да го получиш. И за мен това просто означава че пичовете са се изчерпали и си търсят свежи идеи от надъхани хора като теб самия.

Ще ме прощаваш но базата се чупи единствено при ненормално спиране на машината.
След счупване на базата се налага repair на счупената таблица и ако въпросната таблица е characters тогава става лошо.
Във всички останали случай при нормална работа на mangos.exe се прави или Commit или Rollback във базата.
Хората са си Try, Exceptnali нещата в кода.
Отностно размера на TCP пакета, винаги се очаква пакет със определен размер и ако големината на пакета не е тази която очаква сървъра следва Disconnect за клиентската част, и в случая езика на клиентската част няма нищо общо защото по мрежата пътъват ID-та към DBC на клиентската част.
Ако порасъждаваме малко логично ще видиме че е безсмислено да пътува текстова информация по мрежата с огромен размер което от своя страна ще генерира голям трафик.
Сега виж ако има разлика в ID-тата за различните езици тогава става свинщина, но това не ми се вярва да е така.


И с какво са нарушени правилата за подписа?
Ето още едно нарушение на правилата:
http://informaticslibrary.com/