- case 'd':
- fprintf(stderr, "started deleting keys for %s\n", args->infile);
- if( in = fopen (args->infile, "rb") )
- while( ch = getc(in), ch != EOF )
- if( ch == '\n' )
- {
- line++;
- if( args->num == 1 )
- sprintf((char *)key+len, "%.9d", 1000000000 - line), len += 9;
-
- else if( args->num )
- sprintf((char *)key+len, "%.9d", line + args->idx * args->num), len += 9;
-
- if( bt_findkey (bt, key, len, NULL, 0) < 0 )
- fprintf(stderr, "Cannot find key for Line: %d\n", line), exit(0);
- ptr = (BtKey*)(bt->key);
- found++;
-
- if( bt_deletekey (bt, ptr->key, ptr->len, 0) )
- fprintf(stderr, "Error %d Line: %d\n", bt->err, line), exit(0);
- len = 0;
- }
- else if( len < BT_maxkey )
- key[len++] = ch;
- fprintf(stderr, "finished %s for %d keys, %d found: %d reads %d writes\n", args->infile, line, found, bt->reads, bt->writes);
- break;
-