Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[6.x] Core/Misc: Locked on "connected" #15976

Closed
et65 opened this issue Dec 9, 2015 · 9 comments
Closed

[6.x] Core/Misc: Locked on "connected" #15976

et65 opened this issue Dec 9, 2015 · 9 comments

Comments

@et65
Copy link
Contributor

et65 commented Dec 9, 2015

Hi.

When 20-30 players tried to login at the same time, everyone and also the next players who try still locked at "Connected" for few minutes (sometime more than 45 minutes...).

No problem with a small number of players.

TC Rev. : b2d596b

@DDuarte
Copy link
Contributor

DDuarte commented Dec 12, 2015

I wouldn't be surprised if https://github.com/TrinityCore/TrinityCore/tree/lockfree-socket could improve this situation, assuming that it is a performance issue and not something else.

@et65
Copy link
Contributor Author

et65 commented Dec 12, 2015

Hi DDuarte.

I don't think it's a performance issue. Long time ago, I run a server with approx 120-140 players online on the same host without problem (Trinity was using ACE).

Does this branch is ready to test?

@DDuarte
Copy link
Contributor

DDuarte commented Dec 12, 2015

Ready to test? Definitely. Ready for... "production", no.

TC with Asio is quite different from TC with ACE. Some say that performance/scalability got degraded when the switch happen however nobody ever shown actual numbers describing the problem.

@et65
Copy link
Contributor Author

et65 commented Dec 12, 2015

I suspect ;)

I will try with this branch when I can, thanks.

@Rushor Rushor changed the title [6.x] Locked on "connected" [6.x] Core/Misc: Locked on "connected" Feb 11, 2016
@Aokromes
Copy link
Member

This bug is still valid?

@ghost
Copy link

ghost commented Jul 2, 2016

Difficult to know if this issue is separate or related to the login delay you get nowadays on 6.x if there are no existing characters in the DB. The OP did not say if the players had any existing characters or not, nor if this only happens with many players or also with single players.

@Aokromes
Copy link
Member

Aokromes commented Sep 1, 2016

No answer after months, closing, if this bug is still valid open a new ticket with updated core revision.

@Aokromes Aokromes closed this as completed Sep 1, 2016
@LazyPlanet
Copy link

LazyPlanet commented Nov 21, 2017

When 1000 players or more connects server in centos7.2 16 cores gcc builded, cpu up to 100% , many threads are in this state, maybe its a deadlock, and the server cannot send and read data any more. So I think the asio thread model has some bugs.
Thanks.

[Switching to thread 10 (Thread 0x7f255dd3d700 (LWP 16606))]
#0  0x00007f2560b366d5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
(gdb) bt
#0  0x00007f2560b366d5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x000000000053ad75 in boost::asio::detail::posix_event::wait<boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex> > (this=0x191b108, lock=...)
    at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/asio/detail/posix_event.hpp:106
#2  0x000000000052f89b in boost::asio::detail::task_io_service::do_run_one (this=0x191b0b0, lock=..., this_thread=..., ec=...)
    at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/asio/detail/impl/task_io_service.ipp:380
#3  0x000000000052f3b9 in boost::asio::detail::task_io_service::run (this=0x191b0b0, ec=...)
    at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/asio/detail/impl/task_io_service.ipp:149
#4  0x000000000052fafd in boost::asio::io_service::run (this=0x9e83a0 <_io_service>) at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/asio/impl/io_service.ipp:59
#5  0x00000000005e1b77 in boost::_mfi::mf0<unsigned long, boost::asio::io_service>::operator() (this=0x1923a10, p=0x9e83a0 <_io_service>)
    at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/bind/mem_fn_template.hpp:49
#6  0x00000000005e1adb in boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> >::operator()<unsigned long, boost::_mfi::mf0<unsigned long, boost::asio::io_service>, boost::_bi::list0> (this=0x1923a20, f=..., a=...) at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/bind/bind.hpp:249
#7  0x00000000005e1a21 in boost::_bi::bind_t<unsigned long, boost::_mfi::mf0<unsigned long, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > >::operator() (this=0x1923a10) at /root/MX-Architecture/ThirdParty/boost_1_63_0/boost/bind/bind.hpp:1294
#8  0x00000000005e167e in std::_Bind_simple<boost::_bi::bind_t<unsigned long, boost::_mfi::mf0<unsigned long, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > ()>::_M_invoke<>(std::_Index_tuple<>) (this=0x1923a10) at /usr/include/c++/4.8.2/functional:1732
#9  0x00000000005e131d in std::_Bind_simple<boost::_bi::bind_t<unsigned long, boost::_mfi::mf0<unsigned long, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > ()>::operator()() (this=0x1923a10) at /usr/include/c++/4.8.2/functional:1720
#10 0x00000000005e0e32 in std::thread::_Impl<std::_Bind_simple<boost::_bi::bind_t<unsigned long, boost::_mfi::mf0<unsigned long, boost::asio::io_service>, boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > ()> >::_M_run() (this=0x19239f8) at /usr/include/c++/4.8.2/thread:115
#11 0x00007f25608d82b0 in ?? () from /lib64/libstdc++.so.6
#12 0x00007f2560b32dc5 in start_thread () from /lib64/libpthread.so.0
#13 0x00007f256004176d in clone () from /lib64/libc.so.6

@LazyPlanet
Copy link

If I have about 600 players, there is no any problem. @Aokromes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants