On Tue, 2003-01-21 at 14:19, Egil Kvaleberg wrote:
> On Mon, 2003-01-13 at 18:31, Triebwasser, Mark wrote:
> > When does an update occur for the incoming host state file?
> 
> I will have a look.

It seems like the intention was that the state file should be updated,
but this did not always work. In particular for large groups.

The enclosed patch should fix this....

Egil

-------------------------------------------------------------------------------
Index: src/pull.c
===================================================================
RCS file: /home/cvs/newsx/src/pull.c,v
retrieving revision 1.17.2.1
diff -c -r1.17.2.1 pull.c
*** src/pull.c  14 Feb 2001 06:55:40 -0000      1.17.2.1
--- src/pull.c  21 Jan 2003 13:41:45 -0000
***************
*** 142,147 ****
--- 142,152 ----
                log_msg(L_DEBUG,"flushing spool...");
                flush_spool(0);
                bytes_in_spool = 0;
+ 
+               if (latest_where > 0) {
+                  /* checkpoint: last article retrieved */
+                  *wherep = latest_where;
+               }
            }
        }
        /* flush all remaining requests */
***************
*** 156,162 ****
        *wherep = where;
      } else {
        log_msg(L_DEBUGMORE,"transfer interrupted");
!       if (latest_where) {
            /* this was the last article we retieved */
            *wherep = latest_where;
            log_msg(L_DEBUGMORE,"latest article was %ld", latest_where);
--- 161,167 ----
        *wherep = where;
      } else {
        log_msg(L_DEBUGMORE,"transfer interrupted");
!       if (latest_where > 0) {
            /* this was the last article we retieved */
            *wherep = latest_where;
            log_msg(L_DEBUGMORE,"latest article was %ld", latest_where);
***************
*** 189,195 ****
      }
      if ((f = pull_tmp)) {
        pull_tmp = 0;
!       fclose(pull_tmp);
      }
  
      /* clean up and update host active */
--- 194,200 ----
      }
      if ((f = pull_tmp)) {
        pull_tmp = 0;
!       fclose(f);
      }
  
      /* clean up and update host active */
***************
*** 211,216 ****
--- 216,222 ----
            log_msg(l_debug,"renaming %s to %s",activename,active_old);
            unlink(active_old);
            if (!rename_file(activename,active_old)) exit_cleanup(6);
+           active_old[0] = '\0';
        }
        log_msg(l_debug,"renaming %s to %s",active_tmp,activename);
        if (!rename_file(active_tmp,activename)) exit_cleanup(6);
***************
*** 330,342 ****
                                ok = pull_group(group,&where,1);
                                if (ok)  ++unseen_groups;
                            }
                            if (!ok) {
                                fetch_aborted = 1;
                                skip = 1;
                                /* continue reading active to clean up things */
-                           } else if (where0 != where) {
-                               ++pull_anything;
-                               fflush(pull_tmp);
                            }
                        } else {
                            if (forget_inactive) {
--- 336,350 ----
                                ok = pull_group(group,&where,1);
                                if (ok)  ++unseen_groups;
                            }
+                           if (where0 != where) {
+                               /* remember spooled files, always */
+                               ++pull_anything;
+                               fflush(pull_tmp);
+                           }
                            if (!ok) {
                                fetch_aborted = 1;
                                skip = 1;
                                /* continue reading active to clean up things */
                            }
                        } else {
                            if (forget_inactive) {


-------------------------------------------------------------------------------

-- 
Email: [EMAIL PROTECTED]  
Voice/videophone: +47 22523641 Voice: +47 92022780 Fax: +47 22525899
Mail:  Egil Kvaleberg, Husebybakken 14A, 0379 Oslo, Norway
Home:  http://www.kvaleberg.com/
-----------------------------------------------------------------------
This message has been sent to you because you are subcribed to the mailing
list [EMAIL PROTECTED] To remove yourself from this lists, send an email to
[EMAIL PROTECTED] containing "unsubscribe newsx <your_email_address>"
in the message body.

Reply via email to