[ https://issues.apache.org/jira/browse/TS-1634?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13537270#comment-13537270 ]
Thach Tran commented on TS-1634: -------------------------------- As discussed on irc, this happens because the plugin tries to cast a LuaPluginState to a lua_State which is wrong. There's also issues around how to clean up multiple Lua states of multiple threads as well that will need addressing. > Lua remap plugin crashes on reload > ---------------------------------- > > Key: TS-1634 > URL: https://issues.apache.org/jira/browse/TS-1634 > Project: Traffic Server > Issue Type: Bug > Components: Plugins > Affects Versions: 3.3.4 > Reporter: Thach Tran > > To reproduce, one can essentially build TS with Lua support and put a rule in > remap.config indicating using lua.so as plugin. > Next, do a couple of requests to start things off and then touch remap.config > follows by traffic_line -x. It might take a couple of tries but eventually > one will get a crash. The stack trace is typically as follows. > {noformat} > #0 0x00002b5a70f6bfd2 in lj_str_new (L=0x209c3d0, str=0x2b5a70d3b079 > "release", lenx=<optimised out>) at lj_str.c:123 > #1 0x00002b5a70f73b97 in lua_getfield (L=0x209c3d0, idx=<optimised out>, > k=0x2b5a70d3b079 "release") at lj_api.c:749 > #2 0x00002b5a70d35fed in LuaPluginRelease (lua=0x209c3d0) at remap.cc:30 > #3 0x00002b5a70d362a5 in TSRemapDeleteInstance (ih=0x209c3d0) at remap.cc:80 > #4 0x00000000005c6721 in url_mapping::delete_instance (this=0x209b400, > index=0) at UrlMapping.cc:81 > #5 0x00000000005c6805 in url_mapping::~url_mapping (this=0x209b400, > __in_chrg=<optimised out>) at UrlMapping.cc:109 > #6 0x00000000005c34b3 in Trie<url_mapping>::Clear (this=0x209c5e0) at > ../../../lib/ts/Trie.h:213 > #7 0x00000000005c2c73 in Trie<url_mapping>::~Trie (this=0x209c5e0, > __in_chrg=<optimised out>) at ../../../lib/ts/Trie.h:54 > #8 0x00000000005c2ca6 in Trie<url_mapping>::~Trie (this=0x209c5e0, > __in_chrg=<optimised out>) at ../../../lib/ts/Trie.h:54 > #9 0x00000000005c23d2 in UrlMappingPathIndex::~UrlMappingPathIndex > (this=0x209c5a0, __in_chrg=<optimised out>) at UrlMappingPathIndex.cc:28 > #10 0x00000000005c2480 in UrlMappingPathIndex::~UrlMappingPathIndex > (this=0x209c5a0, __in_chrg=<optimised out>) at UrlMappingPathIndex.cc:30 > #11 0x00000000005bc281 in UrlRewrite::_destroyTable (this=0x20aa550, > h_table=0x209b130) at UrlRewrite.cc:630 > #12 0x00000000005c1d7a in UrlRewrite::DestroyStore (this=0x20aa550, > store=...) at UrlRewrite.h:124 > #13 0x00000000005bbf20 in UrlRewrite::~UrlRewrite (this=0x20aa550, > __in_chrg=<optimised out>) at UrlRewrite.cc:546 > #14 0x000000000052681f in UR_FreerContinuation::freeEvent > (this=0x2aaadc001a20, event=2, e=0x2aaabc1eb280) at ReverseProxy.cc:168 > #15 0x00000000004e366e in Continuation::handleEvent (this=0x2aaadc001a20, > event=2, data=0x2aaabc1eb280) at ../iocore/eventsystem/I_Continuation.h:146 > #16 0x00000000006e3f9a in EThread::process_event (this=0x2aaaaacae010, > e=0x2aaabc1eb280, calling_code=2) at UnixEThread.cc:142 > #17 0x00000000006e4332 in EThread::execute (this=0x2aaaaacae010) at > UnixEThread.cc:219 > #18 0x00000000006e31e2 in spawn_thread_internal (a=0x209b3b0) at Thread.cc:88 > #19 0x00002b5a611a9e9a in start_thread () from > /lib/x86_64-linux-gnu/libpthread.so.0 > #20 0x00002b5a630a3cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6 > #21 0x0000000000000000 in ?? () > {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira