@dbos-inc/dbos-sdk 1.28.14-preview.g65f6845035 → 1.29.84-preview.gd5bdeb6a8d

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. package/dist/src/context.d.ts +36 -0
  2. package/dist/src/context.d.ts.map +1 -1
  3. package/dist/src/context.js +104 -1
  4. package/dist/src/context.js.map +1 -1
  5. package/dist/src/data_validation.d.ts.map +1 -1
  6. package/dist/src/data_validation.js +6 -2
  7. package/dist/src/data_validation.js.map +1 -1
  8. package/dist/src/dbos-executor.d.ts +36 -20
  9. package/dist/src/dbos-executor.d.ts.map +1 -1
  10. package/dist/src/dbos-executor.js +309 -21
  11. package/dist/src/dbos-executor.js.map +1 -1
  12. package/dist/src/dbos-runtime/runtime.d.ts +3 -8
  13. package/dist/src/dbos-runtime/runtime.d.ts.map +1 -1
  14. package/dist/src/dbos-runtime/runtime.js +7 -11
  15. package/dist/src/dbos-runtime/runtime.js.map +1 -1
  16. package/dist/src/dbos.d.ts +109 -0
  17. package/dist/src/dbos.d.ts.map +1 -0
  18. package/dist/src/dbos.js +551 -0
  19. package/dist/src/dbos.js.map +1 -0
  20. package/dist/src/debugger/debug_workflow.d.ts.map +1 -1
  21. package/dist/src/debugger/debug_workflow.js +5 -1
  22. package/dist/src/debugger/debug_workflow.js.map +1 -1
  23. package/dist/src/decorators.d.ts +11 -2
  24. package/dist/src/decorators.d.ts.map +1 -1
  25. package/dist/src/decorators.js +30 -8
  26. package/dist/src/decorators.js.map +1 -1
  27. package/dist/src/error.d.ts +6 -0
  28. package/dist/src/error.d.ts.map +1 -1
  29. package/dist/src/error.js +20 -2
  30. package/dist/src/error.js.map +1 -1
  31. package/dist/src/eventreceiver.d.ts +6 -2
  32. package/dist/src/eventreceiver.d.ts.map +1 -1
  33. package/dist/src/httpServer/handler.d.ts +0 -1
  34. package/dist/src/httpServer/handler.d.ts.map +1 -1
  35. package/dist/src/httpServer/handler.js +5 -13
  36. package/dist/src/httpServer/handler.js.map +1 -1
  37. package/dist/src/httpServer/middleware.d.ts +13 -2
  38. package/dist/src/httpServer/middleware.d.ts.map +1 -1
  39. package/dist/src/httpServer/middleware.js +101 -1
  40. package/dist/src/httpServer/middleware.js.map +1 -1
  41. package/dist/src/httpServer/server.d.ts +3 -2
  42. package/dist/src/httpServer/server.d.ts.map +1 -1
  43. package/dist/src/httpServer/server.js +40 -30
  44. package/dist/src/httpServer/server.js.map +1 -1
  45. package/dist/src/index.d.ts +2 -1
  46. package/dist/src/index.d.ts.map +1 -1
  47. package/dist/src/index.js +3 -3
  48. package/dist/src/index.js.map +1 -1
  49. package/dist/src/procedure.d.ts +1 -0
  50. package/dist/src/procedure.d.ts.map +1 -1
  51. package/dist/src/procedure.js.map +1 -1
  52. package/dist/src/scheduler/scheduler.d.ts.map +1 -1
  53. package/dist/src/scheduler/scheduler.js +3 -1
  54. package/dist/src/scheduler/scheduler.js.map +1 -1
  55. package/dist/src/system_database.d.ts.map +1 -1
  56. package/dist/src/system_database.js.map +1 -1
  57. package/dist/src/telemetry/logs.d.ts +11 -5
  58. package/dist/src/telemetry/logs.d.ts.map +1 -1
  59. package/dist/src/telemetry/logs.js +8 -11
  60. package/dist/src/telemetry/logs.js.map +1 -1
  61. package/dist/src/testing/testing_runtime.d.ts.map +1 -1
  62. package/dist/src/testing/testing_runtime.js +10 -4
  63. package/dist/src/testing/testing_runtime.js.map +1 -1
  64. package/dist/src/user_database.d.ts +1 -1
  65. package/dist/src/user_database.d.ts.map +1 -1
  66. package/dist/src/wfqueue.d.ts.map +1 -1
  67. package/dist/src/wfqueue.js +17 -2
  68. package/dist/src/wfqueue.js.map +1 -1
  69. package/dist/src/workflow.d.ts +7 -6
  70. package/dist/src/workflow.d.ts.map +1 -1
  71. package/dist/src/workflow.js +10 -187
  72. package/dist/src/workflow.js.map +1 -1
  73. package/dist/tsconfig.build.tsbuildinfo +1 -1
  74. package/package.json +5 -1
@@ -4,7 +4,6 @@ exports.RetrievedHandle = exports.InvokedHandle = exports.WorkflowContextImpl =
4
4
  /* eslint-disable @typescript-eslint/no-explicit-any */
5
5
  const dbos_executor_1 = require("./dbos-executor");
6
6
  const transaction_1 = require("./transaction");
7
- const step_1 = require("./step");
8
7
  const error_1 = require("./error");
9
8
  const serialize_error_1 = require("serialize-error");
10
9
  const utils_1 = require("./utils");
@@ -220,7 +219,9 @@ class WorkflowContextImpl extends context_1.DBOSContextImpl {
220
219
  // Note: cannot use invoke for childWorkflow because of potential recursive types on the workflow itself.
221
220
  const funcId = this.functionIDGetIncrement();
222
221
  const childUUID = this.workflowUUID + "-" + funcId;
223
- return this.#dbosExec.internalWorkflow(wf, { parentCtx: this, workflowUUID: childUUID }, this.workflowUUID, funcId, ...args);
222
+ return this.#dbosExec.internalWorkflow(wf, {
223
+ parentCtx: this, workflowUUID: childUUID,
224
+ }, this.workflowUUID, funcId, ...args);
224
225
  }
225
226
  async invokeChildWorkflow(wf, ...args) {
226
227
  return this.startChildWorkflow(wf, ...args).then((handle) => handle.getResult());
@@ -296,7 +297,11 @@ class WorkflowContextImpl extends context_1.DBOSContextImpl {
296
297
  if (!readOnly) {
297
298
  await this.flushResultBufferProc(client);
298
299
  }
299
- const result = await proc(ctxt, ...args);
300
+ let cresult;
301
+ await (0, context_1.runWithDBOSContext)(ctxt, async () => {
302
+ cresult = await proc(ctxt, ...args);
303
+ });
304
+ const result = cresult;
300
305
  if (readOnly) {
301
306
  // Buffer the output of read-only transactions instead of synchronously writing it.
302
307
  const readOutput = {
@@ -434,108 +439,7 @@ class WorkflowContextImpl extends context_1.DBOSContextImpl {
434
439
  * If it encounters any other error, throw it.
435
440
  */
436
441
  async transaction(txn, clsinst, ...args) {
437
- const txnInfo = this.#dbosExec.getTransactionInfo(txn);
438
- if (txnInfo === undefined) {
439
- throw new error_1.DBOSNotRegisteredError(txn.name);
440
- }
441
- const readOnly = txnInfo.config.readOnly ?? false;
442
- let retryWaitMillis = 1;
443
- const backoffFactor = 1.5;
444
- const maxRetryWaitMs = 2000; // Maximum wait 2 seconds.
445
- const funcId = this.functionIDGetIncrement();
446
- const span = this.#dbosExec.tracer.startSpan(txn.name, {
447
- operationUUID: this.workflowUUID,
448
- operationType: dbos_executor_1.OperationType.TRANSACTION,
449
- authenticatedUser: this.authenticatedUser,
450
- assumedRole: this.assumedRole,
451
- authenticatedRoles: this.authenticatedRoles,
452
- readOnly: readOnly,
453
- isolationLevel: txnInfo.config.isolationLevel,
454
- }, this.span);
455
- while (true) {
456
- let txn_snapshot = "invalid";
457
- const workflowUUID = this.workflowUUID;
458
- const wrappedTransaction = async (client) => {
459
- const tCtxt = new transaction_1.TransactionContextImpl(this.#dbosExec.userDatabase.getName(), client, this, span, this.#dbosExec.logger, funcId, txn.name);
460
- // If the UUID is preset, it is possible this execution previously happened. Check, and return its original result if it did.
461
- // Note: It is possible to retrieve a generated ID from a workflow handle, run a concurrent execution, and cause trouble for yourself. We recommend against this.
462
- if (this.presetUUID) {
463
- const check = await this.checkTxExecution(client, funcId);
464
- txn_snapshot = check.txn_snapshot;
465
- if (check.output !== dbos_executor_1.dbosNull) {
466
- tCtxt.span.setAttribute("cached", true);
467
- tCtxt.span.setStatus({ code: api_1.SpanStatusCode.OK });
468
- this.#dbosExec.tracer.endSpan(tCtxt.span);
469
- return check.output;
470
- }
471
- }
472
- else {
473
- // Collect snapshot information for read-only transactions and non-preset UUID transactions, if not already collected above
474
- txn_snapshot = await this.retrieveTxSnapshot(client);
475
- }
476
- // For non-read-only transactions, flush the result buffer.
477
- if (!readOnly) {
478
- await this.flushResultBuffer(client);
479
- }
480
- // Execute the user's transaction.
481
- const result = await txn.call(clsinst, tCtxt, ...args);
482
- // Record the execution, commit, and return.
483
- if (readOnly) {
484
- // Buffer the output of read-only transactions instead of synchronously writing it.
485
- const readOutput = {
486
- output: result,
487
- txn_snapshot: txn_snapshot,
488
- created_at: Date.now(),
489
- };
490
- this.resultBuffer.set(funcId, readOutput);
491
- }
492
- else {
493
- try {
494
- // Synchronously record the output of write transactions and obtain the transaction ID.
495
- const pg_txn_id = await this.recordOutputTx(client, funcId, txn_snapshot, result);
496
- tCtxt.span.setAttribute("pg_txn_id", pg_txn_id);
497
- this.resultBuffer.clear();
498
- }
499
- catch (error) {
500
- if (this.#dbosExec.userDatabase.isFailedSqlTransactionError(error)) {
501
- this.logger.error(`Postgres aborted the ${txn.name} @Transaction of Workflow ${workflowUUID}, but the function did not raise an exception. Please ensure that the @Transaction method raises an exception if the database transaction is aborted.`);
502
- throw new error_1.DBOSFailedSqlTransactionError(workflowUUID, txn.name);
503
- }
504
- else {
505
- throw error;
506
- }
507
- }
508
- }
509
- return result;
510
- };
511
- try {
512
- const result = await this.#dbosExec.userDatabase.transaction(wrappedTransaction, txnInfo.config);
513
- span.setStatus({ code: api_1.SpanStatusCode.OK });
514
- this.#dbosExec.tracer.endSpan(span);
515
- return result;
516
- }
517
- catch (err) {
518
- if (this.#dbosExec.userDatabase.isRetriableTransactionError(err)) {
519
- // serialization_failure in PostgreSQL
520
- span.addEvent("TXN SERIALIZATION FAILURE", { "retryWaitMillis": retryWaitMillis }, performance.now());
521
- // Retry serialization failures.
522
- await (0, utils_1.sleepms)(retryWaitMillis);
523
- retryWaitMillis *= backoffFactor;
524
- retryWaitMillis = retryWaitMillis < maxRetryWaitMs ? retryWaitMillis : maxRetryWaitMs;
525
- continue;
526
- }
527
- // Record and throw other errors.
528
- const e = err;
529
- await this.#dbosExec.userDatabase.transaction(async (client) => {
530
- await this.flushResultBuffer(client);
531
- await this.recordErrorTx(client, funcId, txn_snapshot, e);
532
- }, { isolationLevel: transaction_1.IsolationLevel.ReadCommitted });
533
- this.resultBuffer.clear();
534
- span.setStatus({ code: api_1.SpanStatusCode.ERROR, message: e.message });
535
- this.#dbosExec.tracer.endSpan(span);
536
- throw err;
537
- }
538
- }
442
+ return this.#dbosExec.callTransactionFunction(txn, clsinst, this, ...args);
539
443
  }
540
444
  /**
541
445
  * Execute a step function.
@@ -543,88 +447,7 @@ class WorkflowContextImpl extends context_1.DBOSContextImpl {
543
447
  * The step may execute many times, but once it is complete, it will not re-execute.
544
448
  */
545
449
  async external(stepFn, clsInst, ...args) {
546
- const commInfo = this.#dbosExec.getStepInfo(stepFn);
547
- if (commInfo === undefined) {
548
- throw new error_1.DBOSNotRegisteredError(stepFn.name);
549
- }
550
- const funcID = this.functionIDGetIncrement();
551
- const maxRetryIntervalSec = 3600; // Maximum retry interval: 1 hour
552
- const span = this.#dbosExec.tracer.startSpan(stepFn.name, {
553
- operationUUID: this.workflowUUID,
554
- operationType: dbos_executor_1.OperationType.COMMUNICATOR,
555
- authenticatedUser: this.authenticatedUser,
556
- assumedRole: this.assumedRole,
557
- authenticatedRoles: this.authenticatedRoles,
558
- retriesAllowed: commInfo.config.retriesAllowed,
559
- intervalSeconds: commInfo.config.intervalSeconds,
560
- maxAttempts: commInfo.config.maxAttempts,
561
- backoffRate: commInfo.config.backoffRate,
562
- }, this.span);
563
- const ctxt = new step_1.StepContextImpl(this, funcID, span, this.#dbosExec.logger, commInfo.config, stepFn.name);
564
- await this.#dbosExec.userDatabase.transaction(async (client) => {
565
- await this.flushResultBuffer(client);
566
- }, { isolationLevel: transaction_1.IsolationLevel.ReadCommitted });
567
- this.resultBuffer.clear();
568
- // Check if this execution previously happened, returning its original result if it did.
569
- const check = await this.#dbosExec.systemDatabase.checkOperationOutput(this.workflowUUID, ctxt.functionID);
570
- if (check !== dbos_executor_1.dbosNull) {
571
- ctxt.span.setAttribute("cached", true);
572
- ctxt.span.setStatus({ code: api_1.SpanStatusCode.OK });
573
- this.#dbosExec.tracer.endSpan(ctxt.span);
574
- return check;
575
- }
576
- // Execute the step function. If it throws an exception, retry with exponential backoff.
577
- // After reaching the maximum number of retries, throw an DBOSError.
578
- let result = dbos_executor_1.dbosNull;
579
- let err = dbos_executor_1.dbosNull;
580
- if (ctxt.retriesAllowed) {
581
- let numAttempts = 0;
582
- let intervalSeconds = ctxt.intervalSeconds;
583
- if (intervalSeconds > maxRetryIntervalSec) {
584
- this.logger.warn(`Step config interval exceeds maximum allowed interval, capped to ${maxRetryIntervalSec} seconds!`);
585
- }
586
- while (result === dbos_executor_1.dbosNull && numAttempts++ < ctxt.maxAttempts) {
587
- try {
588
- result = await stepFn.call(clsInst, ctxt, ...args);
589
- }
590
- catch (error) {
591
- const e = error;
592
- this.logger.warn(`Error in step being automatically retried. Attempt ${numAttempts} of ${ctxt.maxAttempts}. ${e.stack}`);
593
- span.addEvent(`Step attempt ${numAttempts + 1} failed`, { "retryIntervalSeconds": intervalSeconds, "error": error.message }, performance.now());
594
- if (numAttempts < ctxt.maxAttempts) {
595
- // Sleep for an interval, then increase the interval by backoffRate.
596
- // Cap at the maximum allowed retry interval.
597
- await (0, utils_1.sleepms)(intervalSeconds * 1000);
598
- intervalSeconds *= ctxt.backoffRate;
599
- intervalSeconds = intervalSeconds < maxRetryIntervalSec ? intervalSeconds : maxRetryIntervalSec;
600
- }
601
- }
602
- }
603
- }
604
- else {
605
- try {
606
- result = await stepFn.call(clsInst, ctxt, ...args);
607
- }
608
- catch (error) {
609
- err = error;
610
- }
611
- }
612
- // `result` can only be dbosNull when the step timed out
613
- if (result === dbos_executor_1.dbosNull) {
614
- // Record the error, then throw it.
615
- err = err === dbos_executor_1.dbosNull ? new error_1.DBOSError("Step reached maximum retries.", 1) : err;
616
- await this.#dbosExec.systemDatabase.recordOperationError(this.workflowUUID, ctxt.functionID, err);
617
- ctxt.span.setStatus({ code: api_1.SpanStatusCode.ERROR, message: err.message });
618
- this.#dbosExec.tracer.endSpan(ctxt.span);
619
- throw err;
620
- }
621
- else {
622
- // Record the execution and return.
623
- await this.#dbosExec.systemDatabase.recordOperationOutput(this.workflowUUID, ctxt.functionID, result);
624
- ctxt.span.setStatus({ code: api_1.SpanStatusCode.OK });
625
- this.#dbosExec.tracer.endSpan(ctxt.span);
626
- return result;
627
- }
450
+ return this.#dbosExec.callStepFunction(stepFn, clsInst, this, ...args);
628
451
  }
629
452
  /**
630
453
  * Send a message to a workflow identified by a UUID.
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}