シェルスクリプトから、killコマンドを使用してバックグラウンド関数プロセスを強制終了しています。この関数は、sqlplusを使用してSQLプロシージャを呼び出します。
func_foo(){
retval=`sqlplus -s $USER_NAME/$PWD <<EOF
set pages 0 lines 120 trimout on trimspool on tab off echo off verify off feed off serverout on
exec pkg_xyz.proc_abc();
exit;
EOF`
}
func_foo&
pid_func_foo=$!
sleep 5
kill $pid_func_foo 2>/dev/null
wait $pid_func_foo 2>/dev/null
このアプローチの問題は、関数プロセスが強制終了されても、Oracleプロセスが実行され続けることです。Oracleプロセスは強制終了されていません。私はオラクルを初めて使用します。このシナリオの処理方法がわかりません。このシナリオの処理方法に関するヒントを教えてください。