]> git.llucax.com Git - z.facultad/75.06/emufs.git/blob - emufs/b_plus_test.c
Insertar B+ en teoria fully working con encadenamiento en hojas y toda la mar en...
[z.facultad/75.06/emufs.git] / emufs / b_plus_test.c
1
2 #include "b_plus.h"
3
4 int main(int argc, char* argv[]) {
5
6 /* Locals */
7 INDEX_DAT querydata;
8 /*NODO_B_PLUS *memnodo;*/
9 int i;  
10 /* Creamos un handler EMUFS, luego un Indice B+ y testing... */
11 INDEXSPECS indice;
12 indice.tam_bloque = SIZE_B_PLUS_HEADER + sizeof(int)*5 + sizeof(int)*6;
13 indice.size_claves = (indice.tam_bloque - SIZE_B_PLUS_HEADER - sizeof(int))/2;
14 indice.size_hijos = indice.size_claves + sizeof(int);
15 indice.filename = "idxbplus_primary.idx";
16 printf("\nTam Nodo: %i  Size Claves: %i  Size_Hijos: %i\n",indice.tam_bloque,indice.size_claves,indice.size_hijos);
17 emufs_b_plus_crear(&indice);
18         
19
20 for (i=1;i<16;++i)
21 {       
22 querydata.num_bloque = i;
23 querydata.clave.i_clave = i;
24 b_plus_insertar(&indice,&querydata);
25 }
26
27 /*
28 querydata.num_bloque = 2;
29 querydata.clave.i_clave = 7;
30 b_plus_insertar(&indice,&querydata);
31
32 querydata.num_bloque = 7;
33 querydata.clave.i_clave = 5;
34 b_plus_insertar(&indice,&querydata);
35
36 querydata.num_bloque = 5;
37 querydata.clave.i_clave = 3;
38 b_plus_insertar(&indice,&querydata);
39
40 querydata.num_bloque = 8;
41 querydata.clave.i_clave = 63;
42 b_plus_insertar(&indice,&querydata);
43
44 /*num_node = 0;
45 memnodo = b_plus_leer_nodo(&indice, num_node);
46         printf("Dumping Node_%i\n",num_node);
47         printf("Nivel: %i  Cant Claves: %i\n",memnodo->nivel,memnodo->cant_claves);
48         printf("Claves:");
49         for (i = 0; i < indice.size_claves/sizeof(int); ++i) printf(" %i",memnodo->claves[i]);
50         printf("\nHijos:");
51         for (i = 0; i < indice.size_hijos/sizeof(int); ++i) printf(" %i",memnodo->hijos[i]);
52         printf("\nEnd Dump\n"); 
53 free(memnodo);*/
54         /*
55 querydata.num_bloque = 54;
56 querydata.clave.i_clave = 1;
57 b_plus_insertar(&indice, &querydata);
58
59 querydata.num_bloque = 12;
60 querydata.clave.i_clave = 2;
61 b_plus_insertar(&indice, &querydata);
62
63 querydata.num_bloque = 14;
64 querydata.clave.i_clave = 0;
65 b_plus_insertar(&indice, &querydata);
66
67 querydata.num_bloque = 22;
68 querydata.clave.i_clave = 4;
69 b_plus_insertar(&indice, &querydata);
70
71 /*querydata.num_bloque = 6;
72 querydata.clave.i_clave = 100;
73 b_plus_insertar(&indice, &querydata);*/
74 return 0;
75
76 }