Jump to content

.NyanCat

Member
  • Content Count

    25
  • Joined

  • Last visited

  • Yangs

    189 [ Donate ]

Community Reputation

2 Neutral

About .NyanCat

  • Rank
    Neutral

Informations

  • Gender
    Male

Recent Profile Visitors

820 profile views
  1. Okay. No one can help me so far... Still having this bug. I started to compare with other db sources (popular ones) and compared makefiles etc. There is no difference in these parts! It needs to be something regarding compiler or i dont know... I also switched root server. Same problem. Here is my latest error: http://epvpimg.com/lpMyaab cache.h: #ifndef __INC_COMMON_CACHE_H__ #define __INC_COMMON_CACHE_H__ template <typename T> class cache { public: cache() : m_bNeedQuery(false), m_expireTime(600), m_lastUpdateTime(0) { m_lastFlushTime = time(0); memset( &m_data, 0, sizeof(m_data) ); } T * Get(bool bUpdateTime = true) { if (bUpdateTime) m_lastUpdateTime = time(0); return &m_data; } void Put(T * pNew, bool bSkipQuery = false) { thecore_memcpy(&m_data, pNew, sizeof(T)); m_lastUpdateTime = time(0); if (!bSkipQuery) m_bNeedQuery = true; } bool CheckFlushTimeout() { if (m_bNeedQuery && time(0) - m_lastFlushTime > m_expireTime) return true; return false; } bool CheckTimeout() { if (time(0) - m_lastUpdateTime > m_expireTime) return true; return false; } void Flush() { if (!m_bNeedQuery) return; OnFlush(); m_bNeedQuery = false; m_lastFlushTime = time(0); } virtual void OnFlush() = 0; protected: T m_data; bool m_bNeedQuery; time_t m_expireTime; time_t m_lastUpdateTime; time_t m_lastFlushTime; }; #endif Compiled with -std=c++2a As i said befor. I cant trigger that crash. It just randomly appears. I realy need help with that one. Please help me.
  2. @Vanilla any idea what might be the problem?
  3. @Vanilla void CClientManager::FlushItemCacheSet(DWORD pid) { TItemCacheSetPtrMap::iterator it = m_map_pkItemCacheSetPtr.find(pid); if (it == m_map_pkItemCacheSetPtr.end()) { sys_log(0, "FLUSH_ITEMCACHESET : No ItemCacheSet pid(%d)", pid); return; } TItemCacheSet * pSet = it->second; TItemCacheSet::iterator it_set = pSet->begin(); while (it_set != pSet->end()) { CItemCache * c = *it_set++; c->Flush(); m_map_itemCache.erase(c->Get()->id); delete c; // This is line 1408 } pSet->clear(); delete pSet; m_map_pkItemCacheSetPtr.erase(it); if (g_log) sys_log(0, "FLUSH_ITEMCACHESET : Deleted pid(%d)", pid); } void CClientManager::UpdateLogoutPlayer() { time_t now = time(0); TLogoutPlayerMap::iterator it = m_map_logout.begin(); while (it != m_map_logout.end()) { TLogoutPlayer* pLogout = it->second; if (now - g_iLogoutSeconds > pLogout->time) { FlushItemCacheSet(pLogout->pid); // This is line 1335 FlushPlayerCacheSet(pLogout->pid); delete pLogout; m_map_logout.erase(it++); } else ++it; } } void emergency_sig(int sig) { if (sig == SIGSEGV) sys_log(0, "SIGNAL: SIGSEGV"); else if (sig == SIGUSR1) sys_log(0, "SIGNAL: SIGUSR1"); if (sig == SIGSEGV) abort(); // Main.cpp Line 58 }
  4. @Vanilla those files are still 90 % same as your last source release r71480. The lines might vary maybe between 1-3 lines according to includes and minor changes. I will provide the functions as fast as possible. Im not at home during the weekend so please stay tuned. Thanks for the suggestion with ports tree. I will change my compile environment. Do i need to change the root as well? And again. I always relied on your source. It worked best for me and you always did a great job with tutorials and help. You are indeed one of the reasons i learn with that mt2 scene for years now (10 years now).
  5. Im actually still using your source with some minor changes thank you for your great work btw! No i build it locally and run it on a root server. Both are latest FreeBSD 12.0 p11. All ports are up to date as well. Same. ldd db (on root): libc++.so.1 => /usr/lib/libc++.so.1 (0x204bd000) libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x20581000) libm.so.5 => /lib/libm.so.5 (0x2059e000) libmd.so.6 => /lib/libmd.so.6 (0x205cd000) libmysqlclient.so.18 => /usr/local/lib/mysql/libmysqlclient.so.18 (0x205f1000) libz.so.6 => /lib/libz.so.6 (0x20911000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x20929000) libthr.so.3 => /lib/libthr.so.3 (0x20941000) libc.so.7 => /lib/libc.so.7 (0x20969000) libssl.so.111 => /usr/lib/libssl.so.111 (0x20b12000) libcrypto.so.111 => /lib/libcrypto.so.111 (0x20b90000) libexecinfo.so.1 => /usr/lib/libexecinfo.so.1 (0x20de0000) libelf.so.2 => /lib/libelf.so.2 (0x20de4000) I use clang. Thanks a lot for your help! # Edit: Ah i installed most ports over pkg and upgraded everything to the latest with pkg as well while tryin to get rid of those crashes. I also installed same mysql versions on both. The compilation works flawless #Edit 2: gdb offers a bit more information then lldb: #0 0x20ae1f73 in thr_kill () from /lib/libc.so.7 #1 0x20ae01b1 in raise () from /lib/libc.so.7 #2 0x20a53353 in abort () from /lib/libc.so.7 #3 0x004603f7 in emergency_sig (sig=11) at Main.cpp:58 #4 0x20953408 in ?? () from /lib/libthr.so.3 #5 0x2095283b in ?? () from /lib/libthr.so.3 #6 <signal handler called> #7 0x00446040 in CClientManager::FlushItemCacheSet (this=0xffbfe910, pid=792) at ClientManager.cpp:1408 #8 0x0043c308 in CClientManager::UpdateLogoutPlayer (this=0xffbfe910) at ClientManagerPlayer.cpp:1335 #9 0x00440a03 in CClientManager::Process (this=0xffbfe910) at ClientManager.cpp:3089 #10 0x00440040 in CClientManager::MainLoop (this=0xffbfe910) at ClientManager.cpp:191 #11 0x00460537 in main () at Main.cpp:93
  6. Yes thats what i actually did as well! I will try that. Thank you so much! Btw. do you have any idea why that happens? @Tunga
  7. Hey Guys, i hope anybody can help me i followed this guide to upgrade my source code. https://github.com/blackdragonx61/Metin2-Update-C-Status I dont know if my following problem comes from upgrading it but i do have the following very annoying problem: I suffer database crashes including core dumps from time to time. I cant reproduce it. It just happens suddely. http://epvpimg.com/LFDwaab The error log does not say anything. The source parts that are mentioned in this dump are not touched and same as original source. Maybe you have an idea? Thanks in advance!
  8. I tried everything out now and both wait and pro damage are fixed. Moblock as well! Nice! Is there a solution for move speedhack?
  9. Can you send me the link to the fix? Maybe instead of banning just kick the players?
  10. Can you create a guide for all types of cheats? What about Pro/Wait Damage? Speedhacks? Wallhack?
  11. Any updates? There is a core down in the uniqueKill Funktion which is called in char_battle.cpp. The down appears on very heavy loads with many plaeyrs. Greets
  12. Wow thanks guys for your help! @Yiv: With your first solution the core crashed after about 22 hours. But without generating the .core file so i cant backtrace the error... @Socialized Im gonna try the modification now and tell you if the crashes are gone. Thanks again!
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.