Hi, We have quite a few Lua scripts that were written for use with ATS 7.1.4 and earlier. We are looking to migrate to ATS 9.1.1, but it seems like the garbage collection that is supposed to happen during a "traffic_ctl config reload" (reload a remap configuration file containing remap lines using the Lua plugin) does not seem to be happening.
Back in 2016, my colleague submitted a PR (commit 7e52a) which called the LuaJIT garbage collector during the remap instance new and delete operations within the Lua plugin. I noticed that in 2020 these garbage collector calls were removed by another PR (commit 36a8cd). However, this does not seem to be the cause of the issue since the garbage collection still does not happen even if I revert this commit in my local tree. Our Lua scripts are using the following form - local <variables> [ I believe this are file scope local variables when declared this way. ] ... function a() function b() ... We do *not* use any __clean__ functions (and have not had to in the past). I have tested with both 9.1.1 and 9.2.x. I have tested with both Ubuntu 20.04 LTS default LuaJIT (allows 2GB in Linux) and latest LuaJIT (removes 2GB limit). Both show version v2.1.0-beta3. So is this change by design, or is it an issue? Thanks, Peter Chou