aimpsmile opened a new issue #1384: bug: admin api  setting upstream config 
checks , clean_handlers  function is nil
URL: https://github.com/apache/incubator-apisix/issues/1384
 
 
   ### Issue description
   upstream conf eg:
   ```json
   {
       "desc": "AUTO-aimgo-web-v1.21-passport",
       "retries": 1,
       "key":"",
       "hash_on": "vars",
       "enable_websocket": false,
       "timeout": {
           "connect": 0.5,
           "send": 1,
           "read": 2
       },
       "checks": {
           "active": {
               "unhealthy": {
                   "http_statuses": [
                       429,
                       404,
                       500,
                       501,
                       502,
                       503,
                       504,
                       505
                   ],
                   "interval": 1,
                   "timeouts": 3,
                   "http_failures": 2,
                   "tcp_failures": 2
               },
               "type": "http",
               "http_path": "/health",
               "healthy": {
                   "successes": 1,
                   "interval": 2,
                   "http_statuses": [
                       200,
                       302
                   ]
               },
               "req_headers": [
                   "User-Agent: apisix.health,curl/7.29.0"
               ],
               "timeout": 1,
               "https_verify_certificate": true,
               "concurrency": 10
           },
           "passive": {
               "unhealthy": {
                   "http_failures": 3,
                   "http_statuses": [
                       500,
                       501,
                       502,
                       503,
                       504,
                       505,
                       506
                   ],
                   "tcp_failures": 3,
                   "timeouts": 7
               },
               "healthy": {
                   "http_statuses": [
                       200,
                       201
                   ],
                   "successes": 3
               },
               "type": "http"
           }
       },
       "nodes": {
           "100.64.0.3:40940": 1
       },
       "type": "roundrobin"
   }
   ```
   first add config happen error, error info eg:
   ```
   2020/04/01 17:34:12 [error] 5307#0: *21439 failed to run balancer_by_lua*: 
/usr/local/apisix/lua/apisix/balancer.lua:106: bad argument #1 to 'insert' 
(table expected, got nil)
   stack traceback:
           [C]: in function 'insert'
           /usr/local/apisix/lua/apisix/balancer.lua:106: in function 
'create_obj_fun'
           /usr/local/apisix/lua/apisix/core/lrucache.lua:66: in function 
'lrucache_checker'
           /usr/local/apisix/lua/apisix/balancer.lua:127: in function 
'fetch_healthchecker'
           /usr/local/apisix/lua/apisix/balancer.lua:248: in function 
'pick_server'
           /usr/local/apisix/lua/apisix/balancer.lua:313: in function 
'load_balancer'
           /usr/local/apisix/lua/apisix.lua:486: in function 
'http_balancer_phase'
           balancer_by_lua:2: in main chunk while connecting to upstream, 
client: 192.168.132.181, server: , request: "GET /v1/passport/hello/222 
HTTP/1.1", host: "web.uqudu.com:8888"
   
   ```
   
   ### Environment
   
   * apisix version (cmd: `apisix version`):  master And 1.0
   * OS: centos7
   
   ### Minimal test code / Steps to reproduce the issue
   1. first call admin api write upstream config after request server api error 
occurred.
   2. restart apisix server,  request server api  get right
   3. guess  should modify code ,not restart also is success! eg:
   ``` lua
   healthcheck_parent.clean_handlers = {}
   upstream.parent.clean_handlers = {}
   ```
   
   
   ### What's the actual result? (including assertion message & call stack if 
applicable)
   
   
   
   ### What's the expected result?
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to