SWI-Prolog / pengines

Pengine and Prolog scratchpad
BSD 2-Clause "Simplified" License
56 stars 16 forks source link

not really destroying #14

Closed Anniepoo closed 8 years ago

Anniepoo commented 8 years ago

tl;dr - this turned out to be me

I don't fully have a repro case for this yet, but wanted to start an issue so we can track it.

Yesterday I was working on JavaPengines. The test server I'm using just starts an http server and loads pengines. I'm not changing the timeout.

I start my Java client back up and sent a /create message and get this back

{"answer":{"data":[{"X":{"args":["taco"],"functor":"a"},"Y":3}],"event":"success","id":"03d18c99-6da2-4434-8eac-4144069f720a","more":true,"projection":["X","Y"],"time":0.000020260000000000243},"event":"create","id":"03d18c99-6da2-4434-8eac-4144069f720a","slave_limit":3}

Strange part is, that query is from yesterday!

I had a bunch of debug turned on, so captured this in the debug monitor. Notably, the pengine in question was destroyed.

So why is the server hanging onto that old query???

),answer(success('03d18c99-6da2-4434-8eac-4144069f720a',[json{'X':a(taco),'Y':3}],2.0260000000000243e-5,true))]) [Thread 13] Sending create('03d18c99-6da2-4434-8eac-4144069f720a',[slave_limit(3),answer(success('03d18c99-6da2-4434-8eac-4144069f720a',[json{'X':a(taco),'Y':3}],2.0260000000000243e-5,true))]), timout: 300 [Thread 9] Got create('03d18c99-6da2-4434-8eac-4144069f720a',[slave_limit(3),answer(success('03d18c99-6da2-4434-8eac-4144069f720a',[json{'X':a(taco),'Y':3}],2.0260000000000243e-5,true))]) from (0x7f634002d920) [Thread 9] DESTROY? create('03d18c99-6da2-4434-8eac-4144069f720a',[slave_limit(3),answer(success('03d18c99-6da2-4434-8eac-4144069f720a',[json{'X':a(taco),'Y':3}],2.0260000000000243e-5,true))]) [Thread 9] Running hook: header [Thread 9] Field: [cache_control('no-cache, no-store, must-revalidate'),pragma('no-cache'),expires('0'),content_type('application/json; charset=UTF-8')] [Thread 9] Transfer-encoding: none [Thread 9] Running hook: send_header [Thread 9] Header: [connection('keep-alive'),cache_control('no-cache, no-store, must-revalidate'),pragma('no-cache'),expires('0'),content_type('application/json; charset=UTF-8')] [Thread 9] Running hook: close [Thread 9] [35] 200 OK (0.000 seconds; 326 bytes) [Thread 9] Wiping posted data [Thread httpd@9900_4] Got job requeue(stream>(0x7f6368026e80),<stream>(0x7f6368027a70),user:http_dispatch,[protocol(http),peer(ip(127,0,0,1)),pool(client('httpd@9900',user:http_dispatch,<stream(0x7f6368026e80),(0x7f6368027a70)))]) [Thread httpd@9900_4] Waiting for keep-alive ... [Thread httpd@9900_4] Timeout on keep-alive connection [Thread httpd@9900_4] Closing connection from ip(127,0,0,1) [Thread httpd@9900_4] Waiting for a job ... [Thread 11] '9be79c5f-6050-4081-8477-516588fd186e': 6 = destroy => 1 [Thread 11] Reply to (0x7f634002abd0): destroy('9be79c5f-6050-4081-8477-516588fd186e') [Thread 11] Sending destroy('9be79c5f-6050-4081-8477-516588fd186e'), timout: 300 [Thread 12] 'c9c19ec8-d5b9-44e2-8bcb-8208b23eada8': 6 = destroy => 1 [Thread 12] Reply to (0x7f634002c490): destroy('c9c19ec8-d5b9-44e2-8bcb-8208b23eada8') [Thread 12] Sending destroy('c9c19ec8-d5b9-44e2-8bcb-8208b23eada8'), timout: 300

Anniepoo commented 8 years ago

Sorry - this was caused by my own fumble fingeredness, as in I forced some behavior by adding debug code and didn't remove it ... oops.

My bad

JanWielemaker commented 8 years ago

I think JavaPengines is a great idea!