Informatikai Barkács Fórum

WORLD OF WARCRAFT SZERVER => Core/Mag => A témát indította: nagyattila Dátum 2013 április 09, 02:22:39 DÉLUTÁN

Cím: Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 02:22:39 DÉLUTÁN
Hello. Lenne egy kis problémám, amikor elindítom a Worldservert, ezt a hibaüzenetet kapom:

In mysql_stmt_prepare() id: 56, sql: "SELECT difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction_A, faction_H, npcflag, speed_walk, speed_run, scale, rank, mindmg, maxdmg, dmgschool, attackpower, dmg_multiplier, baseattacktime, rangeattacktime, unit_class, unit_flags, unit_flags2, dynamicflags, family, trainer_type, trainer_spell, trainer_class, trainer_race, minrangedmg, maxrangedmg, rangedattackpower, type, type_flags, lootid, pickpocketloot, skinloot, resistance1, resistance2, resistance3, resistance4, resistance5, resistance6, spell1, spell2, spell3, spell4, spell5, spell6, spell7, spell8, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, InhabitType, HoverHeight, Health_mod, Mana_mod, Armor_mod, RacialLeader, questItem1, questItem2, questItem3, questItem4, questItem5, questItem6, movementId, RegenHealth, equipment_id, mechanic_immune_mask, flags_extra, ScriptName FROM creature_template WHERE entry = ?"


MySQL fut, Authserver is szépen felfut. Mi lehet a gond? (Legújabb MySQL + legújabb TDB van fent)
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 02:42:30 DÉLUTÁN
Ezt érdemes végigcsinálni, előlröl:
http://collab.kpsn.org/display/tc/Installing+TDB+4.3.4

Kifejezetten ügyelj az Update részre!
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 04:03:42 DÉLUTÁN
Bocsánat, a legújabb TDB-t a WOTLK Contentre értettem. (3.3.5; build 12340)

Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 04:58:12 DÉLUTÁN
Ha jól gondolom, akkor neked ez kell:
http://www.trinitycore.org/f/files/file/5-tdb-full-updates/

Viszont, a hiba, amit a World böfög, az a megfelelő Update - ek hiányától van. Miért? (Akkor kicsit részletesebben)

(1) Mi miatt kapod a hibát?

MYSQL_STMT* stmt = mysql_stmt_init(m_Mysql);
if (!stmt)
{
  sLog->outError(LOG_FILTER_SQL, "In mysql_stmt_init() id: %u, sql: \"%s\"", index, sql);
  sLog->outError(LOG_FILTER_SQL, "%s", mysql_error(m_Mysql));
  m_prepareError = true;
}
else
{
if (mysql_stmt_prepare(stmt, sql, static_cast<unsigned long>(strlen(sql))))
  {
    sLog->outError(LOG_FILTER_SQL, "In mysql_stmt_prepare() id: %u, sql: \"%s\"", index, sql);
    sLog->outError(LOG_FILTER_SQL, "%s", mysql_stmt_error(stmt));
    mysql_stmt_close(stmt);
    m_prepareError = true;
  }
  else
  {
    MySQLPreparedStatement* mStmt = new MySQLPreparedStatement(stmt);
    m_stmts[index] = mStmt;
  }
}


Van egy API a MySQL - nek a C - hez, hogy mindenféle jóságot csinálhass. Noss, ez azt mondja...

MYSQL_STMT* stmt = mysql_stmt_init(m_Mysql);


...hogy kapsz egy mysql_stmt adatszerkezetre mutató pointert, nem lényeges. Viszont, hogy mivel tér vissza, az annál inkább. 0 - val ha kevés a memória. Ez nem áll fenn, az első elagázás else ága teljesül. Okés.

(2) Következő elágazás mit mond:
Azt, hogy a...

mysql_stmt_prepare(stmt, sql, static_cast<unsigned long>(strlen(sql)))


...valami olyannal tér vissza, ami nekünk nem jó. Mikkel térhet vissza? Ez már jóval többet árul el nekünk, mint az init! Ha 0, akkor minden teljesen korrekt. Ha mindenféle egyéb számmal (azt remélem nem kell említeni, hogy elágazásnál a 0 HAMIS, míg a 0< IGAZ), akkor az mindenféle hibát jelöl:
Itt jön a tippmix, a 2. kilőve, 3. és 4. is (mivel fut az a MySQL), marad az 1. és a 5. hiba. Ettől még mindig nem lettünk okosabbak, de mindezt kiegészítve: tudjuk, hogy a prepare függvénynek átadsz egy SQL utasítást is (ami a kódban sql), és amit megkaptál a hibaüzenetben is. Magyarul valami nem stimmel a DB - dben, amire szerencsétlen prepare hibát dob, hiszen az a hosszú "SELECT..." - es akármi nem elvégezhető az adatbázisodban.

Erre mondják a hivatalos TrinityCore fórumon, hogy:
Idéz
Drop your f**n' databases and do it again, yo. Do not forget about the updates, dude!

Így az, amit legelőször linkeltem jó, csak megfelelő verziójú TDB - vel hegessz. Okés? :)
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 07:10:48 DÉLUTÁN
Nagyon szépen köszi mindent. :)

De ... Ha ugye importáltam a World-ot, akkor honnan rakjam fel a megfelelő updateket, ha az oldalon azt írja, hogy : Do not import the SQL files from the core repository, TrinityCore/sql/updates/world. :/
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 08:16:15 DÉLUTÁN
A leírás az azért linkeltem, hogy megértsd hogyan működik a történet. A lényeg, hogy történnek változások a core - ban és az adatbázisban is. Adatbázisnál a változásokat feltöltik sql fájl formájában, hogy ha a változástatás utáni core - al rendelkezel, update - elhesd az adatbázisod. Ha nem teszed meg, a core reklamálni fog. Ahogyan az történt.

Ha már sok változás történt, sok sql fájl összegyűlt, akkor (hogy ne kelljen update - elgetni) kiadnak egy ilyen FULL_TDB pack - ot, amiben addig  a pontig történt fix változások benne lesznek. De, a FULL_TDB után is történnek változtatások. Ezért írja, hogy ha meg is van a FULL_TDB, tessék updatelni, mert valószínüleg lesz olyan, amit nem tartalmaz.

A Te esetedben is ugyanez a helyzet, csak nálad jelenleg a FULL_TDB minden update - t tartalmaz. A WoTLK - t legjobb tudomásom szerint már nem igazán fejlesztik, így nem lesz +50 sql hozzá. Nem próbáltam ki, de így neked csak
TDB_full_335.51_2013_02_14.7z
erre lesz szükséged. Ugyanis ez a legfrisebb verzió a FULL_TDB + 51 - es update.

Ha nem WoTLK - d lenne, akkor
TDB_full_434.04_2013_02_14.7z
ezt kellene letöltened, és az ehhez tartozó 05 - ös sql - eket.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 08:31:53 DÉLUTÁN
oké, ez meg is lenne, mármint importáltam a TDB_full_335.51_2013_02_14.7z-t. Ezen kívül milyen update kell hogy menjen, mert még mindig nem megy ...
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 08:34:29 DÉLUTÁN
Ugyanaz a hiba?
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 08:38:37 DÉLUTÁN
Nem, mostmár sokkal több:


In mysql_stmt_prepare() id: 152, sql: "UPDATE guild_member SET BankRemMoney = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemMoney' in 'field list'
In mysql_stmt_prepare() id: 153, sql: "UPDATE guild_member SET BankResetTimeMoney = ?, BankRemMoney = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeMoney' in 'field list'
In mysql_stmt_prepare() id: 154, sql: "UPDATE guild_member SET BankResetTimeMoney = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeMoney' in 'field list'
In mysql_stmt_prepare() id: 157, sql: "UPDATE guild_member SET BankResetTimeTab0 = ?, BankRemSlotsTab0 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab0' in 'field list'
In mysql_stmt_prepare() id: 158, sql: "UPDATE guild_member SET BankResetTimeTab1 = ?, BankRemSlotsTab1 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab1' in 'field list'
In mysql_stmt_prepare() id: 159, sql: "UPDATE guild_member SET BankResetTimeTab2 = ?, BankRemSlotsTab2 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab2' in 'field list'
In mysql_stmt_prepare() id: 160, sql: "UPDATE guild_member SET BankResetTimeTab3 = ?, BankRemSlotsTab3 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab3' in 'field list'
In mysql_stmt_prepare() id: 161, sql: "UPDATE guild_member SET BankResetTimeTab4 = ?, BankRemSlotsTab4 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab4' in 'field list'
In mysql_stmt_prepare() id: 162, sql: "UPDATE guild_member SET BankResetTimeTab5 = ?, BankRemSlotsTab5 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankResetTimeTab5' in 'field list'
In mysql_stmt_prepare() id: 163, sql: "UPDATE guild_member SET BankRemSlotsTab0 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab0' in 'field list'
In mysql_stmt_prepare() id: 164, sql: "UPDATE guild_member SET BankRemSlotsTab1 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab1' in 'field list'
In mysql_stmt_prepare() id: 165, sql: "UPDATE guild_member SET BankRemSlotsTab2 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab2' in 'field list'
In mysql_stmt_prepare() id: 166, sql: "UPDATE guild_member SET BankRemSlotsTab3 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab3' in 'field list'
In mysql_stmt_prepare() id: 167, sql: "UPDATE guild_member SET BankRemSlotsTab4 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab4' in 'field list'
In mysql_stmt_prepare() id: 168, sql: "UPDATE guild_member SET BankRemSlotsTab5 = ? WHERE guildid = ? AND guid = ?"
Unknown column 'BankRemSlotsTab5' in 'field list'
In mysql_stmt_prepare() id: 169, sql: "UPDATE guild_member SET BankResetTimeTab0 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab0' in 'field list'
In mysql_stmt_prepare() id: 170, sql: "UPDATE guild_member SET BankResetTimeTab1 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab1' in 'field list'
In mysql_stmt_prepare() id: 171, sql: "UPDATE guild_member SET BankResetTimeTab2 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab2' in 'field list'
In mysql_stmt_prepare() id: 172, sql: "UPDATE guild_member SET BankResetTimeTab3 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab3' in 'field list'
In mysql_stmt_prepare() id: 173, sql: "UPDATE guild_member SET BankResetTimeTab4 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab4' in 'field list'
In mysql_stmt_prepare() id: 174, sql: "UPDATE guild_member SET BankResetTimeTab5 = 0 WHERE guildid = ? AND rank = ?"
Unknown column 'BankResetTimeTab5' in 'field list'
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 08:42:23 DÉLUTÁN
Ez egyrészt azt jelenti, hogy valószínüleg tévedtem. Elég csúnyát. Másrészt meg azt jelenti, hogy indulunk 0 - ról, tehát utána kell nézem, hogy "akkor most hogy is van ez".

UPDATE
IdézNote: If you are installing a new DB you only need the full sql (TDB_full_335.51_2013_02_14.sql)
Csak a FULL TDB kell. (Ne ilyesztegess :D)
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 08:49:47 DÉLUTÁN
Csak az van, és mégis hibát ír, akkor ez hogy is van? :/
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 08:53:06 DÉLUTÁN
Az, hogy az elején feltételeztem, hogy a legutolsó verziójú core - od van. Ha a legfrisebb core - od és a legfrisebb DB - d van, akkor elméletileg stimmelnie kellene.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 08:54:52 DÉLUTÁN
Szabad kérdeznem, hogy van-e egy lefordított core-d? (legújabb WOTLK core). Mert nekem "NevemSenki" adta oda az övét, gondolom neki a legújabb van.
Cím: Re:Worldserver hiba.
Írta: Shyro Dátum 2013 április 09, 08:57:38 DÉLUTÁN
Nincs lefordított core - m, nem is szeretém, hogy legyen. Így, már érthető a történet, kénytelen leszel vagy kideríteni, hogy melyik DB verzió passzol a saját core - odhoz, avagy lefordítani a legújabb verziójút.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 09:00:32 DÉLUTÁN
Rendben, köszi szépen mindent, és bocsi hogy raboltam az időd, akkor megyek és mindent kiderítek.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 09, 09:38:25 DÉLUTÁN
Ez lehet a legfrissebb core?

https://github.com/TrinityCore/TrinityCore
Cím: Re:Worldserver hiba.
Írta: Armin Dátum 2013 április 10, 04:13:44 DÉLUTÁN
Igen, de ha jót akarsz, akkor kizárólag STABLE verziót használj  :)

https://github.com/TrinityCore/TrinityCore/tree/stable

Ehhez pedig az 51es TDB passzol.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 10, 07:36:11 DÉLUTÁN
Azt a stable-t szedtem le, és forgatás közbe egy ilyet kaptam (Cmake-el minden rendben volt):


C:\Trinitycore\project\bin\Release\worldserver.exe : fatal error LNK1120: 44 unresolved externals
C:\Trinitycore\project\bin\Release\authserver.exe : fatal error LNK1120: 31 unresolved externals

Valaki meg tudná nézni, hogy ő le e tudja :
https://github.com/TrinityCore/TrinityCore/tree/stable
http://data.hu/get/6419625/project.rar

Ez wtf? :/
Cím: Re:Worldserver hiba.
Írta: Armin Dátum 2013 április 11, 04:41:26 DÉLUTÁN
Én is ezt a rev-et használom, nekem tökéletesen megy.
Cím: Re:Worldserver hiba.
Írta: nagyattila Dátum 2013 április 11, 05:41:05 DÉLUTÁN
Az érdekes .. mi lehet a hiba akkor ? :S
Cím: Re:Worldserver hiba.
Írta: Locutus Dátum 2013 április 12, 11:52:37 DÉLUTÁN
A trinitynek mindegyik megy. A stabil az csak azért stabil mer ha felmegy a gépedre akkor ott nem valószínű hogy crash jön létre. A nem stabilban meg jöhet létre bár annak is simán le kell forognia. Így az a gond hogy te valamit kibaszottul rosszul csinálsz. Nem teszel bele semmilyen plusz scriptet csak simán amit letöltöttél azt forgatod? Meg letöltöttél mindent mellé és úgy csináltad?? Írjál privát üzit elérhetőségekkel és akkor megprobálok segíteni. De így hogy belinkelsz két sort hogy nem tudta le creálni ebből nem fogom ki**** hogy mi lehet a hiba.
Üdvözlettel Locutus

U.I Linkelj egy teljes build project szöveget. Meg ha jól tudom az emulátor mappába létrehoz build során egy könyvtárat amibe bele fog kerülni egy html fálj. Ha azt elküldöd onnantól már több mindent tudok mondani hogy mit rontottál el.