-
Notifications
You must be signed in to change notification settings - Fork 45
Closed
Description
After running the server for a few days, it crashes.
The log module uses QPlainTextEdit, which does not limit the amount of text by default, and when too many logs are added, memory will run out.
So there should be a non-0 limit by default, and a further entry can be provided through the log settings window.
output:
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Abort(core dumped)
call stack:
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1 0x00007fc870aa9f4f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2 0x00007fc870a5afb2 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007fc870a45472 in __GI_abort () at ./stdlib/abort.c:79
#4 0x00007fc87089d919 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007fc8708a8e1a in () at /lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007fc8708a8e85 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
#7 0x00007fc8708a90d8 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
#8 0x00007fc870c8ffc7 in qTerminate() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#9 0x00007fc870c95499 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#10 0x00007fc870d4ec31 in QString::append(QString const&) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007fc8714a152b in QTextCursor::insertText(QString const&, QTextCharFormat const&) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#12 0x00007fc8714a2337 in QTextCursor::insertText(QString const&) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#13 0x00007fc87215a1cd in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#14 0x00007fc872129965 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#15 0x00007fc871b5bbfe in mbCoreLogView::logMessage(mb::LogFlag, QString const&, QString const&) () at /home/iscs/soft/ModbusTools/libcore.so.0
#16 0x00007fc871b634ab in mbCoreUi::logMessage(mb::LogFlag, QString const&, QString const&) () at /home/iscs/soft/ModbusTools/libcore.so.0
#17 0x00007fc871afbbcc in mbCore::logMessageThreadUnsafe(mb::LogFlag, QString const&, QString const&) () at /home/iscs/soft/ModbusTools/libcore.so.0
#18 0x00007fc871affa5b in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2>, QtPrivate::List<mb::LogFlag, QString const&, QString const&>, void, void (mbCore::*)(mb::LogFlag, QString const&, QString const&)>::call(void (mbCore::*)(mb::LogFlag, QString const&, QString const&), mbCore*, void**) () at /home/iscs/soft/ModbusTools/libcore.so.0
#19 0x00007fc871aff859 in void QtPrivate::FunctionPointer<void (mbCore::*)(mb::LogFlag, QString const&, QString const&)>::call<QtPrivate::List<mb::LogFlag, QString const&, QString const&>, void>(void (mbCore::*)(mb::LogFlag, QString const&, QString const&), mbCore*, void**) () at /home/iscs/soft/ModbusTools/libcore.so.0
#20 0x00007fc871aff08d in QtPrivate::QSlotObject<void (mbCore::*)(mb::LogFlag, QString const&, QString const&), QtPrivate::List<mb::LogFlag, QString const&, QString const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) ()
at /home/iscs/soft/ModbusTools/libcore.so.0
#21 0x00007fc870edd730 in QObject::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00007fc871f62fae in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007fc870eb1738 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#24 0x00007fc870eb46c1 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#25 0x00007fc870f0a193 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007fc86ff1e749 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#27 0x00007fc86ff1e9d8 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#28 0x00007fc86ff1ea6c in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007fc870f09876 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007fc870eb01bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007fc870eb8316 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007fc871afabad in mbCore::runGui() () at /home/iscs/soft/ModbusTools/libcore.so.0
#33 0x00007fc871af9e71 in mbCore::exec(int, char**) () at /home/iscs/soft/ModbusTools/libcore.so.0
#34 0x000055814e75bafb in main ()
Metadata
Metadata
Assignees
Labels
No labels