summaryrefslogtreecommitdiff
path: root/innobase/mem
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2004-02-19 11:32:07 +0200
committerunknown <marko@hundin.mysql.fi>2004-02-19 11:32:07 +0200
commit806f03f736a118e239e49f093d079fc358b92a86 (patch)
tree94a470319a8b1c303bbabdc877b4625489ed61e8 /innobase/mem
parent78a466b792518145e9c379070e7eb70568d3a18c (diff)
downloadmariadb-git-806f03f736a118e239e49f093d079fc358b92a86.tar.gz
Remove unnecessary files
.del-univoldmysql.i~9253a6f92058c565: Delete: innobase/include/univoldmysql.i .del-univold.i~4b5ed652407f63f1: Delete: innobase/include/univold.i .del-tsut.c~4a154913fc9cd5c0: Delete: innobase/ut/ts/tsut.c .del-makefile~9b8356bbdb8bd94e: Delete: innobase/ut/ts/makefile .del-tsttrxold.c~eb6fd6091405d54e: Delete: innobase/trx/ts/tsttrxold.c .del-tstrx.c~5425c98548ec1e0d: Delete: innobase/trx/ts/tstrx.c .del-makefile~16d63c17c8edf62a: Delete: innobase/trx/ts/makefile .del-tsthr.c~b095667070d626a9: Delete: innobase/thr/ts/tsthr.c .del-makefile~d5e4661188c1939d: Delete: innobase/thr/ts/makefile .del-tssync.c~fed4676cd4eb8457: Delete: innobase/sync/ts/tssync.c .del-makefile~f23368879649c806: Delete: innobase/sync/ts/makefile .del-tssrv.c~b8a6f5ad9ae639c8: Delete: innobase/srv/ts/tssrv.c .del-tsdbc.c~d36206bdccf338f: Delete: innobase/srv/ts/tsdbc.c .del-makefile~da6e87ef29c12dca: Delete: innobase/srv/ts/makefile .del-tstcur.c~a9d5cf73b020ec41: Delete: innobase/row/ts/tstcur.c .del-makefile~2cdfe39689004e6: Delete: innobase/row/ts/makefile .del-tsrem.c~bb4e1e2e8c2ee179: Delete: innobase/rem/ts/tsrem.c .del-makefile~3e48a33b4970faef: Delete: innobase/rem/ts/makefile .del-tspage.c~f5baf63f9924e43b: Delete: innobase/page/ts/tspage.c .del-makefile~66de73bc499566f9: Delete: innobase/page/ts/makefile .del-tsosaux.c~9ec97a83392a984c: Delete: innobase/os/ts/tsosaux.c .del-tsos.c~f6057d3c171f5915: Delete: innobase/os/ts/tsos.c .del-makefile~9a1d210afa6d666e: Delete: innobase/os/ts/makefile .del-tsmtr.c~293250c7ebfe0d3: Delete: innobase/mtr/ts/tsmtr.c .del-tsbuf.c~e8d15ee095194d2c: Delete: innobase/mtr/ts/tsbuf.c .del-makefile~fdf4c2a4ddb23230: Delete: innobase/mtr/ts/makefile .del-tsmem.c~cc483e2ab96e625c: Delete: innobase/mem/ts/tsmem.c .del-makefile~6d58ab1de0ac572: Delete: innobase/mem/ts/makefile .del-tsmach.c~af65166bb53ddfe9: Delete: innobase/mach/ts/tsmach.c .del-makefile~b8cbd25992ee51b: Delete: innobase/mach/ts/makefile .del-tsha.c~13dd5ea03fda370c: Delete: innobase/ha/ts/tsha.c .del-makefile~1bf12ce7b2dadfd5: Delete: innobase/ha/ts/makefile .del-tsfsp.c~890ead1636f0eaba: Delete: innobase/fsp/ts/tsfsp.c .del-makefile~a466e9eb27493a80: Delete: innobase/fsp/ts/makefile .del-del.c~35c6283be580200: Delete: innobase/fsp/ts/del.c .del-tsfil.c~e554b6f3c189c081: Delete: innobase/fil/ts/tsfil.c .del-makefile~1df6f952a960fef4: Delete: innobase/fil/ts/makefile .del-tsdyn.c~6f976764b53f3191: Delete: innobase/dyn/ts/tsdyn.c .del-makefile~f64427335fafdc65: Delete: innobase/dyn/ts/makefile .del-tsdict.c~5e82f7b8ac2b2e15: Delete: innobase/dict/ts/tsdict.c .del-makefile~6356c424e9747647: Delete: innobase/dict/ts/makefile .del-tscom.c~26aae2c5c4ca1dce: Delete: innobase/com/ts/tscom.c .del-tscli.c~2f3e4b281141eac2: Delete: innobase/com/ts/tscli.c .del-makefile~608fd39568db7238: Delete: innobase/com/ts/makefile .del-tsos.c~1dadfc1ef69f2ba3: Delete: innobase/buf/ts/tsos.c .del-tsbuf.c~b4c3feee158ef154: Delete: innobase/buf/ts/tsbuf.c .del-makefile~598acb06bf1e466: Delete: innobase/buf/ts/makefile .del-tscli.c~8d35740cc1f6f864: Delete: innobase/btr/ts/trash/tscli.c .del-tssrv.c~ee30b746c485aec: Delete: innobase/btr/ts/tssrv.c .del-tss.c~21ae628550141a68: Delete: innobase/btr/ts/tss.c .del-tsrecv97.c~dbeb3bc494b241c1: Delete: innobase/btr/ts/tsrecv97.c .del-tsrecv.c~3415f8a936a8d9fd: Delete: innobase/btr/ts/tsrecv.c .del-tscli.c~77fc1962db99aa2e: Delete: innobase/btr/ts/tscli.c .del-tsbtrold5.c~72a60e768c944904: Delete: innobase/btr/ts/trash/tsbtrold5.c .del-tsbtrins.c~3e3bb3f95f058b46: Delete: innobase/btr/ts/tsbtrins.c .del-TSIT.C~f53cce6fab8d325: Delete: innobase/btr/ts/trash/TSIT.C .del-tsbtrfull.c~fbcbe41b64cc71b6: Delete: innobase/btr/ts/tsbtrfull.c .del-tsbtr97.c~84dbb84ea9fa267c: Delete: innobase/btr/ts/tsbtr97.c .del-makefile~491918b4162b927c: Delete: innobase/btr/ts/makefile .del-isql.c~bc0b8cc213905175: Delete: innobase/btr/ts/isql.c BitKeeper/deleted/.del-isql.c~bc0b8cc213905175: Delete: innobase/btr/ts/isql.c BitKeeper/deleted/.del-makefile~491918b4162b927c: Delete: innobase/btr/ts/makefile BitKeeper/deleted/.del-tsbtr97.c~84dbb84ea9fa267c: Delete: innobase/btr/ts/tsbtr97.c BitKeeper/deleted/.del-tsbtrfull.c~fbcbe41b64cc71b6: Delete: innobase/btr/ts/tsbtrfull.c BitKeeper/deleted/.del-TSIT.C~f53cce6fab8d325: Delete: innobase/btr/ts/trash/TSIT.C BitKeeper/deleted/.del-tsbtrins.c~3e3bb3f95f058b46: Delete: innobase/btr/ts/tsbtrins.c BitKeeper/deleted/.del-tsbtrold5.c~72a60e768c944904: Delete: innobase/btr/ts/trash/tsbtrold5.c BitKeeper/deleted/.del-tscli.c~77fc1962db99aa2e: Delete: innobase/btr/ts/tscli.c BitKeeper/deleted/.del-tsrecv.c~3415f8a936a8d9fd: Delete: innobase/btr/ts/tsrecv.c BitKeeper/deleted/.del-tsrecv97.c~dbeb3bc494b241c1: Delete: innobase/btr/ts/tsrecv97.c BitKeeper/deleted/.del-tss.c~21ae628550141a68: Delete: innobase/btr/ts/tss.c BitKeeper/deleted/.del-tssrv.c~ee30b746c485aec: Delete: innobase/btr/ts/tssrv.c BitKeeper/deleted/.del-tscli.c~8d35740cc1f6f864: Delete: innobase/btr/ts/trash/tscli.c BitKeeper/deleted/.del-makefile~598acb06bf1e466: Delete: innobase/buf/ts/makefile BitKeeper/deleted/.del-tsbuf.c~b4c3feee158ef154: Delete: innobase/buf/ts/tsbuf.c BitKeeper/deleted/.del-tsos.c~1dadfc1ef69f2ba3: Delete: innobase/buf/ts/tsos.c BitKeeper/deleted/.del-makefile~608fd39568db7238: Delete: innobase/com/ts/makefile BitKeeper/deleted/.del-tscli.c~2f3e4b281141eac2: Delete: innobase/com/ts/tscli.c BitKeeper/deleted/.del-tscom.c~26aae2c5c4ca1dce: Delete: innobase/com/ts/tscom.c BitKeeper/deleted/.del-makefile~6356c424e9747647: Delete: innobase/dict/ts/makefile BitKeeper/deleted/.del-tsdict.c~5e82f7b8ac2b2e15: Delete: innobase/dict/ts/tsdict.c BitKeeper/deleted/.del-makefile~f64427335fafdc65: Delete: innobase/dyn/ts/makefile BitKeeper/deleted/.del-tsdyn.c~6f976764b53f3191: Delete: innobase/dyn/ts/tsdyn.c BitKeeper/deleted/.del-makefile~1df6f952a960fef4: Delete: innobase/fil/ts/makefile BitKeeper/deleted/.del-tsfil.c~e554b6f3c189c081: Delete: innobase/fil/ts/tsfil.c BitKeeper/deleted/.del-del.c~35c6283be580200: Delete: innobase/fsp/ts/del.c BitKeeper/deleted/.del-makefile~a466e9eb27493a80: Delete: innobase/fsp/ts/makefile BitKeeper/deleted/.del-tsfsp.c~890ead1636f0eaba: Delete: innobase/fsp/ts/tsfsp.c BitKeeper/deleted/.del-makefile~1bf12ce7b2dadfd5: Delete: innobase/ha/ts/makefile BitKeeper/deleted/.del-tsha.c~13dd5ea03fda370c: Delete: innobase/ha/ts/tsha.c BitKeeper/deleted/.del-makefile~b8cbd25992ee51b: Delete: innobase/mach/ts/makefile BitKeeper/deleted/.del-tsmach.c~af65166bb53ddfe9: Delete: innobase/mach/ts/tsmach.c BitKeeper/deleted/.del-makefile~6d58ab1de0ac572: Delete: innobase/mem/ts/makefile BitKeeper/deleted/.del-tsmem.c~cc483e2ab96e625c: Delete: innobase/mem/ts/tsmem.c BitKeeper/deleted/.del-makefile~fdf4c2a4ddb23230: Delete: innobase/mtr/ts/makefile BitKeeper/deleted/.del-tsbuf.c~e8d15ee095194d2c: Delete: innobase/mtr/ts/tsbuf.c BitKeeper/deleted/.del-tsmtr.c~293250c7ebfe0d3: Delete: innobase/mtr/ts/tsmtr.c BitKeeper/deleted/.del-makefile~9a1d210afa6d666e: Delete: innobase/os/ts/makefile BitKeeper/deleted/.del-tsos.c~f6057d3c171f5915: Delete: innobase/os/ts/tsos.c BitKeeper/deleted/.del-tsosaux.c~9ec97a83392a984c: Delete: innobase/os/ts/tsosaux.c BitKeeper/deleted/.del-makefile~66de73bc499566f9: Delete: innobase/page/ts/makefile BitKeeper/deleted/.del-tspage.c~f5baf63f9924e43b: Delete: innobase/page/ts/tspage.c BitKeeper/deleted/.del-makefile~3e48a33b4970faef: Delete: innobase/rem/ts/makefile BitKeeper/deleted/.del-tsrem.c~bb4e1e2e8c2ee179: Delete: innobase/rem/ts/tsrem.c BitKeeper/deleted/.del-makefile~2cdfe39689004e6: Delete: innobase/row/ts/makefile BitKeeper/deleted/.del-tstcur.c~a9d5cf73b020ec41: Delete: innobase/row/ts/tstcur.c BitKeeper/deleted/.del-makefile~da6e87ef29c12dca: Delete: innobase/srv/ts/makefile BitKeeper/deleted/.del-tsdbc.c~d36206bdccf338f: Delete: innobase/srv/ts/tsdbc.c BitKeeper/deleted/.del-tssrv.c~b8a6f5ad9ae639c8: Delete: innobase/srv/ts/tssrv.c BitKeeper/deleted/.del-makefile~f23368879649c806: Delete: innobase/sync/ts/makefile BitKeeper/deleted/.del-tssync.c~fed4676cd4eb8457: Delete: innobase/sync/ts/tssync.c BitKeeper/deleted/.del-makefile~d5e4661188c1939d: Delete: innobase/thr/ts/makefile BitKeeper/deleted/.del-tsthr.c~b095667070d626a9: Delete: innobase/thr/ts/tsthr.c BitKeeper/deleted/.del-makefile~16d63c17c8edf62a: Delete: innobase/trx/ts/makefile BitKeeper/deleted/.del-tstrx.c~5425c98548ec1e0d: Delete: innobase/trx/ts/tstrx.c BitKeeper/deleted/.del-tsttrxold.c~eb6fd6091405d54e: Delete: innobase/trx/ts/tsttrxold.c BitKeeper/deleted/.del-makefile~9b8356bbdb8bd94e: Delete: innobase/ut/ts/makefile BitKeeper/deleted/.del-tsut.c~4a154913fc9cd5c0: Delete: innobase/ut/ts/tsut.c BitKeeper/deleted/.del-univold.i~4b5ed652407f63f1: Delete: innobase/include/univold.i BitKeeper/deleted/.del-univoldmysql.i~9253a6f92058c565: Delete: innobase/include/univoldmysql.i BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
Diffstat (limited to 'innobase/mem')
-rw-r--r--innobase/mem/ts/makefile12
-rw-r--r--innobase/mem/ts/tsmem.c497
2 files changed, 0 insertions, 509 deletions
diff --git a/innobase/mem/ts/makefile b/innobase/mem/ts/makefile
deleted file mode 100644
index 0f6855322ce..00000000000
--- a/innobase/mem/ts/makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-include ..\..\makefile.i
-
-tsmem: ..\mem.lib tsmem.c makefile
- $(CCOM) $(CFL) -I.. -I..\.. ..\mem.lib ..\..\btr.lib ..\..\trx.lib ..\..\pars.lib ..\..\que.lib ..\..\lock.lib ..\..\row.lib ..\..\read.lib ..\..\srv.lib ..\..\com.lib ..\..\usr.lib ..\..\thr.lib ..\..\fut.lib ..\..\fsp.lib ..\..\page.lib ..\..\dyn.lib ..\..\mtr.lib ..\..\log.lib ..\..\rem.lib ..\..\fil.lib ..\..\buf.lib ..\..\dict.lib ..\..\data.lib ..\..\mach.lib ..\..\ha.lib ..\..\ut.lib ..\..\sync.lib ..\..\os.lib tsmem.c $(LFL)
-
-
-
-
-
-
-
diff --git a/innobase/mem/ts/tsmem.c b/innobase/mem/ts/tsmem.c
deleted file mode 100644
index 4a108251673..00000000000
--- a/innobase/mem/ts/tsmem.c
+++ /dev/null
@@ -1,497 +0,0 @@
-/************************************************************************
-The test module for the memory management of Innobase
-
-(c) 1994, 1995 Innobase Oy
-
-Created 6/10/1994 Heikki Tuuri
-*************************************************************************/
-
-#include "../mem0mem.h"
-#include "sync0sync.h"
-#include "ut0rnd.h"
-
-mem_heap_t* heap_arr[1200];
-
-byte* buf_arr[10000];
-ulint rnd_arr[10000];
-
-
-#ifdef UNIV_DEBUG
-/*********************************************************************
-Debug version test. */
-
-void
-test1(void)
-/*=======*/
-{
- mem_heap_t* heap_1, *heap_2;
- byte* buf_1, *buf_2, *buf_3;
- byte check;
- bool error;
- ulint i;
- ulint j;
- ulint sum;
- ulint user_size;
- ulint phys_size, phys_size_1, phys_size_2;
- ulint n_blocks;
- ulint p;
- byte block[1024];
- byte* top_1, *top_2;
-
- /* For this test to work the memory alignment must be
- even (presumably a reasonable assumption) */
- ut_a(0 == (UNIV_MEM_ALIGNMENT & 1));
-
- printf("-------------------------------------------\n");
- printf("TEST 1. Basic test \n");
-
- heap_1 = mem_heap_create(0);
-
- buf_1 = mem_heap_alloc(heap_1, 11);
-
- heap_2 = mem_heap_create(0);
-
- buf_2 = mem_heap_alloc(heap_1, 15);
-
- /* Test that the field is properly initialized */
- for (i = 0; i < 11; i++) {
- ut_a((*(buf_1 + i) == 0xBA) || (*(buf_1 + i) == 0xBE));
- }
-
- check = *(buf_1 + 11);
-
- mem_validate();
-
- /* Make an advertent error in the heap */
- (*(buf_1 + 11))++;
-
- error = mem_validate_no_assert();
-
- ut_a(error);
-
- /* Fix the error in heap before freeing */
- *(buf_1 + 11) = check;
-
- mem_print_info();
-
- /* Free the top buffer buf_2 */
- mem_heap_free_top(heap_1, 15);
-
- /* Test that the field is properly erased */
- for (i = 0; i < 15; i++) {
- ut_a((*(buf_2 + i) == 0xDE) || (*(buf_2 + i) == 0xAD));
- }
-
- /* Test that a new buffer is allocated from the same position
- as buf_2 */
- buf_3 = mem_heap_alloc(heap_1, 15);
-
- ut_a(buf_3 == buf_2);
-
- mem_heap_free(heap_1);
-
- /* Test that the field is properly erased */
- for (i = 0; i < 11; i++) {
- ut_a((*(buf_1 + i) == 0xDE) || (*(buf_1 + i) == 0xAD));
- }
-
- mem_validate();
-
- mem_print_info();
-
- printf("-------------------------------------------\n");
- printf("TEST 2. Test of massive allocation and freeing\n");
-
- sum = 0;
- for (i = 0; i < 10000; i++) {
-
- j = ut_rnd_gen_ulint() % 16 + 15;
-
- sum = sum + j;
-
- buf_1 = mem_heap_alloc(heap_2, j);
- rnd_arr[i] = j;
-
- buf_arr[i] = buf_1;
-
- ut_a(buf_1 == mem_heap_get_top(heap_2, j));
- }
-
- mem_heap_validate_or_print(heap_2, NULL, FALSE, &error, &user_size,
- &phys_size_1,
- &n_blocks);
-
- ut_a(!error);
- ut_a(user_size == sum);
-
- (*(buf_1 - 1))++;
-
- ut_a(mem_validate_no_assert());
-
- (*(buf_1 - 1))--;
-
- mem_print_info();
-
-
- for (p = 10000; p > 0 ; p--) {
-
- j = rnd_arr[p - 1];
-
- ut_a(buf_arr[p - 1] == mem_heap_get_top(heap_2, j));
- mem_heap_free_top(heap_2, j);
- }
-
- mem_print_info();
-
- mem_heap_free(heap_2);
-
- mem_print_info();
-
- printf("-------------------------------------------\n");
- printf("TEST 3. More tests on the validating \n");
-
- heap_1 = mem_heap_create(UNIV_MEM_ALIGNMENT * 20);
-
- buf_1 = mem_heap_alloc(heap_1, UNIV_MEM_ALIGNMENT * 20);
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error, &user_size,
- &phys_size_1,
- &n_blocks);
-
- ut_a((ulint)(buf_1 - (byte*)heap_1) == (MEM_BLOCK_HEADER_SIZE
- + MEM_FIELD_HEADER_SIZE));
-
- mem_validate();
-
- mem_print_info();
-
- ut_a(user_size == UNIV_MEM_ALIGNMENT * 20);
- ut_a(phys_size_1 == (ulint)(ut_calc_align(MEM_FIELD_HEADER_SIZE
- + UNIV_MEM_ALIGNMENT * 20
- + MEM_FIELD_TRAILER_SIZE,
- UNIV_MEM_ALIGNMENT)
- + MEM_BLOCK_HEADER_SIZE));
-
- ut_a(n_blocks == 1);
-
- buf_2 = mem_heap_alloc(heap_1, UNIV_MEM_ALIGNMENT * 3 - 1);
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- &user_size, &phys_size_2,
- &n_blocks);
-
- printf("Physical size of the heap %ld\n", phys_size_2);
-
- ut_a(!error);
- ut_a(user_size == UNIV_MEM_ALIGNMENT * 23 - 1);
- ut_a(phys_size_2 == (ulint) (phys_size_1
- + ut_calc_align(MEM_FIELD_HEADER_SIZE
- + phys_size_1 * 2
- + MEM_FIELD_TRAILER_SIZE,
- UNIV_MEM_ALIGNMENT)
- + MEM_BLOCK_HEADER_SIZE));
-
- ut_a(n_blocks == 2);
-
- buf_3 = mem_heap_alloc(heap_1, UNIV_MEM_ALIGNMENT * 3 + 5);
-
- ut_a((ulint)(buf_3 - buf_2) == ut_calc_align(
- (UNIV_MEM_ALIGNMENT * 3
- + MEM_FIELD_TRAILER_SIZE),
- UNIV_MEM_ALIGNMENT)
- + MEM_FIELD_HEADER_SIZE);
-
-
- ut_memcpy(buf_3, buf_2, UNIV_MEM_ALIGNMENT * 3);
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- &user_size, &phys_size,
- &n_blocks);
-
- ut_a(!error);
- ut_a(user_size == UNIV_MEM_ALIGNMENT * 26 + 4);
- ut_a(phys_size == phys_size_2);
- ut_a(n_blocks == 2);
-
-
- /* Make an advertent error to buf_3 */
-
- (*(buf_3 - 1))++;
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- &user_size, &phys_size,
- &n_blocks);
-
- ut_a(error);
- ut_a(user_size == 0);
- ut_a(phys_size == 0);
- ut_a(n_blocks == 0);
-
- /* Fix the error and make another */
-
- (*(buf_3 - 1))--;
- (*(buf_3 + UNIV_MEM_ALIGNMENT * 3 + 5))++;
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- &user_size, &phys_size,
- &n_blocks);
-
- ut_a(error);
-
- (*(buf_3 + UNIV_MEM_ALIGNMENT * 3 + 5))--;
-
- buf_1 = mem_heap_alloc(heap_1, UNIV_MEM_ALIGNMENT + 4);
-
- ut_a((ulint)(buf_1 - buf_3) == ut_calc_align(UNIV_MEM_ALIGNMENT * 3 + 5
- + MEM_FIELD_TRAILER_SIZE ,
- UNIV_MEM_ALIGNMENT)
- + MEM_FIELD_HEADER_SIZE);
-
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- &user_size, &phys_size,
- &n_blocks);
-
- ut_a(!error);
- ut_a(user_size == UNIV_MEM_ALIGNMENT * 27 + 8);
- ut_a(phys_size == phys_size_2);
- ut_a(n_blocks == 2);
-
-
- mem_print_info();
-
- mem_heap_free(heap_1);
-
- printf("-------------------------------------------\n");
- printf("TEST 4. Test of massive allocation \n");
- printf("of heaps to test the hash table\n");
-
- for (i = 0; i < 500; i++) {
- heap_arr[i] = mem_heap_create(i);
- buf_2 = mem_heap_alloc(heap_arr[i], 2 * i);
- }
-
- mem_validate();
-
- for (i = 0; i < 500; i++) {
- mem_heap_free(heap_arr[i]);
- }
-
- mem_validate();
-
- mem_print_info();
-
- /* Validating a freed heap should generate an error */
-
- mem_heap_validate_or_print(heap_1, NULL, FALSE, &error,
- NULL, NULL, NULL);
-
- ut_a(error);
-
- printf("-------------------------------------------\n");
- printf("TEST 5. Test of mem_alloc and mem_free \n");
-
- buf_1 = mem_alloc(11100);
- buf_2 = mem_alloc(23);
-
- ut_memcpy(buf_2, buf_1, 23);
-
- mem_validate();
-
- mem_print_info();
-
- mem_free(buf_1);
- mem_free(buf_2);
-
- mem_validate();
-
- printf("-------------------------------------------\n");
- printf("TEST 6. Test of mem_heap_print \n");
-
- heap_1 = mem_heap_create(0);
-
- buf_1 = mem_heap_alloc(heap_1, 7);
-
- ut_memcpy(buf_1, "Pascal", 7);
-
- for (i = 0; i < 10; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
- }
-
- printf("A heap with 1 Pascal and 10 Cobol's\n");
- mem_heap_print(heap_1);
-
- for (i = 0; i < 10; i++) {
- mem_heap_free_top(heap_1, 6);
- }
-
- printf("A heap with 1 Pascal and 0 Cobol's\n");
- mem_heap_print(heap_1);
-
- ut_a(mem_all_freed() == FALSE);
-
- mem_heap_free(heap_1);
-
- ut_a(mem_all_freed() == TRUE);
-
- mem_print_info();
-
- printf("-------------------------------------------\n");
- printf("TEST 7. Test of mem_heap_fast_create \n");
-
- heap_1 = mem_heap_fast_create(1024, block);
-
- buf_1 = mem_heap_alloc(heap_1, 7);
-
- ut_memcpy(buf_1, "Pascal", 7);
-
- for (i = 0; i < 1000; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
- }
-
- for (i = 0; i < 1000; i++) {
- mem_heap_free_top(heap_1, 6);
- }
-
- ut_a(mem_all_freed() == FALSE);
-
- mem_heap_free(heap_1);
-
- ut_a(mem_all_freed() == TRUE);
-
- mem_print_info();
-
- printf("-------------------------------------------\n");
- printf("TEST 8. Test of heap top freeing \n");
-
- heap_1 = mem_heap_fast_create(1024, block);
-
- top_1 = mem_heap_get_heap_top(heap_1);
-
- buf_1 = mem_heap_alloc(heap_1, 7);
-
- ut_memcpy(buf_1, "Pascal", 7);
-
- for (i = 0; i < 500; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
- }
-
- top_2 = mem_heap_get_heap_top(heap_1);
-
- for (i = 0; i < 500; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
- }
-
- mem_heap_free_heap_top(heap_1, top_2);
-
- mem_heap_free_heap_top(heap_1, top_1);
-
- ut_a(mem_all_freed() == FALSE);
-
- for (i = 0; i < 500; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
-
- }
-
- mem_heap_empty(heap_1);
-
- for (i = 0; i < 500; i++) {
- buf_1 = mem_heap_alloc(heap_1, 6);
- ut_memcpy(buf_1, "Cobol", 6);
-
- }
-
- mem_heap_free(heap_1);
-
- ut_a(mem_all_freed() == TRUE);
-
- mem_print_info();
-
-}
-#endif /* UNIV_DEBUG */
-
-/****************************************************************
-Allocation speed test. */
-
-void
-test2(void)
-/*=======*/
-{
- mem_heap_t* heap;
- ulint tm, oldtm;
- ulint i;
- byte* buf;
- byte block[512];
-
- printf("-------------------------------------------\n");
- printf("TEST B1. Test of speed \n");
-
- oldtm = ut_clock();
-
- for (i = 0; i < 10000 * UNIV_DBC * UNIV_DBC; i++) {
- heap = mem_heap_create(500);
- mem_heap_free(heap);
- }
-
- tm = ut_clock();
-
- printf("Time for %ld heap create-free pairs %ld millisecs.\n",
- i, tm - oldtm);
-
-
- oldtm = ut_clock();
-
- for (i = 0; i < 10000 * UNIV_DBC * UNIV_DBC; i++) {
- heap = mem_heap_fast_create(512, block);
- mem_heap_free(heap);
- }
-
- tm = ut_clock();
-
- printf("Time for %ld heap fast-create-free pairs %ld millisecs.\n",
- i, tm - oldtm);
-
-
- heap = mem_heap_create(500);
-
- oldtm = ut_clock();
-
- for (i = 0; i < 10000 * UNIV_DBC * UNIV_DBC; i++) {
- buf = mem_heap_alloc(heap, 50);
- mem_heap_free_top(heap, 50);
- }
-
- tm = ut_clock();
-
- printf("Time for %ld heap alloc-free-top pairs %ld millisecs.\n",
- i, tm - oldtm);
-
- mem_heap_free(heap);
-}
-
-
-void
-main(void)
-{
- sync_init();
- mem_init(2500000);
-
- #ifdef UNIV_DEBUG
-
- test1();
-
- #endif
-
- test2();
-
- ut_ad(sync_all_freed());
-
- ut_ad(mem_all_freed());
-
- printf("TEST SUCCESSFULLY COMPLETED!\n");
-}