Changeset: 443fa5632c09 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=443fa5632c09
Modified Files:
        gdk/gdk.h
Branch: linear-hashing
Log Message:

Increase limit of number of BATs allowed in system.
The absolute maximum (very hard limit) of the number of BATs on a 64
bit architecture was raised from 16383999 to 163839999.


diffs (39 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1538,7 +1538,11 @@ typedef struct {
        char bak[16];           /* logical name backup (tmp_%o) */
        BAT *desc;              /* the BAT descriptor */
        char *options;          /* A string list of options */
+#if SIZEOF_VOID_P == 4
        char physical[20];      /* dir + basename for storage */
+#else
+       char physical[24];      /* dir + basename for storage */
+#endif
        bat next;               /* next BBP slot in linked list */
        int refs;               /* in-memory references on which the loaded 
status of a BAT relies */
        int lrefs;              /* logical references on which the existence of 
a BAT relies */
@@ -1547,19 +1551,20 @@ typedef struct {
 } BBPrec;
 
 gdk_export bat BBPlimit;
+#if SIZEOF_VOID_P == 4
 #define N_BBPINIT      1000
-#if SIZEOF_VOID_P == 4
 #define BBPINITLOG     11
 #else
+#define N_BBPINIT      10000
 #define BBPINITLOG     14
 #endif
 #define BBPINIT                (1 << BBPINITLOG)
 /* absolute maximum number of BATs is N_BBPINIT * BBPINIT
  * this also gives the longest possible "physical" name and "bak" name
- * of a BAT: the "bak" name is "tmp_%o", so at most 12 + \0 bytes on
+ * of a BAT: the "bak" name is "tmp_%o", so at most 14 + \0 bytes on
  * 64 bit architecture and 11 + \0 on 32 bit architecture; the
  * physical name is a bit more complicated, but the longest possible
- * name is 17 + \0 bytes (16 + \0 on 32 bits) */
+ * name is 22 + \0 bytes (16 + \0 on 32 bits) */
 gdk_export BBPrec *BBP[N_BBPINIT];
 
 /* fast defines without checks; internal use only  */
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to