@aws-amplify/datastore 4.0.10 → 4.0.11-unstableV5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"IndexedDBAdapter.js","sourceRoot":"","sources":["../../../src/storage/adapter/IndexedDBAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndexedDBAdapter.js","sourceRoot":"","sources":["../../../src/storage/adapter/IndexedDBAdapter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/datastore",
3
- "version": "4.0.10",
3
+ "version": "4.0.11-unstableV5.4+999f4aef5",
4
4
  "description": "AppSyncLocal support for aws-amplify",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib-esm/index.js",
@@ -54,11 +54,11 @@
54
54
  "ssr"
55
55
  ],
56
56
  "dependencies": {
57
- "@aws-amplify/api": "5.0.10",
58
- "@aws-amplify/auth": "5.1.4",
59
- "@aws-amplify/core": "5.0.10",
60
- "@aws-amplify/pubsub": "5.0.10",
61
- "amazon-cognito-identity-js": "6.1.2",
57
+ "@aws-amplify/api": "5.0.11-unstableV5.4+999f4aef5",
58
+ "@aws-amplify/auth": "5.1.5-unstableV5.4+999f4aef5",
59
+ "@aws-amplify/core": "5.0.11-unstableV5.4+999f4aef5",
60
+ "@aws-amplify/pubsub": "5.0.11-unstableV5.4+999f4aef5",
61
+ "amazon-cognito-identity-js": "6.1.3-unstableV5.10+999f4aef5",
62
62
  "idb": "5.0.6",
63
63
  "immer": "9.0.6",
64
64
  "ulid": "2.3.0",
@@ -71,7 +71,7 @@
71
71
  "name": "DataStore (top-level class)",
72
72
  "path": "./lib-esm/index.js",
73
73
  "import": "{ Amplify, DataStore }",
74
- "limit": "162 kB"
74
+ "limit": "152.5 kB"
75
75
  }
76
76
  ],
77
77
  "jest": {
@@ -128,5 +128,5 @@
128
128
  "lib-esm"
129
129
  ]
130
130
  },
131
- "gitHead": "87236ea67272a1ec8b5fade5316bba8b448fd293"
131
+ "gitHead": "999f4aef526aa4c9846a48b8a7b617ed2feccccf"
132
132
  }
@@ -1650,7 +1650,6 @@ class DataStore {
1650
1650
  for (const relationship of nonHasManyRelationships) {
1651
1651
  const queryObject = relationship.createRemoteQueryObject(model);
1652
1652
  if (queryObject !== null) {
1653
- // console.log({ queryObject });
1654
1653
  const related = await s.query(
1655
1654
  relationship.remoteModelConstructor,
1656
1655
  ModelPredicateCreator.createFromFlatEqualities(
@@ -321,7 +321,15 @@ export class GroupCondition {
321
321
  /**
322
322
  *
323
323
  */
324
- public operands: UntypedCondition[]
324
+ public operands: UntypedCondition[],
325
+
326
+ /**
327
+ * Whether this GroupCondition is the result of an optimize call.
328
+ *
329
+ * This is used to guard against infinitely fetch -> optimize -> fetch
330
+ * recursion.
331
+ */
332
+ public isOptimized: boolean = false
325
333
  ) {}
326
334
 
327
335
  /**
@@ -351,6 +359,82 @@ export class GroupCondition {
351
359
  return [copied, extractedCopy];
352
360
  }
353
361
 
362
+ /**
363
+ * Returns a version of the predicate tree with unnecessary logical groups
364
+ * condensed and merged together. This is intended to create a dense tree
365
+ * with leaf nodes (`FieldCondition`'s) aggregated under as few group conditions
366
+ * as possible for the most efficient fetching possible -- it allows `fetch()`.
367
+ *
368
+ * E.g. a grouping like this:
369
+ *
370
+ * ```yaml
371
+ * and:
372
+ * and:
373
+ * id:
374
+ * eq: "abc"
375
+ * and:
376
+ * name:
377
+ * eq: "xyz"
378
+ * ```
379
+ *
380
+ * Will become this:
381
+ *
382
+ * ```yaml
383
+ * and:
384
+ * id:
385
+ * eq: "abc"
386
+ * name:
387
+ * eq: "xyz"
388
+ * ```
389
+ *
390
+ * This allows `fetch()` to pass both the `id` and `name` conditions to the adapter
391
+ * together, which can then decide what index to use based on both fields together.
392
+ *
393
+ * @param preserveNode Whether to preserve the current node and to explicitly not eliminate
394
+ * it during optimization. Used internally to preserve the root node and children of
395
+ * `not` groups. `not` groups will always have a single child, so there's nothing to
396
+ * optimize below a `not` (for now), and it makes the query logic simpler later.
397
+ */
398
+ optimized(preserveNode = true): UntypedCondition {
399
+ const operands = this.operands.map(o =>
400
+ o instanceof GroupCondition ? o.optimized(this.operator === 'not') : o
401
+ );
402
+
403
+ // we're only collapsing and/or groups that contains a single child for now,
404
+ // because they're much more common and much more trivial to collapse. basically,
405
+ // an `and`/`or` that contains a single child doesn't require the layer of
406
+ // logical grouping.
407
+ if (
408
+ !preserveNode &&
409
+ ['and', 'or'].includes(this.operator) &&
410
+ !this.field &&
411
+ operands.length === 1
412
+ ) {
413
+ const operand = operands[0];
414
+ if (operand instanceof FieldCondition) {
415
+ // between conditions should NOT be passed up the chain. if they
416
+ // need to be *negated* later, it is important that they be properly
417
+ // contained in an AND group. when de morgan's law is applied, the
418
+ // conditions are reversed and the AND group flips to an OR. this
419
+ // doesn't work right if the a `between` doesn't live in an AND group.
420
+ if (operand.operator !== 'between') {
421
+ return operand;
422
+ }
423
+ } else {
424
+ return operand;
425
+ }
426
+ }
427
+
428
+ return new GroupCondition(
429
+ this.model,
430
+ this.field,
431
+ this.relationshipType,
432
+ this.operator,
433
+ operands,
434
+ true
435
+ );
436
+ }
437
+
354
438
  /**
355
439
  * Fetches matching records from a given storage adapter using legacy predicates (for now).
356
440
  * @param storage The storage adapter this predicate will query against.
@@ -364,6 +448,10 @@ export class GroupCondition {
364
448
  breadcrumb: string[] = [],
365
449
  negate = false
366
450
  ): Promise<Record<string, any>[]> {
451
+ if (!this.isOptimized) {
452
+ return this.optimized().fetch(storage);
453
+ }
454
+
367
455
  const resultGroups: Array<Record<string, any>[]> = [];
368
456
 
369
457
  const operator = (negate ? negations[this.operator] : this.operator) as
@@ -433,35 +521,26 @@ export class GroupCondition {
433
521
 
434
522
  const relationship = ModelRelationship.from(this.model, g.field);
435
523
 
524
+ type JoinCondition = { [x: string]: { eq: any } };
436
525
  if (relationship) {
437
- const relativesPredicates: ((
438
- p: RecursiveModelPredicate<any>
439
- ) => RecursiveModelPredicate<any>)[] = [];
526
+ const allJoinConditions: { and: JoinCondition[] }[] = [];
440
527
  for (const relative of relatives) {
441
- const individualRowJoinConditions: FieldCondition[] = [];
442
-
528
+ const relativeConditions: JoinCondition[] = [];
443
529
  for (let i = 0; i < relationship.localJoinFields.length; i++) {
444
- // rightHandValue
445
- individualRowJoinConditions.push(
446
- new FieldCondition(relationship.localJoinFields[i], 'eq', [
447
- relative[relationship.remoteJoinFields[i]],
448
- ])
449
- );
530
+ relativeConditions.push({
531
+ [relationship.localJoinFields[i]]: {
532
+ eq: relative[relationship.remoteJoinFields[i]],
533
+ },
534
+ });
450
535
  }
451
-
452
- const predicate = p =>
453
- applyConditionsToV1Predicate(
454
- p,
455
- individualRowJoinConditions,
456
- false
457
- );
458
- relativesPredicates.push(predicate as any);
536
+ allJoinConditions.push({ and: relativeConditions });
459
537
  }
460
538
 
461
- const predicate = FlatModelPredicateCreator.createGroupFromExisting(
539
+ const predicate = FlatModelPredicateCreator.createFromAST(
462
540
  this.model.schema,
463
- 'or',
464
- relativesPredicates as any
541
+ {
542
+ or: allJoinConditions,
543
+ }
465
544
  );
466
545
 
467
546
  resultGroups.push(
@@ -486,6 +565,7 @@ export class GroupCondition {
486
565
  applyConditionsToV1Predicate(c, conditions, negateChildren)
487
566
  )
488
567
  );
568
+
489
569
  resultGroups.push(
490
570
  await storage.query(this.model.builder, predicate as any)
491
571
  );
@@ -613,6 +693,16 @@ export class GroupCondition {
613
693
  this.toAST()
614
694
  ) as unknown as StoragePredicate<T>;
615
695
  }
696
+
697
+ /**
698
+ * A JSON representation that's good for debugging.
699
+ */
700
+ toJSON() {
701
+ return {
702
+ ...this,
703
+ model: this.model.schema.name,
704
+ };
705
+ }
616
706
  }
617
707
 
618
708
  /**
@@ -665,6 +755,7 @@ export function recursivePredicateFor<T extends PersistentModel>(
665
755
  // next steps will be to add or(), and(), not(), and field.op() methods.
666
756
  const link = {} as any;
667
757
 
758
+ // so it can be looked up later with in the internals when processing conditions.
668
759
  registerPredicateInternals(baseCondition, link);
669
760
 
670
761
  const copyLink = () => {
@@ -37,6 +37,29 @@ import { Adapter } from './index';
37
37
 
38
38
  const logger = new Logger('DataStore');
39
39
 
40
+ /**
41
+ * The point after which queries composed of multiple simple OR conditions
42
+ * should scan-and-filter instead of individual queries for each condition.
43
+ *
44
+ * At some point, this should be configurable and/or dynamic based on table
45
+ * size and possibly even on observed average seek latency. For now, it's
46
+ * based on an manual "binary search" for the breakpoint as measured in the
47
+ * unit test suite. This isn't necessarily optimal. But, it's at least derived
48
+ * empirically, rather than theoretically and without any verification!
49
+ *
50
+ * REMEMBER! If you run more realistic benchmarks and update this value, update
51
+ * this comment so the validity and accuracy of future query tuning exercises
52
+ * can be compared to the methods used to derive the current value. E.g.,
53
+ *
54
+ * 1. In browser benchmark > unit test benchmark
55
+ * 2. Multi-browser benchmark > single browser benchmark
56
+ * 3. Benchmarks of various table sizes > static table size benchmark
57
+ *
58
+ * etc...
59
+ *
60
+ */
61
+ const MULTI_OR_CONDITION_SCAN_BREAKPOINT = 7;
62
+
40
63
  const DB_NAME = 'amplify-datastore';
41
64
  class IndexedDBAdapter implements Adapter {
42
65
  private schema!: InternalSchema;
@@ -481,23 +504,65 @@ class IndexedDBAdapter implements Adapter {
481
504
  return keyValues.length === keyPath.length ? keyValues : undefined;
482
505
  }
483
506
 
484
- private matchingIndex(
507
+ /**
508
+ * Tries to generate an index fetcher for the given predicates. Assumes
509
+ * that the given predicate conditions are contained by an AND group and
510
+ * should therefore all match a single record.
511
+ *
512
+ * @param storeName The table to query.
513
+ * @param predicates The predicates to try to AND together.
514
+ * @param transaction
515
+ */
516
+ private matchingIndexQueries<T extends PersistentModel>(
485
517
  storeName: string,
486
- fieldName: string,
518
+ predicates: PredicateObject<T>[],
487
519
  transaction: idb.IDBPTransaction<unknown, [string]>
488
520
  ) {
521
+ // could be expanded later to include `exec()` and a `cardinality` estimate?
522
+ const queries: (() => Promise<T[]>)[] = [];
523
+
524
+ const predicateIndex = new Map<string, PredicateObject<T>>();
525
+ for (const predicate of predicates) {
526
+ predicateIndex.set(String(predicate.field), predicate);
527
+ }
528
+
489
529
  const store = transaction.objectStore(storeName);
490
530
  for (const name of store.indexNames) {
491
531
  const idx = store.index(name);
492
- if (idx.keyPath === fieldName) {
493
- return idx;
532
+ const keypath = Array.isArray(idx.keyPath) ? idx.keyPath : [idx.keyPath];
533
+ const matchingPredicateValues: string[] = [];
534
+
535
+ for (const field of keypath) {
536
+ const p = predicateIndex.get(field);
537
+ if (p) {
538
+ matchingPredicateValues.push(String(p.operand));
539
+ } else {
540
+ break;
541
+ }
542
+ }
543
+
544
+ // if we have a matching predicate field for each component of this index,
545
+ // we can build a query for it. otherwise, we can't.
546
+ if (matchingPredicateValues.length === keypath.length) {
547
+ // re-create a transaction, because the transaction used to fetch the
548
+ // indexes may no longer be active.
549
+ queries.push(() =>
550
+ this.db
551
+ .transaction(storeName)
552
+ .objectStore(storeName)
553
+ .index(name)
554
+ .getAll(this.canonicalKeyPath(matchingPredicateValues))
555
+ );
494
556
  }
495
557
  }
558
+
559
+ return queries;
496
560
  }
497
561
 
498
- private async filterOnPredicate<T extends PersistentModel>(
562
+ private async baseQueryIndex<T extends PersistentModel>(
499
563
  storeName: string,
500
- predicates: PredicatesGroup<T>
564
+ predicates: PredicatesGroup<T>,
565
+ transaction?: idb.IDBPTransaction<unknown, [string]> | undefined
501
566
  ) {
502
567
  let { predicates: predicateObjs, type } = predicates;
503
568
 
@@ -505,82 +570,144 @@ class IndexedDBAdapter implements Adapter {
505
570
  // one level down: `{and: {or: {and: { <the predicates we want> }}}}`
506
571
  // so, we unpack and/or groups until we find a group with more than 1
507
572
  // child OR a child that is not a group (and is therefore a predicate "object").
508
- while (predicateObjs.length === 1 && isPredicateGroup(predicateObjs[0])) {
573
+ while (
574
+ predicateObjs.length === 1 &&
575
+ isPredicateGroup(predicateObjs[0]) &&
576
+ (predicateObjs[0] as PredicatesGroup<T>).type !== 'not'
577
+ ) {
509
578
  type = (predicateObjs[0] as PredicatesGroup<T>).type;
510
579
  predicateObjs = (predicateObjs[0] as PredicatesGroup<T>).predicates;
511
580
  }
512
581
 
513
- // where we'll accumulate candidate results, which will be filtered at the end.
514
- let candidateResults: T[];
515
-
516
- // AFAIK, this will always be a homogenous group of predicate objects at this point.
517
- // but, if that ever changes, this pulls out just the predicates from the list that
518
- // are field-level predicate objects we can potentially smash against an index.
519
- const fieldPredicates = predicateObjs.filter(p =>
520
- isPredicateObj(p)
582
+ const fieldPredicates = predicateObjs.filter(
583
+ p => isPredicateObj(p) && p.operator === 'eq'
521
584
  ) as PredicateObject<T>[];
522
585
 
523
586
  // several sub-queries could occur here. explicitly start a txn here to avoid
524
587
  // opening/closing multiple txns.
525
- const txn = this.db.transaction(storeName);
588
+ const txn = transaction || this.db.transaction(storeName);
589
+
590
+ let result = {} as {
591
+ groupType: typeof type | null;
592
+ indexedQueries: (() => Promise<T[]>)[];
593
+ };
526
594
 
527
- // our potential indexes or lacks thereof.
528
- const predicateIndexes = fieldPredicates.map(p => {
529
- return {
530
- predicate: p,
531
- index: this.matchingIndex(storeName, String(p.field), txn),
595
+ // `or` conditions, if usable, need to generate multiple queries. this is unlike
596
+ // `and` conditions, which should just be combined.
597
+ if (type === 'or') {
598
+ /**
599
+ * Base queries for each child group.
600
+ *
601
+ * For each child group, if it's an AND condition that results in a single
602
+ * subordinate "base query", we can use it. if it's any more complicated
603
+ * than that, it's not a simple join condition we want to use.
604
+ */
605
+ const groupQueries = await Promise.all(
606
+ predicateObjs
607
+ .filter(o => isPredicateGroup(o) && o.type === 'and')
608
+ .map(o =>
609
+ this.baseQueryIndex(storeName, o as PredicatesGroup<T>, txn)
610
+ )
611
+ ).then(queries =>
612
+ queries
613
+ .filter(q => q.indexedQueries.length === 1)
614
+ .map(i => i.indexedQueries)
615
+ );
616
+
617
+ /**
618
+ * Base queries for each simple child "object" (field condition).
619
+ */
620
+ const objectQueries = predicateObjs
621
+ .filter(o => isPredicateObj(o))
622
+ .map(o =>
623
+ this.matchingIndexQueries(storeName, [o as PredicateObject<T>], txn)
624
+ );
625
+
626
+ const indexedQueries = [...groupQueries, ...objectQueries]
627
+ .map(q => q[0])
628
+ .filter(i => i);
629
+
630
+ // if, after hunting for base queries, we don't have exactly 1 base query
631
+ // for each child group + object, stop trying to optimize. we're not dealing
632
+ // with a simple query that fits the intended optimization path.
633
+ if (predicateObjs.length > indexedQueries.length) {
634
+ result = {
635
+ groupType: null,
636
+ indexedQueries: [] as (() => Promise<T[]>)[],
637
+ };
638
+ } else {
639
+ result = {
640
+ groupType: 'or',
641
+ indexedQueries,
642
+ };
643
+ }
644
+ } else if (type === 'and') {
645
+ // our potential indexes or lacks thereof.
646
+ // note that we're only optimizing for `eq` right now.
647
+ result = {
648
+ groupType: type,
649
+ indexedQueries: this.matchingIndexQueries(
650
+ storeName,
651
+ fieldPredicates,
652
+ txn
653
+ ),
532
654
  };
533
- });
655
+ } else {
656
+ result = {
657
+ groupType: null,
658
+ indexedQueries: [],
659
+ };
660
+ }
534
661
 
535
662
  // Explicitly wait for txns from index queries to complete before proceding.
536
663
  // This helps ensure IndexedDB is in a stable, ready state. Else, subseqeuent
537
664
  // qeuries can sometimes appear to deadlock (at least in FakeIndexedDB).
538
- await txn.done;
665
+ // (Unless we were *given* the transaction -- we'll assume the parent handles it.)
666
+ if (!transaction) await txn.done;
667
+
668
+ return result;
669
+ }
670
+
671
+ private async filterOnPredicate<T extends PersistentModel>(
672
+ storeName: string,
673
+ predicates: PredicatesGroup<T>
674
+ ) {
675
+ const { predicates: predicateObjs, type } = predicates;
676
+
677
+ const { groupType, indexedQueries } = await this.baseQueryIndex(
678
+ storeName,
679
+ predicates
680
+ );
681
+
682
+ // where we'll accumulate candidate results, which will be filtered at the end.
683
+ let candidateResults: T[];
539
684
 
540
685
  // semi-naive implementation:
541
- if (type === 'and') {
686
+ if (groupType === 'and' && indexedQueries.length > 0) {
542
687
  // each condition must be satsified, we can form a base set with any
543
688
  // ONE of those conditions and then filter.
544
- const actualPredicateIndexes = predicateIndexes.filter(
545
- i => i.index && i.predicate.operator === 'eq'
546
- );
547
-
548
- if (actualPredicateIndexes.length > 0) {
549
- const predicateIndex = actualPredicateIndexes[0];
550
- candidateResults = <T[]>(
551
- await predicateIndex.index!.getAll(predicateIndex.predicate.operand)
552
- );
553
- } else {
554
- // no usable indexes
555
- candidateResults = <T[]>await this.getAll(storeName);
556
- }
557
- } else if (type === 'or') {
689
+ candidateResults = await indexedQueries[0]();
690
+ } else if (
691
+ groupType === 'or' &&
692
+ indexedQueries.length > 0 &&
693
+ indexedQueries.length <= MULTI_OR_CONDITION_SCAN_BREAKPOINT
694
+ ) {
558
695
  // NOTE: each condition implies a potentially distinct set. we only benefit
559
696
  // from using indexes here if EVERY condition uses an index. if any one
560
697
  // index requires a table scan, we gain nothing from the indexes.
561
698
  // NOTE: results must be DISTINCT-ified if we leverage indexes.
562
- if (
563
- predicateIndexes.length > 0 &&
564
- predicateIndexes.every(i => i.index && i.predicate.operator === 'eq')
565
- ) {
566
- const distinctResults = new Map<string, T>();
567
- for (const predicateIndex of predicateIndexes) {
568
- const resultGroup = <T[]>(
569
- await predicateIndex.index!.getAll(predicateIndex.predicate.operand)
570
- );
571
- for (const item of resultGroup) {
572
- // TODO: custom PK
573
- distinctResults.set(item.id, item);
574
- }
699
+ const distinctResults = new Map<string, T>();
700
+ for (const query of indexedQueries) {
701
+ const resultGroup = await query();
702
+ for (const item of resultGroup) {
703
+ const distinctificationString = JSON.stringify(item);
704
+ distinctResults.set(distinctificationString, item);
575
705
  }
576
-
577
- // we could conceivably check for special conditions and return early here.
578
- // but, this is simpler and has not yet had a measurable performance impact.
579
- candidateResults = Array.from(distinctResults.values());
580
- } else {
581
- // either no usable indexes or not all conditions can use one.
582
- candidateResults = <T[]>await this.getAll(storeName);
583
706
  }
707
+
708
+ // we could conceivably check for special conditions and return early here.
709
+ // but, this is simpler and has not yet had a measurable performance impact.
710
+ candidateResults = Array.from(distinctResults.values());
584
711
  } else {
585
712
  // nothing intelligent we can do with `not` groups unless or until we start
586
713
  // smashing comparison operators against indexes -- at which point we could