gitoriaLog in with ident

mpackdb

All repositories: gitoria

ReadmeCodePull requestsReleasesTicketsSettings
Main branchmaster87888725release 1.0.7caramboleyomaster/tests/test-find-after-delete.js

1.0 KB

  1. import MPackDB from '../src/MPackDB.js';
  2. import { rm } from 'fs/promises';
  3. await rm('find-test', { recursive: true, force: true });
  4. const db = new MPackDB('find-test/db', {
  5. primaryKey: '*id',
  6. indexPersistThreshold: 10000000,
  7. indexPersistInterval: 0
  8. });
  9. console.log('Insert 10000 records...');
  10. for (let i = 0; i < 10000; i++) {
  11. await db.insert({ value: i });
  12. }
  13. console.log('Count before delete:');
  14. let count1 = 0;
  15. for await (const rec of db.find()) count1++;
  16. console.log(` Found: ${count1}`);
  17. console.log('\nDelete 500 records (ids 1000-1499)...');
  18. const toDelete = new Set([...Array.from({length:500}, (_,i) => i+1000)]);
  19. await db.delete(r => toDelete.has(r.id));
  20. console.log('\nCount after delete:');
  21. let count2 = 0;
  22. for await (const rec of db.find()) count2++;
  23. console.log(` Found: ${count2} (expected 9500)`);
  24. console.log('\nCount again:');
  25. let count3 = 0;
  26. for await (const rec of db.find()) count3++;
  27. console.log(` Found: ${count3} (expected 9500)`);
  28. await db.close();
  29. await rm('find-test', { recursive: true, force: true });

Branches

Latest commits

  • 87888725release 1.0.7caramboleyo
  • c4cdb9b6node: import prefixes (Deno compat) + pre-existing index-state WIPcaramboleyo
  • 0afb8f4bupdate now must be a callbackcaramboleyo
  • cde73eb4release 1.0.6caramboleyo
  • d01dda02add index hints, intersection, boundingBox; remove findByIndexcaramboleyo
  • b8ffc1a0release 1.0.5caramboleyo
  • d47876a1reimplemented lost features like indexed find and more testscaramboleyo
  • 7f08da9afixed insert ignoring model definitioncaramboleyo
  • 705774a9added flush before findcaramboleyo
  • b4db6391initial commitcaramboleyo