From dcf314874e90ec9debf1582fc3f6b07f2d4d30ca Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 11 May 2009 17:29:48 -0700 Subject: [PATCH] Hopefully fix the buildfarm. Add some debug level 10 messages I used to track down the vlp problem, change the vlp test printer not to use a static path of /tmp/vlp.tdb for the virtual print database (as this will eventually fill up). Cause it to use a virtual print database inside the cachepath. Jeremy. --- source3/printing/printing.c | 8 +++++++- source3/printing/tests/vlp.c | 17 +++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/source3/printing/printing.c b/source3/printing/printing.c index e410c1c3ce4..69466baf383 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -2313,11 +2313,15 @@ static bool allocate_print_jobid(struct tdb_print_db *pdb, int snum, const char if (tdb_error(pdb->tdb) != TDB_ERR_NOEXIST) { DEBUG(0, ("allocate_print_jobid: failed to fetch INFO/nextjob for print queue %s\n", sharename)); + tdb_unlock_bystring(pdb->tdb, "INFO/nextjob"); return False; } + DEBUG(10,("allocate_print_jobid: no existing jobid in %s\n", sharename)); jobid = 0; } + DEBUG(10,("allocate_print_jobid: read jobid %u from %s\n", jobid, sharename)); + jobid = NEXT_JOBID(jobid); if (tdb_store_int32(pdb->tdb, "INFO/nextjob", jobid)==-1) { @@ -2329,8 +2333,10 @@ static bool allocate_print_jobid(struct tdb_print_db *pdb, int snum, const char /* We've finished with the INFO/nextjob lock. */ tdb_unlock_bystring(pdb->tdb, "INFO/nextjob"); - if (!print_job_exists(sharename, jobid)) + if (!print_job_exists(sharename, jobid)) { break; + } + DEBUG(10,("allocate_print_jobid: found jobid %u in %s\n", jobid, sharename)); } if (i > 2) { diff --git a/source3/printing/tests/vlp.c b/source3/printing/tests/vlp.c index 286e4a4b39b..ec610d94e53 100644 --- a/source3/printing/tests/vlp.c +++ b/source3/printing/tests/vlp.c @@ -21,7 +21,6 @@ #include "includes.h" -#define PRINT_TDB "/tmp/vlp.tdb" #define PRINT_FIRSTJOB "100" static TDB_CONTEXT *tdb; @@ -376,6 +375,7 @@ static int lpresume_command(int argc, char **argv) int main(int argc, char **argv) { /* Parameter check */ + char *printdb_path = NULL; if (argc == 1) { usage(); @@ -384,15 +384,24 @@ int main(int argc, char **argv) /* Initialise */ - if (!(tdb = tdb_open(PRINT_TDB, 0, 0, O_RDWR | O_CREAT, +#if 0 + printdb_path = "/tmp/vlp.tdb"; +#else + if (asprintf(&printdb_path, "%svlp.tdb", + cache_path("printing/"))) { + return 1; + } +#endif + + if (!(tdb = tdb_open(printdb_path, 0, 0, O_RDWR | O_CREAT, 0666))) { - printf("%s: unable to open %s\n", argv[0], PRINT_TDB); + printf("%s: unable to open %s\n", argv[0], printdb_path); return 1; } /* Ensure we are modes 666 */ - chmod(PRINT_TDB, 0666); + chmod(printdb_path, 0666); /* Do commands */ -- 2.11.4.GIT