-
Notifications
You must be signed in to change notification settings - Fork 591
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
datastore: transaction: only commit once #234
Merged
stephenplusplus
merged 1 commit into
googleapis:master
from
stephenplusplus:transaction-finalizing
Sep 19, 2014
Merged
datastore: transaction: only commit once #234
stephenplusplus
merged 1 commit into
googleapis:master
from
stephenplusplus:transaction-finalizing
Sep 19, 2014
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
assert.ifError(err); | ||
if (entity) { | ||
tDone(); | ||
return; | ||
} else { | ||
ds.save({ key: key, data: obj }, function(err) { | ||
t.save({ key: key, data: obj }, function(err) { |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
After sending this, I found some room for refactoring. But, the process will still be the same, so don't worry about waiting to review |
LGTM, feel free to merge. |
My idea for refactoring quickly made testing more complicated. Will revisit after @ryanseys's API overhaul. |
stephenplusplus
added a commit
that referenced
this pull request
Sep 19, 2014
datastore: transaction: only commit once
sofisl
pushed a commit
that referenced
this pull request
Sep 27, 2022
4 tasks
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Oct 11, 2022
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Oct 12, 2022
sofisl
pushed a commit
that referenced
this pull request
Oct 12, 2022
* fix(docs): reference docs should link to section of googleapis.dev with API reference * fix(docs): make anchors work in jsdoc
This was referenced Oct 12, 2022
sofisl
pushed a commit
that referenced
this pull request
Oct 13, 2022
* changes without context autosynth cannot find the source of changes triggered by earlier changes in this repository, or by version upgrades to tools such as linters. * docs: add instructions for authenticating for system tests * docs: add instructions for authenticating for system tests * docs: add phrasing change to README Source-Author: sofisl <55454395+sofisl@users.noreply.github.com> Source-Date: Mon Dec 21 13:21:29 2020 -0800 Source-Repo: googleapis/synthtool Source-Sha: 363fe305e9ce34a6cd53951c6ee5f997094b54ee Source-Link: googleapis/synthtool@363fe30
sofisl
pushed a commit
that referenced
this pull request
Oct 13, 2022
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Oct 13, 2022
sofisl
pushed a commit
that referenced
this pull request
Oct 13, 2022
sofisl
pushed a commit
that referenced
this pull request
Nov 9, 2022
This was referenced Nov 9, 2022
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Nov 11, 2022
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Nov 11, 2022
This PR was generated using Autosynth. 🌈 Synth log will be available here: https://source.cloud.google.com/results/invocations/96fb0e9d-e02a-4451-878f-e646368369cc/targets - [ ] To automatically regenerate this PR, check this box. Source-Link: googleapis/synthtool@94421c4
sofisl
pushed a commit
that referenced
this pull request
Nov 11, 2022
This was referenced Nov 11, 2022
sofisl
pushed a commit
that referenced
this pull request
Nov 11, 2022
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Nov 11, 2022
PiperOrigin-RevId: 431035391 Source-Link: googleapis/googleapis@4b39bf1 Source-Link: googleapis/googleapis-gen@c2f4825 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYzJmNDgyNTJjN2E3ZDhkNThkZmUxYzg2ZWExOGQ0ZjAxY2RjMTE5ZSJ9 See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md PiperOrigin-RevId: 431547560 Source-Link: googleapis/googleapis@8df2b3a Source-Link: googleapis/googleapis-gen@4bb2092 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNGJiMjA5MmZhM2E5NGRlZTUzMzFmYzU4MDY5MWM2ZmRkNjIyMzdhNyJ9 See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
sofisl
pushed a commit
that referenced
this pull request
Nov 16, 2022
sofisl
pushed a commit
that referenced
this pull request
Nov 16, 2022
🤖 I have created a release *beep* *boop* --- ## 1.0.0 (2022-05-18) ### ⚠ BREAKING CHANGES * update library to use Node 12 (#374) * rename parent to project in SearchRelatedAccountGroupMembershipsRequest (#370) * remove key management API (#366) * Remove RecaptchaEnterpriseServiceV1Beta1Client. * The library now supports Node.js v10+. The last version to support Node.js v8 is tagged legacy-8 on NPM. * upgrade engines field to >=8.10.0 (#2) ### Features * add crud support for keys ([#84](googleapis/nodejs-recaptcha-enterprise#84)) ([adfc3f9](googleapis/nodejs-recaptcha-enterprise@adfc3f9)) * add GetMetrics and MigrateKey methods to reCAPTCHA enterprise API ([#318](googleapis/nodejs-recaptcha-enterprise#318)) ([55b1adc](googleapis/nodejs-recaptcha-enterprise@55b1adc)) * add new reCAPTCHA Enterprise fraud annotations ([#334](googleapis/nodejs-recaptcha-enterprise#334)) ([24fdff1](googleapis/nodejs-recaptcha-enterprise@24fdff1)) * add plural and singular resource descriptor ([#78](googleapis/nodejs-recaptcha-enterprise#78)) ([a67ffa7](googleapis/nodejs-recaptcha-enterprise@a67ffa7)) * add reCAPTCHA Enterprise account defender API methods ([#328](googleapis/nodejs-recaptcha-enterprise#328)) ([2099c50](googleapis/nodejs-recaptcha-enterprise@2099c50)) * Add support for Password Check through the private_password_leak_verification field in the reCAPTCHA Assessment ([#376](googleapis/nodejs-recaptcha-enterprise#376)) ([7c1583c](googleapis/nodejs-recaptcha-enterprise@7c1583c)) * add the v1 API surface ([#141](googleapis/nodejs-recaptcha-enterprise#141)) ([bb1bd33](googleapis/nodejs-recaptcha-enterprise@bb1bd33)) * deferred client initialization ([#128](googleapis/nodejs-recaptcha-enterprise#128)) ([3de999e](googleapis/nodejs-recaptcha-enterprise@3de999e)) * drop node8 support, support for async iterators ([#145](googleapis/nodejs-recaptcha-enterprise#145)) ([cc4cc51](googleapis/nodejs-recaptcha-enterprise@cc4cc51)) * export protos in src/index.ts ([ffd77ca](googleapis/nodejs-recaptcha-enterprise@ffd77ca)) * introduces style enumeration ([#234](googleapis/nodejs-recaptcha-enterprise#234)) ([35f1bb6](googleapis/nodejs-recaptcha-enterprise@35f1bb6)) * load protos from JSON, grpc-fallback support ([7a4b2a6](googleapis/nodejs-recaptcha-enterprise@7a4b2a6)) * move to typescript code generation ([#87](googleapis/nodejs-recaptcha-enterprise#87)) ([11051db](googleapis/nodejs-recaptcha-enterprise@11051db)) * support apiEndpoint override in client constructor ([#30](googleapis/nodejs-recaptcha-enterprise#30)) ([1192afd](googleapis/nodejs-recaptcha-enterprise@1192afd)) * turns on self-signed JWT feature flag ([#311](googleapis/nodejs-recaptcha-enterprise#311)) ([c12da34](googleapis/nodejs-recaptcha-enterprise@c12da34)) * update scopes and classifications ([#60](googleapis/nodejs-recaptcha-enterprise#60)) ([b216630](googleapis/nodejs-recaptcha-enterprise@b216630)) ### Bug Fixes * allow calls with no request, add JSON proto ([ab643f8](googleapis/nodejs-recaptcha-enterprise@ab643f8)) * **browser:** check for fetch on window ([#226](googleapis/nodejs-recaptcha-enterprise#226)) ([8eb79dd](googleapis/nodejs-recaptcha-enterprise@8eb79dd)) * **build:** switch primary branch to main ([#315](googleapis/nodejs-recaptcha-enterprise#315)) ([2fc99ad](googleapis/nodejs-recaptcha-enterprise@2fc99ad)) * DEADLINE_EXCEEDED retry code is idempotent ([#10](googleapis/nodejs-recaptcha-enterprise#10)) ([746151c](googleapis/nodejs-recaptcha-enterprise@746151c)) * **deps:** bump google-gax to 1.7.5 ([#68](googleapis/nodejs-recaptcha-enterprise#68)) ([0605bb8](googleapis/nodejs-recaptcha-enterprise@0605bb8)) * **deps:** google-gax v2.17.0 with mTLS ([#294](googleapis/nodejs-recaptcha-enterprise#294)) ([45c12e5](googleapis/nodejs-recaptcha-enterprise@45c12e5)) * **deps:** google-gax v2.17.1 ([#297](googleapis/nodejs-recaptcha-enterprise#297)) ([15640f1](googleapis/nodejs-recaptcha-enterprise@15640f1)) * **deps:** google-gax v2.24.1 ([#309](googleapis/nodejs-recaptcha-enterprise#309)) ([de80090](googleapis/nodejs-recaptcha-enterprise@de80090)) * **deps:** pin TypeScript below 3.7.0 ([0e96508](googleapis/nodejs-recaptcha-enterprise@0e96508)) * **deps:** require google-gax v2.12.0 ([#270](googleapis/nodejs-recaptcha-enterprise#270)) ([ab16a25](googleapis/nodejs-recaptcha-enterprise@ab16a25)) * **deps:** update dependency google-gax to v1 ([#17](googleapis/nodejs-recaptcha-enterprise#17)) ([0f9e159](googleapis/nodejs-recaptcha-enterprise@0f9e159)) * do not modify options object, use defaultScopes ([#222](googleapis/nodejs-recaptcha-enterprise#222)) ([807b692](googleapis/nodejs-recaptcha-enterprise@807b692)) * do not retry request on DEADLINE_EXCEEDED ([a6e9f4a](googleapis/nodejs-recaptcha-enterprise@a6e9f4a)) * **docs:** bump the release level to beta ([#76](googleapis/nodejs-recaptcha-enterprise#76)) ([8a2e2c0](googleapis/nodejs-recaptcha-enterprise@8a2e2c0)) * **docs:** link to reference docs section on googleapis.dev ([#35](googleapis/nodejs-recaptcha-enterprise#35)) ([14ada6b](googleapis/nodejs-recaptcha-enterprise@14ada6b)) * **docs:** move to new client docs URL ([#32](googleapis/nodejs-recaptcha-enterprise#32)) ([6a95276](googleapis/nodejs-recaptcha-enterprise@6a95276)) * **docs:** snippets are now replaced in jsdoc comments ([#74](googleapis/nodejs-recaptcha-enterprise#74)) ([b3c31fc](googleapis/nodejs-recaptcha-enterprise@b3c31fc)) * enum, bytes, and Long types now accept strings ([394cfd8](googleapis/nodejs-recaptcha-enterprise@394cfd8)) * export explicit version from protos.js ([#150](googleapis/nodejs-recaptcha-enterprise#150)) ([0bfb3c7](googleapis/nodejs-recaptcha-enterprise@0bfb3c7)) * GoogleAdsError missing using generator version after 1.3.0 ([#279](googleapis/nodejs-recaptcha-enterprise#279)) ([6dc35a7](googleapis/nodejs-recaptcha-enterprise@6dc35a7)) * include the correct version of node in a header ([#46](googleapis/nodejs-recaptcha-enterprise#46)) ([2cc8099](googleapis/nodejs-recaptcha-enterprise@2cc8099)) * make request optional in all cases ([#290](googleapis/nodejs-recaptcha-enterprise#290)) ([e18a1d1](googleapis/nodejs-recaptcha-enterprise@e18a1d1)) * pass x-goog-request-params header for streaming calls ([983411e](googleapis/nodejs-recaptcha-enterprise@983411e)) * proper fallback option handling ([#180](googleapis/nodejs-recaptcha-enterprise#180)) ([52fe53d](googleapis/nodejs-recaptcha-enterprise@52fe53d)) * proper routing headers ([4d1b1d3](googleapis/nodejs-recaptcha-enterprise@4d1b1d3)) * regen protos and tests, formatting ([#169](googleapis/nodejs-recaptcha-enterprise#169)) ([731fe3b](googleapis/nodejs-recaptcha-enterprise@731fe3b)) * remove eslint, update gax, fix generated protos, run the generator ([#155](googleapis/nodejs-recaptcha-enterprise#155)) ([21b09f5](googleapis/nodejs-recaptcha-enterprise@21b09f5)) * remove key management API ([#366](googleapis/nodejs-recaptcha-enterprise#366)) ([44a5a4b](googleapis/nodejs-recaptcha-enterprise@44a5a4b)) * rename parent to project in SearchRelatedAccountGroupMembershipsRequest ([#370](googleapis/nodejs-recaptcha-enterprise#370)) ([aad0883](googleapis/nodejs-recaptcha-enterprise@aad0883)) * synth.py clean up for multiple version ([#172](googleapis/nodejs-recaptcha-enterprise#172)) ([ee1c250](googleapis/nodejs-recaptcha-enterprise@ee1c250)) * Updating WORKSPACE files to use the newest version of the Typescript generator. ([#299](googleapis/nodejs-recaptcha-enterprise#299)) ([6787e23](googleapis/nodejs-recaptcha-enterprise@6787e23)) * use compatible version of google-gax ([dfb174a](googleapis/nodejs-recaptcha-enterprise@dfb174a)) * use require() to load JSON protos ([#273](googleapis/nodejs-recaptcha-enterprise#273)) ([fdbc0fe](googleapis/nodejs-recaptcha-enterprise@fdbc0fe)) ### Build System * update library to use Node 12 ([#374](googleapis/nodejs-recaptcha-enterprise#374)) ([4042ae2](googleapis/nodejs-recaptcha-enterprise@4042ae2)) * upgrade engines field to >=8.10.0 ([#2](googleapis/nodejs-recaptcha-enterprise#2)) ([94d6a49](googleapis/nodejs-recaptcha-enterprise@94d6a49)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Nov 17, 2022
4 tasks
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Jan 10, 2023
sofisl
pushed a commit
that referenced
this pull request
Jan 24, 2023
sofisl
pushed a commit
that referenced
this pull request
Jan 25, 2023
sofisl
pushed a commit
that referenced
this pull request
Jan 26, 2023
feat: Exposing a field for v1 CustomJob-Tensorboard integration. PiperOrigin-RevId: 410304645 Source-Link: googleapis/googleapis@bd7db05 Source-Link: googleapis/googleapis-gen@66432ef Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNjY0MzJlZjhkOTMxNGU1ZDMwNWY1NTc0N2YxYzA3ZjM3NzA4MTUxZSJ9 Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Benjamin E. Coe <bencoe@google.com>
4 tasks
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Sep 13, 2023
4 tasks
sofisl
pushed a commit
that referenced
this pull request
Sep 14, 2023
4 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed an issue when trying to work with transactions. Here was my code that wasn't working:
This would cause:
Behind the scenes,
transaction.delete()
made thecommit
API call with my delete request successfully. However, when I calldone()
, that runsTransaction.prototype.finalize
, which will try to make another API call tocommit
because nothing marked my transactional operation asfinalized
.this.isFinalized
is currently only set after atransaction.rollback()
ortransaction.commit()
. This PR setsisFinalized = true
fromdelete
andsave
as well, if the request is transactional.