testFree(zShm);
}
-static void copy_file(const char *zFrom, const char *zTo){
+static void copy_file(const char *zFrom, const char *zTo, int isDatabase){
if( access(zFrom, F_OK) ){
unlink(zTo);
aBuf = testMalloc(4096);
for(i=0; i<sz; i+=4096){
- int nByte = MIN(4096, sz - i);
+ int bLockPage = isDatabase && i == 0;
+ int nByte = MIN((bLockPage ? 4066 : 4096), sz - i);
+ memset(aBuf, 0, 4096);
read(fd1, aBuf, nByte);
write(fd2, aBuf, nByte);
+ if( bLockPage ){
+ lseek(fd1, 4096, SEEK_SET);
+ lseek(fd2, 4096, SEEK_SET);
+ }
}
testFree(aBuf);
unlink(zShm2);
unlink(zLog2);
unlink(zTo);
- copy_file(zFrom, zTo);
- copy_file(zLog1, zLog2);
- copy_file(zShm1, zShm2);
+ copy_file(zFrom, zTo, 1);
+ copy_file(zLog1, zLog2, 0);
+ copy_file(zShm1, zShm2, 0);
testFree(zLog1); testFree(zLog2); testFree(zShm1); testFree(zShm2);
}
unlink(zFileSave);
unlink(zLogSave);
- copy_file(zFile, zFileSave);
- copy_file(zLog, zLogSave);
+ copy_file(zFile, zFileSave, 1);
+ copy_file(zLog, zLogSave, 0);
testFree(zLog); testFree(zFileSave); testFree(zLogSave);
}
char *zFileSave = testMallocPrintf("%s-save", zFile);
char *zLogSave = testMallocPrintf("%s-%s-save", zFile, zAux);
- copy_file(zFileSave, zFile);
- copy_file(zLogSave, zLog);
+ copy_file(zFileSave, zFile, 1);
+ copy_file(zLogSave, zLog, 0);
testFree(zLog); testFree(zFileSave); testFree(zLogSave);
}
#ifndef _WIN32
# include <unistd.h>
#endif
+#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
const char *zReport = "malloc.txt NOT generated";
#endif
+#if defined(_MSC_VER) || defined(__MSVCRT__)
+ _set_fmode(_O_BINARY);
+#endif
+
testMallocInstall(tdb_lsm_env());
if( argc<2 ){
-C Add\sthe\s"PRAGMA\ssecure_delete=FAST"\soption,\swhich\soverwrites\smost\sdeleted\ncontent\swithout\sincreasing\sthe\samount\sof\sI/O.\s\sDeleted\scontent\smight\spersist\non\sthe\sfree\spage\slist,\showever.\s\sAnd\sextra\sCPU\scycles\sare\sused\sfor\szeroing,\nof\scourse.
-D 2017-07-07T20:06:28.516
+C Adjust\scopy_file()\slsmtest\sfunction\sso\sit\sworks\sproperly\sfor\slocked\sdatabase\sfiles\son\sWin32.
+D 2017-07-07T20:35:14.495
F Makefile.in 081e48dfe7f995d57ce1a88ddf4d2917b4349158648a6cd45b42beae30de3a12
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc 20850e3e8d4d4791e0531955852d768eb06f24138214870d543abb1a47346fba
F ext/lsm1/lsm-test/lsmtest3.c 9ab87528a36dbf4a61d7c8ad954f5ee368c0878c127b84b942b2e2abe522de26
F ext/lsm1/lsm-test/lsmtest4.c d258d6a245db5d8eaede096e2368d23f859c5e92c80ab9122463f708514fe10c
F ext/lsm1/lsm-test/lsmtest5.c 8d5242a0f870d65eeada191c8945781fed9cb8ece3886573790ebd373b62dac5
-F ext/lsm1/lsm-test/lsmtest6.c 1f21509ea5d2b28b74539c2a70b8001619d0713091511067278f57871f4b753a
+F ext/lsm1/lsm-test/lsmtest6.c dd27f91675c54892d34f2335e7d7f581dda56d3426177d37804a986dbc076f48
F ext/lsm1/lsm-test/lsmtest7.c 7a917455a0f956a8ed3f44f5c9387ec0ea6627714874464cc3fa5c5a9cabb2f2
F ext/lsm1/lsm-test/lsmtest8.c b87a1279b0cfbb39df1fff50074696fbf5d83822349f65706fab6d618a7a52fa
F ext/lsm1/lsm-test/lsmtest9.c dd1a0ebf41134933a744d1e00e60429a2a21fc50d587ae7dd6bdb6e96d805bdc
F ext/lsm1/lsm-test/lsmtest_datasource.c 5d770be191d0ca51315926723009b2c25c0b4b8136840494ef710ac324aa916c
F ext/lsm1/lsm-test/lsmtest_func.c 159aa401bc8032bfa3d8cf2977bd687abebab880255895a5eb45770d626fa38d
F ext/lsm1/lsm-test/lsmtest_io.c ba678e052f497b4c2ff41d47672a1f2a02f495d14083845ee66e0bda678f5b80
-F ext/lsm1/lsm-test/lsmtest_main.c f1d18e3a3e9315ec4198901a11c9d2ec6cb96d1a40089fd60b6a64e0b6b8db35
+F ext/lsm1/lsm-test/lsmtest_main.c d0a7f9fe1119b0b347ec21908276bae60e0003dd0cba6634bfabcaa71b6db3e4
F ext/lsm1/lsm-test/lsmtest_mem.c c2980abdbc5024628d10910acb703354f2606b4a6f9624679da4e9a56bcee3e9
F ext/lsm1/lsm-test/lsmtest_tdb.c e46c3f44880d45fd444daf2b2a53bca7a64f9df3f6480cbb1b47a039cc95626a
F ext/lsm1/lsm-test/lsmtest_tdb.h 8733eee249b12956a9df8322994b43d19bd8c02ad2e8b0bb5164db4d6ccc1735
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 732f90d6327c5c6368fc8b4cc207bd644ef08e3ae6d2e7295258ab099deaba63 f1682f0faf1a93ded066464b1ddd5f987e21ee0f6bb5e828ed31c3ad903cf2c3
-R 1f238fbce697fb2308131c37c5985e85
-T +closed f1682f0faf1a93ded066464b1ddd5f987e21ee0f6bb5e828ed31c3ad903cf2c3
-U drh
-Z c2c4f30ab3360a9e7249032b4e3580ff
+P 38978ce65b280bb7cba3fc08ba91485fb1b84cd9fbba2e950ecf41c021ff452a
+R 1560fcde20282350646516a96135e121
+U mistachkin
+Z d23b91b5991a79a51cd11ccd5641741c
-38978ce65b280bb7cba3fc08ba91485fb1b84cd9fbba2e950ecf41c021ff452a
\ No newline at end of file
+54a3855583deac93c955ed77fe82be6a6b7aadd3fdb7e6b895888e2a4ff530bd
\ No newline at end of file