SOLR-8946: fix bin/post stdin detection. faulty on Ubuntu; maybe others

(cherry picked from commit 7833f7f)
This commit is contained in:
David Smiley 2016-04-15 22:06:54 -04:00
parent 9bcdb4724c
commit e1a5665fee
2 changed files with 6 additions and 5 deletions

View File

@ -87,6 +87,8 @@ Bug Fixes
* SOLR-7729: ConcurrentUpdateSolrClient ignores the collection parameter in some methods.
(Nicolas Gavalda, Jorge Luis Betancourt Gonzalez via Mark Miller)
* SOLR-8946: bin/post failed to detect stdin usage on Ubuntu; maybe other unixes. (David Smiley)
Optimizations
----------------------

View File

@ -140,7 +140,7 @@ while [ $# -gt 0 ]; do
shift
PROPS+=("-Dport=$1")
elif [[ ("$1" == "-d" || "$1" == "--data" || "$1" == "-") ]]; then
if [[ -s /dev/stdin ]]; then
if [[ ! -t 0 ]]; then
MODE="stdin"
else
# when no stdin exists and -d specified, the rest of the arguments
@ -150,6 +150,9 @@ while [ $# -gt 0 ]; do
if [[ $# -gt 0 ]]; then
ARGS=("$@")
shift $#
else
# SPT needs a valid args string, useful for 'bin/post -c foo -d' to force a commit
ARGS+=("<add/>")
fi
fi
else
@ -209,10 +212,6 @@ if [[ $MODE != "stdin" && $MODE != "args" ]]; then
PARAMS=("${URLS[@]}")
fi
else
if [[ ${#ARGS[@]} == 0 ]]; then
# SPT needs a valid (to post to Solr) args string, useful for 'bin/post -c foo -d' to force a commit
ARGS+=("<add/>")
fi
PARAMS=("${ARGS[@]}")
fi