Commits

Anonymous committed faf2193

fsync patch from openlink

Comments (0)

Files changed (4)

src/backend/bootstrap/bootstrap.c

  * Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/bootstrap/bootstrap.c,v 1.1.1.1 1996/07/09 06:21:14 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/bootstrap/bootstrap.c,v 1.2 1996/07/15 19:21:59 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
 AttributeTupleForm attrtypes[MAXATTR];  /* points to attribute info */
 static char	*values[MAXATTR];	/* cooresponding attribute values */
 int		numattr;		/* number of attributes for cur. rel */
+#ifdef OPENLINK_PATCHES
+extern int	fsyncOff;		/* do not fsync the database */
+#endif
 
 #if defined(WIN32) || defined(PORTNAME_next)
 static jmp_buf    Warn_restart;
 static void
 usage()
 {
+#ifdef OPENLINK_PATCHES
+    fprintf(stderr,"Usage: postgres -boot [-d] [-C] [-F] [-O] [-Q] [-P portno] [dbName]\n");
+#else
     fprintf(stderr,"Usage: postgres -boot [-d] [-C] [-O] [-Q] [-P portno] [dbName]\n");
+#endif
     fprintf(stderr,"     d: debug mode\n");
     fprintf(stderr,"     C: disable version checking\n");
+#ifdef OPENLINK_PATCHES
+    fprintf(stderr,"     F: turn off fsync\n");
+#endif
     fprintf(stderr,"     O: set BootstrapProcessing mode\n");
     fprintf(stderr,"     P portno: specify port number\n");
 
     Quiet = 0;
     Noversion = 0;
     dbName = NULL;
-    
+
+#ifdef OPENLINK_PATCHES
+    while ((flag = getopt(argc, argv, "dCOQP:F")) != EOF) {
+#else
     while ((flag = getopt(argc, argv, "dCOQP")) != EOF) {
+#endif
 	switch (flag) {
 	case 'd':
 	    DebugMode = 1; /* print out debuggin info while parsing */
 	case 'P':/* specify port */
 	    portFd = atoi(optarg);
 	    break; 
+#ifdef OPENLINK_PATCHES
+	case 'F':
+	    fsyncOff = 1;
+	    break;
+#endif
+	    break; 
 	default:
 	    usage();
 	    break;

src/backend/storage/file/fd.c

  * Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *    $Id: fd.c,v 1.1.1.1 1996/07/09 06:21:55 scrappy Exp $
+ *    $Id: fd.c,v 1.2 1996/07/15 19:22:07 scrappy Exp $
  *
  * NOTES:
  *
 static File fileNameOpenFile(FileName fileName, int fileFlags, int fileMode);
 static char *filepath(char *filename);
 
+#ifdef OPENLINK_PATCHES
+pg_fsync(fd)
+{
+    extern int fsyncOff;
+    return fsyncOff ? 0 : fsync(fd);
+}
+#define fsync pg_fsync
+#endif
+
 #if defined(FDDEBUG)
 static void
 _dump_lru()

src/backend/storage/smgr/md.c

  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.2 1996/07/09 06:35:38 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/storage/smgr/md.c,v 1.3 1996/07/15 19:22:12 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
     status = SM_SUCCESS;
 
     /* write and sync the block */
+#ifdef OPENLINK_PATCHES
+    if (write(fd, buffer, BLCKSZ) != BLCKSZ || (pg_fsync(fd) < 0))
+#else
     if (write(fd, buffer, BLCKSZ) != BLCKSZ || fsync(fd) < 0)
 	status = SM_FAIL;
+#endif
 
     if (close(fd) < 0)
 	status = SM_FAIL;

src/backend/tcop/postgres.c

  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.1.1.1 1996/07/09 06:22:00 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.2 1996/07/15 19:22:17 scrappy Exp $
  *
  * NOTES
  *    this is the "main" module of the postgres backend and
 extern int	lockingOff;
 extern int	NBuffers;
 
+#ifdef OPENLINK_PATCHES
+int	fsyncOff = 0;
+#endif
+
 int	dontExecute = 0;
 static int	ShowStats;
 static bool	IsEmptyQuery = false;
     fprintf(stderr, 
 	    "Usage: %s [-B nbufs] [-d lvl] ] [-f plantype] \t[-m portno] [\t -o filename]\n",
 	    progname);
+#ifdef OPENLINK_PATCHES
+    fprintf(stderr,"\t[-P portno] [-t tracetype] [-x opttype] [-bCEiLFNopQSs] [dbname]\n");
+#else
     fprintf(stderr,"\t[-P portno] [-t tracetype] [-x opttype] [-bCEiLNopQSs] [dbname]\n");
+#endif
     fprintf(stderr, "    b: consider bushy plan trees during optimization\n");
     fprintf(stderr, "    B: set number of buffers in buffer pool\n");
     fprintf(stderr, "    C: supress version info\n");
     fprintf(stderr, "    f: forbid plantype generation\n");
     fprintf(stderr, "    i: don't execute the query, just show the plan tree\n");
     fprintf(stderr, "    L: turn off locking\n");
+#ifdef OPENLINK_PATCHES
+    fprintf(stderr, "    F: turn off fsync\n");
+#endif
     fprintf(stderr, "    m: set up a listening backend at portno to support multiple front-ends\n");
     fprintf(stderr, "    M: start as postmaster\n");
     fprintf(stderr, "    N: don't use newline as query delimiter\n");
 	hostName = hostbuf;
     }
 
+#ifdef OPENLINK_PATCHES
+    while ((flag = getopt(argc, argv, "B:bCd:Ef:iLm:MNo:P:pQSst:x:F")) != EOF)
+#else
     while ((flag = getopt(argc, argv, "B:bCd:Ef:iLm:MNo:P:pQSst:x:")) != EOF)
+#endif
 	switch (flag) {
 	    
 	case 'b':
 	     */
 	    lockingOff = 1;
 	    break;
-	    
+
+#ifdef OPENLINK_PATCHES
+	case 'F':
+	    /* --------------------
+	     *  turn off fsync
+	     * --------------------
+	     */
+	    fsyncOff = 1;
+	    break;
+#endif
+
 	case 'm':
 	    /* start up a listening backend that can respond to 
 	       multiple front-ends.  (Note:  all the front-end connections
      */
     if (IsUnderPostmaster == false) {
 	puts("\nPOSTGRES backend interactive interface");
-	puts("$Revision: 1.1.1.1 $ $Date: 1996/07/09 06:22:00 $");
+	puts("$Revision: 1.2 $ $Date: 1996/07/15 19:22:17 $");
     }
     
     /* ----------------
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.