Index: /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_cam.sql
===================================================================
--- /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_cam.sql	(revision 37299)
+++ /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_cam.sql	(revision 37300)
@@ -11,9 +11,9 @@
 LEFT JOIN
 
-(SELECT remote_id,remoteRun.stage,remoteRun.label,remoteComponent.stage_id,remoteRun.state 
-   FROM remoteRun 
+(SELECT remote_id,remoteRun.stage,remoteRun.label,remoteComponent.stage_id,remoteRun.state
+   FROM remoteRun
    JOIN remoteComponent USING (remote_id)
 WHERE
-remoteRun.stage = 'camera'
+remoteRun.stage = 'camera' and remoteComponent.state != 'retry'
 -- where hook %s
 ) AS R
Index: /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_chip.sql
===================================================================
--- /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_chip.sql	(revision 37299)
+++ /tags/ipp-pv3-20140717/ippTools/share/remotetool_definebyquery_chip.sql	(revision 37300)
@@ -11,9 +11,9 @@
 LEFT JOIN
 
-(SELECT remote_id,remoteRun.stage,remoteRun.label,remoteComponent.stage_id,remoteRun.state 
-   FROM remoteRun 
+(SELECT remote_id,remoteRun.stage,remoteRun.label,remoteComponent.stage_id,remoteRun.state
+   FROM remoteRun
    JOIN remoteComponent USING (remote_id)
 WHERE
-remoteRun.stage = 'chip'
+remoteRun.stage = 'chip' and remoteComponent.state != 'retry'
 -- where hook %s
 ) AS R
@@ -24,3 +24,3 @@
 
 
-       
+
Index: /tags/ipp-pv3-20140717/ippTools/src/remotetool.c
===================================================================
--- /tags/ipp-pv3-20140717/ippTools/src/remotetool.c	(revision 37299)
+++ /tags/ipp-pv3-20140717/ippTools/src/remotetool.c	(revision 37300)
@@ -531,6 +531,5 @@
   PS_ASSERT_PTR_NON_NULL(config, false);
   PXOPT_LOOKUP_S64(remote_id,  config->args, "-remote_id",    true, false);
-  PXOPT_LOOKUP_S64(stage_id,   config->args, "-stage_id",     true, false);
-  psAssert(remote_id && stage_id,"This should have failed before this point.");
+  psAssert(remote_id,"This should have failed before this point.");
 
   psMetadata *where = psMetadataAlloc();
@@ -540,4 +539,5 @@
   PXOPT_COPY_S64(config->args, where, "-remote_id", "remote_id", "==");
   PXOPT_COPY_S64(config->args, where, "-stage_id",  "stage_id",  "==");
+  PXOPT_COPY_STR(config->args, where, "-state",     "state",     "==");
 
   // Values to set
Index: /tags/ipp-pv3-20140717/ippTools/src/remotetoolConfig.c
===================================================================
--- /tags/ipp-pv3-20140717/ippTools/src/remotetoolConfig.c	(revision 37299)
+++ /tags/ipp-pv3-20140717/ippTools/src/remotetoolConfig.c	(revision 37300)
@@ -103,4 +103,5 @@
   ADD_OPT(S64, updatecomponentArgs, "-remote_id",     "remote_id to update", 0);
   ADD_OPT(S64, updatecomponentArgs, "-stage_id",      "stage_id to update", 0);
+  ADD_OPT(Str, updatecomponentArgs, "-state",         "limit to this remoteComponent state", NULL);
   ADD_OPT(Str, updatecomponentArgs, "-set_state",     "remoteComponent state to assign", NULL);
   ADD_OPT(Str, updatecomponentArgs, "-set_path_base", "remoteRun path_base to assign", NULL);
