You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@couchdb.apache.org by Scott Weber <sc...@sbcglobal.net> on 2013/10/23 19:26:45 UTC
Running Extern PHP Script
Hello All,
I am trying to run a PHP script, using this basic tutorial:
http://wiki.apache.org/couchdb/ExternalProcesses
My test script is AMAZINGLY simple, as a tutorial to test with:
<?php
$line1 = trim(fgets(STDIN));
fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
fflush(STDOUT);
?>
It runs from the command line just fine.
It runs from couch every *other* time. That is when I press 'refresh' on the browser, it goes between the proper output and an error. (This tells me the INI is set up correctly)
I am running on a Raspberry Pi, if that make any difference.
I have tried terminating with both "\r\n" and just "\n" but it makes no difference.
The couch log is rather long, so I pasted the "reason for termination" below. I don't know what "noproc" means in the log.
Can anyone tell me what I have done wrong? And why it is executing properly every *other* time?
Any advice would be appreciated.
-Scott Weber
---- Segment from the log when the failure occurs -------------
** When Server state == {"Test","php /srv/dcc/php/test1.php",<0.3037.0>}
** Reason for termination ==
** {noproc,
{gen_server,call,
[<0.3037.0>,
{prompt,
{[{<<"info">>,
{[{db_name,<<"source">>},
{doc_count,3},
{doc_del_count,0},
{update_seq,93},
{purge_seq,0},
{compact_running,false},
{disk_size,1388645},
{data_size,1038753},
{instance_start_time,<<"1382548060839095">>},
{disk_format_version,6},
{committed_update_seq,93}]}},
{<<"id">>,null},
{<<"uuid">>,<<"bc7971280ff76f9ec6c648763d004211">>},
{<<"method">>,'GET'},
{<<"requested_path">>,[<<"source">>,<<"_TEST">>]},
{<<"path">>,[<<"source">>,<<"_TEST">>]},
{<<"raw_path">>,<<"/source/_TEST">>},
{<<"query">>,{[]}},
{<<"headers">>,
{[{<<"Accept">>,
<<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
{<<"Accept-Encoding">>,<<"gzip, deflate">>},
{<<"Accept-Language">>,<<"en-US,en;q=0.5">>},
{<<"Cache-Control">>,<<"max-age=0">>},
{<<"Connection">>,<<"keep-alive">>},
{<<"Cookie">>,
<<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
{<<"Host">>,<<"raspberrypi2:5984">>},
{<<"User-Agent">>,
<<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
{<<"body">>,undefined},
{<<"peer">>,<<"192.168.1.70">>},
{<<"form">>,{[]}},
{<<"cookie">>,
{[{<<"AuthSession">>,
<<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
{<<"userCtx">>,
{[{<<"db">>,<<"source">>},
{<<"name">>,null},
{<<"roles">>,[]}]}},
{<<"secObj">>,{[]}}]}},
infinity]}}
[Wed, 23 Oct 2013 17:10:01 GMT] [error] [<0.3036.0>] {error_report,<0.31.0>,
{<0.3036.0>,crash_report,
[[{initial_call,
{couch_external_server,init,['Argument__1']}},
{pid,<0.3036.0>},
{registered_name,[]},
{error_info,
{exit,
{noproc,
{gen_server,call,
[<0.3037.0>,
{prompt,
{[{<<"info">>,
{[{db_name,<<"source">>},
{doc_count,3},
{doc_del_count,0},
{update_seq,93},
{purge_seq,0},
{compact_running,false},
{disk_size,1388645},
{data_size,1038753},
{instance_start_time,
<<"1382548060839095">>},
{disk_format_version,6},
{committed_update_seq,93}]}},
{<<"id">>,null},
{<<"uuid">>,
<<"bc7971280ff76f9ec6c648763d004211">>},
{<<"method">>,'GET'},
{<<"requested_path">>,
[<<"source">>,<<"_TEST">>]},
{<<"path">>,[<<"source">>,<<"_TEST">>]},
{<<"raw_path">>,<<"/source/_TEST">>},
{<<"query">>,{[]}},
{<<"headers">>,
{[{<<"Accept">>,
<<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
{<<"Accept-Encoding">>,
<<"gzip, deflate">>},
{<<"Accept-Language">>,
<<"en-US,en;q=0.5">>},
{<<"Cache-Control">>,<<"max-age=0">>},
{<<"Connection">>,<<"keep-alive">>},
{<<"Cookie">>,
<<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
{<<"Host">>,<<"raspberrypi2:5984">>},
{<<"User-Agent">>,
<<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
{<<"body">>,undefined},
{<<"peer">>,<<"192.168.1.70">>},
{<<"form">>,{[]}},
{<<"cookie">>,
{[{<<"AuthSession">>,
<<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
{<<"userCtx">>,
{[{<<"db">>,<<"source">>},
{<<"name">>,null},
{<<"roles">>,[]}]}},
{<<"secObj">>,{[]}}]}},
infinity]}},
[{gen_server,terminate,6,
[{file,"gen_server.erl"},{line,747}]},
{proc_lib,init_p_do_apply,3,
[{file,"proc_lib.erl"},{line,227}]}]}},
{ancestors,
[couch_external_manager,couch_secondary_services,
couch_server_sup,<0.32.0>]},
{messages,[]},
{links,[<0.3033.0>]},
{dictionary,[]},
{trap_exit,true},
{status,running},
{heap_size,987},
{stack_size,24},
{reductions,1197}],
[]]}}
[Wed, 23 Oct 2013 17:10:01 GMT] [info] [<0.3033.0>] EXTERNAL: Server <0.3036.0> died. (reason: {noproc,
{gen_server,
call,
[<0.3037.0>,
{prompt,
{[{<<"info">>,
{[{db_name,
<<"source">>},
{doc_count,
3},
{doc_del_count,
0},
{update_seq,
93},
{purge_seq,
0},
{compact_running,
false},
{disk_size,
1388645},
{data_size,
1038753},
{instance_start_time,
<<"1382548060839095">>},
{disk_format_version,
6},
{committed_update_seq,
93}]}},
{<<"id">>,
null},
{<<"uuid">>,
<<"bc7971280ff76f9ec6c648763d004211">>},
{<<"method">>,
'GET'},
{<<"requested_path">>,
[<<"source">>,
<<"_TEST">>]},
{<<"path">>,
[<<"source">>,
<<"_TEST">>]},
{<<"raw_path">>,
<<"/source/_TEST">>},
{<<"query">>,
{[]}},
{<<"headers">>,
{[{<<"Accept">>,
<<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
{<<"Accept-Encoding">>,
<<"gzip, deflate">>},
{<<"Accept-Language">>,
<<"en-US,en;q=0.5">>},
{<<"Cache-Control">>,
<<"max-age=0">>},
{<<"Connection">>,
<<"keep-alive">>},
{<<"Cookie">>,
<<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
{<<"Host">>,
<<"raspberrypi2:5984">>},
{<<"User-Agent">>,
<<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
{<<"body">>,
undefined},
{<<"peer">>,
<<"192.168.1.70">>},
{<<"form">>,
{[]}},
{<<"cookie">>,
{[{<<"AuthSession">>,
<<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
{<<"userCtx">>,
{[{<<"db">>,
<<"source">>},
{<<"name">>,
null},
{<<"roles">>,
[]}]}},
{<<"secObj">>,
{[]}}]}},
infinity]}})
Re: Running Extern PHP Script
Posted by "matt j. sorenson" <ma...@sorensonbros.net>.
I don't speak python either, but 'while' is a looping control structure in
all the things I do speak.
On Wed, Oct 23, 2013 at 1:25 PM, Scott Weber <sc...@sbcglobal.net>wrote:
> Ah, interesting.
>
> I don't speak Python, but it didn't look like that script had any loop in
> it.
>
> That might be a good thing to mention in the "Common Pitfalls" section
>
> Thanks.
>
>
>
>
> ________________________________
> From: Robert Newson <rn...@apache.org>
> To: user@couchdb.apache.org; Scott Weber <sc...@sbcglobal.net>
> Sent: Wednesday, October 23, 2013 12:29 PM
> Subject: Re: Running Extern PHP Script
>
>
> Your process is required to loop over stdin and keep processing, rather
> than immediately exiting.
>
> B.
>
> On 23 Oct 2013, at 18:26, Scott Weber <sc...@sbcglobal.net> wrote:
>
> > Hello All,
> > I am trying to run a PHP script, using this basic tutorial:
> > http://wiki.apache.org/couchdb/ExternalProcesses
> >
> > My test script is AMAZINGLY simple, as a tutorial to test with:
> > <?php
> > $line1 = trim(fgets(STDIN));
> > fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
> > fflush(STDOUT);
> > ?>
> >
> > It runs from the command line just fine.
> >
> >
> > It runs from couch every *other* time. That is when I press 'refresh'
> on the browser, it goes between the proper output and an error. (This
> tells me the INI is set up correctly)
> >
> >
> > I am running on a Raspberry Pi, if that make any difference.
> >
> > I have tried terminating with both "\r\n" and just "\n" but it makes
> no difference.
> > The couch log is rather long, so I pasted the "reason for termination"
> below. I don't know what "noproc" means in the log.
> >
> > Can anyone tell me what I have done wrong? And why it is executing
> properly every *other* time?
> > Any advice would be appreciated.
> >
> > -Scott Weber
> >
> >
> > ---- Segment from the log when the failure occurs -------------
> > ** When Server state == {"Test","php /srv/dcc/php/test1.php",<0.3037.0>}
> > ** Reason for termination ==
> > ** {noproc,
> > {gen_server,call,
> > [<0.3037.0>,
> > {prompt,
> > {[{<<"info">>,
> > {[{db_name,<<"source">>},
> > {doc_count,3},
> > {doc_del_count,0},
> > {update_seq,93},
> > {purge_seq,0},
> > {compact_running,false},
> > {disk_size,1388645},
> > {data_size,1038753},
> > {instance_start_time,<<"1382548060839095">>},
> > {disk_format_version,6},
> > {committed_update_seq,93}]}},
> > {<<"id">>,null},
> > {<<"uuid">>,<<"bc7971280ff76f9ec6c648763d004211">>},
> > {<<"method">>,'GET'},
> > {<<"requested_path">>,[<<"source">>,<<"_TEST">>]},
> > {<<"path">>,[<<"source">>,<<"_TEST">>]},
> > {<<"raw_path">>,<<"/source/_TEST">>},
> > {<<"query">>,{[]}},
> > {<<"headers">>,
> > {[{<<"Accept">>,
> >
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> > {<<"Accept-Encoding">>,<<"gzip, deflate">>},
> > {<<"Accept-Language">>,<<"en-US,en;q=0.5">>},
> > {<<"Cache-Control">>,<<"max-age=0">>},
> > {<<"Connection">>,<<"keep-alive">>},
> > {<<"Cookie">>,
> >
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> > {<<"Host">>,<<"raspberrypi2:5984">>},
> > {<<"User-Agent">>,
> > <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0)
> Gecko/20100101 Firefox/24.0">>}]}},
> > {<<"body">>,undefined},
> > {<<"peer">>,<<"192.168.1.70">>},
> > {<<"form">>,{[]}},
> > {<<"cookie">>,
> > {[{<<"AuthSession">>,
> >
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> > {<<"userCtx">>,
> > {[{<<"db">>,<<"source">>},
> > {<<"name">>,null},
> > {<<"roles">>,[]}]}},
> > {<<"secObj">>,{[]}}]}},
> > infinity]}}
> >
> > [Wed, 23 Oct 2013 17:10:01 GMT] [error] [<0.3036.0>]
> {error_report,<0.31.0>,
> > {<0.3036.0>,crash_report,
> > [[{initial_call,
> > {couch_external_server,init,['Argument__1']}},
> > {pid,<0.3036.0>},
> > {registered_name,[]},
> > {error_info,
> > {exit,
> > {noproc,
> > {gen_server,call,
> > [<0.3037.0>,
> > {prompt,
> > {[{<<"info">>,
> > {[{db_name,<<"source">>},
> > {doc_count,3},
> > {doc_del_count,0},
> > {update_seq,93},
> > {purge_seq,0},
> > {compact_running,false},
> > {disk_size,1388645},
> > {data_size,1038753},
> > {instance_start_time,
> > <<"1382548060839095">>},
> > {disk_format_version,6},
> > {committed_update_seq,93}]}},
> > {<<"id">>,null},
> > {<<"uuid">>,
> >
> <<"bc7971280ff76f9ec6c648763d004211">>},
> > {<<"method">>,'GET'},
> > {<<"requested_path">>,
> > [<<"source">>,<<"_TEST">>]},
> > {<<"path">>,[<<"source">>,<<"_TEST">>]},
> > {<<"raw_path">>,<<"/source/_TEST">>},
> > {<<"query">>,{[]}},
> > {<<"headers">>,
> > {[{<<"Accept">>,
> >
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> > {<<"Accept-Encoding">>,
> > <<"gzip, deflate">>},
> > {<<"Accept-Language">>,
> > <<"en-US,en;q=0.5">>},
> >
> {<<"Cache-Control">>,<<"max-age=0">>},
> > {<<"Connection">>,<<"keep-alive">>},
> > {<<"Cookie">>,
> >
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> > {<<"Host">>,<<"raspberrypi2:5984">>},
> > {<<"User-Agent">>,
> > <<"Mozilla/5.0 (Windows NT 6.1;
> WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> > {<<"body">>,undefined},
> > {<<"peer">>,<<"192.168.1.70">>},
> > {<<"form">>,{[]}},
> > {<<"cookie">>,
> > {[{<<"AuthSession">>,
> >
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> > {<<"userCtx">>,
> > {[{<<"db">>,<<"source">>},
> > {<<"name">>,null},
> > {<<"roles">>,[]}]}},
> > {<<"secObj">>,{[]}}]}},
> > infinity]}},
> > [{gen_server,terminate,6,
> > [{file,"gen_server.erl"},{line,747}]},
> > {proc_lib,init_p_do_apply,3,
> > [{file,"proc_lib.erl"},{line,227}]}]}},
> > {ancestors,
> >
> [couch_external_manager,couch_secondary_services,
> > couch_server_sup,<0.32.0>]},
> > {messages,[]},
> > {links,[<0.3033.0>]},
> > {dictionary,[]},
> > {trap_exit,true},
> > {status,running},
> > {heap_size,987},
> > {stack_size,24},
> > {reductions,1197}],
> > []]}}
> > [Wed, 23 Oct 2013 17:10:01 GMT] [info] [<0.3033.0>] EXTERNAL: Server
> <0.3036.0> died. (reason: {noproc,
> >
> {gen_server,
> > call,
> >
> [<0.3037.0>,
> >
> {prompt,
> >
> {[{<<"info">>,
> >
> {[{db_name,
> >
> <<"source">>},
> >
> {doc_count,
> >
> 3},
> >
> {doc_del_count,
> >
> 0},
> >
> {update_seq,
> >
> 93},
> >
> {purge_seq,
> >
> 0},
> >
> {compact_running,
> >
> false},
> >
> {disk_size,
> >
> 1388645},
> >
> {data_size,
> >
> 1038753},
> >
> {instance_start_time,
> >
> <<"1382548060839095">>},
> >
> {disk_format_version,
> >
> 6},
> >
> {committed_update_seq,
> >
> 93}]}},
> >
> {<<"id">>,
> >
> null},
> >
> {<<"uuid">>,
> >
> <<"bc7971280ff76f9ec6c648763d004211">>},
> >
> {<<"method">>,
> >
> 'GET'},
> >
> {<<"requested_path">>,
> >
> [<<"source">>,
> >
> <<"_TEST">>]},
> >
> {<<"path">>,
> >
> [<<"source">>,
> >
> <<"_TEST">>]},
> >
> {<<"raw_path">>,
> >
> <<"/source/_TEST">>},
> >
> {<<"query">>,
> >
> {[]}},
> >
> {<<"headers">>,
> >
> {[{<<"Accept">>,
> >
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> >
> {<<"Accept-Encoding">>,
> >
> <<"gzip, deflate">>},
> >
> {<<"Accept-Language">>,
> >
> <<"en-US,en;q=0.5">>},
> >
> {<<"Cache-Control">>,
> >
> <<"max-age=0">>},
> >
> {<<"Connection">>,
> >
> <<"keep-alive">>},
> >
> {<<"Cookie">>,
> >
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> >
> {<<"Host">>,
> >
> <<"raspberrypi2:5984">>},
> >
> {<<"User-Agent">>,
> >
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101
> Firefox/24.0">>}]}},
> >
> {<<"body">>,
> >
> undefined},
> >
> {<<"peer">>,
> >
> <<"192.168.1.70">>},
> >
> {<<"form">>,
> >
> {[]}},
> >
> {<<"cookie">>,
> >
> {[{<<"AuthSession">>,
> >
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> >
> {<<"userCtx">>,
> >
> {[{<<"db">>,
> >
> <<"source">>},
> >
> {<<"name">>,
> >
> null},
> >
> {<<"roles">>,
> >
> []}]}},
> >
> {<<"secObj">>,
> >
> {[]}}]}},
> >
> infinity]}})
Re: Running Extern PHP Script
Posted by Scott Weber <sc...@sbcglobal.net>.
Ah, interesting.
I don't speak Python, but it didn't look like that script had any loop in it.
That might be a good thing to mention in the "Common Pitfalls" section
Thanks.
________________________________
From: Robert Newson <rn...@apache.org>
To: user@couchdb.apache.org; Scott Weber <sc...@sbcglobal.net>
Sent: Wednesday, October 23, 2013 12:29 PM
Subject: Re: Running Extern PHP Script
Your process is required to loop over stdin and keep processing, rather than immediately exiting.
B.
On 23 Oct 2013, at 18:26, Scott Weber <sc...@sbcglobal.net> wrote:
> Hello All,
> I am trying to run a PHP script, using this basic tutorial:
> http://wiki.apache.org/couchdb/ExternalProcesses
>
> My test script is AMAZINGLY simple, as a tutorial to test with:
> <?php
> $line1 = trim(fgets(STDIN));
> fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
> fflush(STDOUT);
> ?>
>
> It runs from the command line just fine.
>
>
> It runs from couch every *other* time. That is when I press 'refresh' on the browser, it goes between the proper output and an error. (This tells me the INI is set up correctly)
>
>
> I am running on a Raspberry Pi, if that make any difference.
>
> I have tried terminating with both "\r\n" and just "\n" but it makes no difference.
> The couch log is rather long, so I pasted the "reason for termination" below. I don't know what "noproc" means in the log.
>
> Can anyone tell me what I have done wrong? And why it is executing properly every *other* time?
> Any advice would be appreciated.
>
> -Scott Weber
>
>
> ---- Segment from the log when the failure occurs -------------
> ** When Server state == {"Test","php /srv/dcc/php/test1.php",<0.3037.0>}
> ** Reason for termination ==
> ** {noproc,
> {gen_server,call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,<<"source">>},
> {doc_count,3},
> {doc_del_count,0},
> {update_seq,93},
> {purge_seq,0},
> {compact_running,false},
> {disk_size,1388645},
> {data_size,1038753},
> {instance_start_time,<<"1382548060839095">>},
> {disk_format_version,6},
> {committed_update_seq,93}]}},
> {<<"id">>,null},
> {<<"uuid">>,<<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,'GET'},
> {<<"requested_path">>,[<<"source">>,<<"_TEST">>]},
> {<<"path">>,[<<"source">>,<<"_TEST">>]},
> {<<"raw_path">>,<<"/source/_TEST">>},
> {<<"query">>,{[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,<<"gzip, deflate">>},
> {<<"Accept-Language">>,<<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,<<"max-age=0">>},
> {<<"Connection">>,<<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,<<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,undefined},
> {<<"peer">>,<<"192.168.1.70">>},
> {<<"form">>,{[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,<<"source">>},
> {<<"name">>,null},
> {<<"roles">>,[]}]}},
> {<<"secObj">>,{[]}}]}},
> infinity]}}
>
> [Wed, 23 Oct 2013 17:10:01 GMT] [error] [<0.3036.0>] {error_report,<0.31.0>,
> {<0.3036.0>,crash_report,
> [[{initial_call,
> {couch_external_server,init,['Argument__1']}},
> {pid,<0.3036.0>},
> {registered_name,[]},
> {error_info,
> {exit,
> {noproc,
> {gen_server,call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,<<"source">>},
> {doc_count,3},
> {doc_del_count,0},
> {update_seq,93},
> {purge_seq,0},
> {compact_running,false},
> {disk_size,1388645},
> {data_size,1038753},
> {instance_start_time,
> <<"1382548060839095">>},
> {disk_format_version,6},
> {committed_update_seq,93}]}},
> {<<"id">>,null},
> {<<"uuid">>,
> <<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,'GET'},
> {<<"requested_path">>,
> [<<"source">>,<<"_TEST">>]},
> {<<"path">>,[<<"source">>,<<"_TEST">>]},
> {<<"raw_path">>,<<"/source/_TEST">>},
> {<<"query">>,{[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,
> <<"gzip, deflate">>},
> {<<"Accept-Language">>,
> <<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,<<"max-age=0">>},
> {<<"Connection">>,<<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,<<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,undefined},
> {<<"peer">>,<<"192.168.1.70">>},
> {<<"form">>,{[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,<<"source">>},
> {<<"name">>,null},
> {<<"roles">>,[]}]}},
> {<<"secObj">>,{[]}}]}},
> infinity]}},
> [{gen_server,terminate,6,
> [{file,"gen_server.erl"},{line,747}]},
> {proc_lib,init_p_do_apply,3,
> [{file,"proc_lib.erl"},{line,227}]}]}},
> {ancestors,
> [couch_external_manager,couch_secondary_services,
> couch_server_sup,<0.32.0>]},
> {messages,[]},
> {links,[<0.3033.0>]},
> {dictionary,[]},
> {trap_exit,true},
> {status,running},
> {heap_size,987},
> {stack_size,24},
> {reductions,1197}],
> []]}}
> [Wed, 23 Oct 2013 17:10:01 GMT] [info] [<0.3033.0>] EXTERNAL: Server <0.3036.0> died. (reason: {noproc,
> {gen_server,
> call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,
> <<"source">>},
> {doc_count,
> 3},
> {doc_del_count,
> 0},
> {update_seq,
> 93},
> {purge_seq,
> 0},
> {compact_running,
> false},
> {disk_size,
> 1388645},
> {data_size,
> 1038753},
> {instance_start_time,
> <<"1382548060839095">>},
> {disk_format_version,
> 6},
> {committed_update_seq,
> 93}]}},
> {<<"id">>,
> null},
> {<<"uuid">>,
> <<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,
> 'GET'},
> {<<"requested_path">>,
> [<<"source">>,
> <<"_TEST">>]},
> {<<"path">>,
> [<<"source">>,
> <<"_TEST">>]},
> {<<"raw_path">>,
> <<"/source/_TEST">>},
> {<<"query">>,
> {[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,
> <<"gzip, deflate">>},
> {<<"Accept-Language">>,
> <<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,
> <<"max-age=0">>},
> {<<"Connection">>,
> <<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,
> <<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,
> undefined},
> {<<"peer">>,
> <<"192.168.1.70">>},
> {<<"form">>,
> {[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,
> <<"source">>},
> {<<"name">>,
> null},
> {<<"roles">>,
> []}]}},
> {<<"secObj">>,
> {[]}}]}},
> infinity]}})
Re: Running Extern PHP Script
Posted by Robert Newson <rn...@apache.org>.
Your process is required to loop over stdin and keep processing, rather than immediately exiting.
B.
On 23 Oct 2013, at 18:26, Scott Weber <sc...@sbcglobal.net> wrote:
> Hello All,
> I am trying to run a PHP script, using this basic tutorial:
> http://wiki.apache.org/couchdb/ExternalProcesses
>
> My test script is AMAZINGLY simple, as a tutorial to test with:
> <?php
> $line1 = trim(fgets(STDIN));
> fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
> fflush(STDOUT);
> ?>
>
> It runs from the command line just fine.
>
>
> It runs from couch every *other* time. That is when I press 'refresh' on the browser, it goes between the proper output and an error. (This tells me the INI is set up correctly)
>
>
> I am running on a Raspberry Pi, if that make any difference.
>
> I have tried terminating with both "\r\n" and just "\n" but it makes no difference.
> The couch log is rather long, so I pasted the "reason for termination" below. I don't know what "noproc" means in the log.
>
> Can anyone tell me what I have done wrong? And why it is executing properly every *other* time?
> Any advice would be appreciated.
>
> -Scott Weber
>
>
> ---- Segment from the log when the failure occurs -------------
> ** When Server state == {"Test","php /srv/dcc/php/test1.php",<0.3037.0>}
> ** Reason for termination ==
> ** {noproc,
> {gen_server,call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,<<"source">>},
> {doc_count,3},
> {doc_del_count,0},
> {update_seq,93},
> {purge_seq,0},
> {compact_running,false},
> {disk_size,1388645},
> {data_size,1038753},
> {instance_start_time,<<"1382548060839095">>},
> {disk_format_version,6},
> {committed_update_seq,93}]}},
> {<<"id">>,null},
> {<<"uuid">>,<<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,'GET'},
> {<<"requested_path">>,[<<"source">>,<<"_TEST">>]},
> {<<"path">>,[<<"source">>,<<"_TEST">>]},
> {<<"raw_path">>,<<"/source/_TEST">>},
> {<<"query">>,{[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,<<"gzip, deflate">>},
> {<<"Accept-Language">>,<<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,<<"max-age=0">>},
> {<<"Connection">>,<<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,<<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,undefined},
> {<<"peer">>,<<"192.168.1.70">>},
> {<<"form">>,{[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,<<"source">>},
> {<<"name">>,null},
> {<<"roles">>,[]}]}},
> {<<"secObj">>,{[]}}]}},
> infinity]}}
>
> [Wed, 23 Oct 2013 17:10:01 GMT] [error] [<0.3036.0>] {error_report,<0.31.0>,
> {<0.3036.0>,crash_report,
> [[{initial_call,
> {couch_external_server,init,['Argument__1']}},
> {pid,<0.3036.0>},
> {registered_name,[]},
> {error_info,
> {exit,
> {noproc,
> {gen_server,call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,<<"source">>},
> {doc_count,3},
> {doc_del_count,0},
> {update_seq,93},
> {purge_seq,0},
> {compact_running,false},
> {disk_size,1388645},
> {data_size,1038753},
> {instance_start_time,
> <<"1382548060839095">>},
> {disk_format_version,6},
> {committed_update_seq,93}]}},
> {<<"id">>,null},
> {<<"uuid">>,
> <<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,'GET'},
> {<<"requested_path">>,
> [<<"source">>,<<"_TEST">>]},
> {<<"path">>,[<<"source">>,<<"_TEST">>]},
> {<<"raw_path">>,<<"/source/_TEST">>},
> {<<"query">>,{[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,
> <<"gzip, deflate">>},
> {<<"Accept-Language">>,
> <<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,<<"max-age=0">>},
> {<<"Connection">>,<<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,<<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,undefined},
> {<<"peer">>,<<"192.168.1.70">>},
> {<<"form">>,{[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,<<"source">>},
> {<<"name">>,null},
> {<<"roles">>,[]}]}},
> {<<"secObj">>,{[]}}]}},
> infinity]}},
> [{gen_server,terminate,6,
> [{file,"gen_server.erl"},{line,747}]},
> {proc_lib,init_p_do_apply,3,
> [{file,"proc_lib.erl"},{line,227}]}]}},
> {ancestors,
> [couch_external_manager,couch_secondary_services,
> couch_server_sup,<0.32.0>]},
> {messages,[]},
> {links,[<0.3033.0>]},
> {dictionary,[]},
> {trap_exit,true},
> {status,running},
> {heap_size,987},
> {stack_size,24},
> {reductions,1197}],
> []]}}
> [Wed, 23 Oct 2013 17:10:01 GMT] [info] [<0.3033.0>] EXTERNAL: Server <0.3036.0> died. (reason: {noproc,
> {gen_server,
> call,
> [<0.3037.0>,
> {prompt,
> {[{<<"info">>,
> {[{db_name,
> <<"source">>},
> {doc_count,
> 3},
> {doc_del_count,
> 0},
> {update_seq,
> 93},
> {purge_seq,
> 0},
> {compact_running,
> false},
> {disk_size,
> 1388645},
> {data_size,
> 1038753},
> {instance_start_time,
> <<"1382548060839095">>},
> {disk_format_version,
> 6},
> {committed_update_seq,
> 93}]}},
> {<<"id">>,
> null},
> {<<"uuid">>,
> <<"bc7971280ff76f9ec6c648763d004211">>},
> {<<"method">>,
> 'GET'},
> {<<"requested_path">>,
> [<<"source">>,
> <<"_TEST">>]},
> {<<"path">>,
> [<<"source">>,
> <<"_TEST">>]},
> {<<"raw_path">>,
> <<"/source/_TEST">>},
> {<<"query">>,
> {[]}},
> {<<"headers">>,
> {[{<<"Accept">>,
> <<"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8">>},
> {<<"Accept-Encoding">>,
> <<"gzip, deflate">>},
> {<<"Accept-Language">>,
> <<"en-US,en;q=0.5">>},
> {<<"Cache-Control">>,
> <<"max-age=0">>},
> {<<"Connection">>,
> <<"keep-alive">>},
> {<<"Cookie">>,
> <<"AuthSession=cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>},
> {<<"Host">>,
> <<"raspberrypi2:5984">>},
> {<<"User-Agent">>,
> <<"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0">>}]}},
> {<<"body">>,
> undefined},
> {<<"peer">>,
> <<"192.168.1.70">>},
> {<<"form">>,
> {[]}},
> {<<"cookie">>,
> {[{<<"AuthSession">>,
> <<"cmlhbjo1MjY3RjAwNDq4lB9rSSuDo5wXUqWcP7cGNb63Gg">>}]}},
> {<<"userCtx">>,
> {[{<<"db">>,
> <<"source">>},
> {<<"name">>,
> null},
> {<<"roles">>,
> []}]}},
> {<<"secObj">>,
> {[]}}]}},
> infinity]}})
Re: Running Extern PHP Script
Posted by Steve Hammer <st...@dahammer.net>.
On Wed, Oct 23, 2013 at 10:26 AM, Scott Weber <sc...@sbcglobal.net> wrote:
> My test script is AMAZINGLY simple, as a tutorial to test with:
> <?php
> $line1 = trim(fgets(STDIN));
> fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
> fflush(STDOUT);
> ?>
Try the following modification to your test script. It loops the STDIN
input as Robert stated.
<?php
while($line1 = trim(fgets(STDIN))) {
fwrite(STDOUT, "{\"code\":200 , \"body\" : \"The script ran\" }\n");
fflush(STDOUT);
}
?>
-Steve
--
Steve Hammer
/* If Linux doesn't have the solution, you have the wrong problem */