"no more rows" isn't an ERROR
authorAlan T. DeKok <aland@freeradius.org>
Fri, 13 Jan 2017 15:42:27 +0000 (10:42 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 13 Jan 2017 15:42:27 +0000 (10:42 -0500)
src/modules/rlm_sql/rlm_sql.c
src/modules/rlm_sql/sql.c

index b6fbf37..07a0e68 100644 (file)
@@ -180,7 +180,11 @@ static ssize_t sql_xlat(void *instance, REQUEST *request, char const *query, cha
                rcode = rlm_sql_query(inst, request, &handle, query);
                if (rcode != RLM_SQL_OK) {
                query_error:
-                       RERROR("SQL query failed: %s", fr_int2str(sql_rcode_table, rcode, "<INVALID>"));
+                       if (rcode != RLM_SQL_NO_MORE_ROWS) {
+                               RERROR("SQL query failed: %s", fr_int2str(sql_rcode_table, rcode, "<INVALID>"));
+                       } else {
+                               RDEBUG("No rows were returned.");
+                       }
 
                        ret = -1;
                        goto finish;
index 51ba11d..8a5de73 100644 (file)
@@ -240,7 +240,11 @@ sql_rcode_t rlm_sql_fetch_row(rlm_sql_t *inst, REQUEST *request, rlm_sql_handle_
         */
        ret = (inst->module->sql_fetch_row)(*handle, inst->config);
        if (ret < 0) {
-               MOD_ROPTIONAL(RERROR, ERROR, "Error fetching row");
+               if (ret != RLM_SQL_NO_MORE_ROWS) {
+                       MOD_ROPTIONAL(RERROR, ERROR, "Error fetching row");
+               } else {
+                       MOD_ROPTIONAL(RDEBUG, DEBUG, "No rows were returned.");
+               }
 
                rlm_sql_print_error(inst, request, *handle, false);
        }