Skip to content
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

Polling - support select-for-update-skip-locked polling for mysql, mssql #264

Closed
kagkarlsson opened this issue Feb 15, 2022 · 2 comments
Closed
Labels
enhancement pri1 released Issue has been released

Comments

@kagkarlsson
Copy link
Owner

No description provided.

kagkarlsson added a commit that referenced this issue Oct 25, 2023
…unner transaction support. (#371)

* Adding support for `lock-and-fetch` aka. `SELECT FOR UPDATE .. SKIP
LOCKED` for MSSQL/SqlServer. Though testing has shown that
lock-and-fetch are prone to deadlocks, so it is not recommended until
that is understood/resolved. However, a query-hint was also added to
`fetch-and-lock-on-execute` for MSSQL, and it appears this resolves
issues with deadlocks for that strategy.
* Updates jdbc-handling dependency `micro-jdbc`
* Re-written transaction-handling (in `micro-jdbc`)
* Shading `micro-jdbc` dependency
* Explicit limit also for SqlServer, MySQL, Oracle
* Adds ClusterTest for Sql Server (test concurrency)

## Fixes

* #264
* #337
* #348 ?
* #273 ?

## Further work / fix later

* Mysql v8 skip locked syntax
* MariaDB skip locked syntax
* Oracle skip locked syntax

## Reminders
- [x] Added/ran automated tests
- [x] Update README and/or examples

---
cc @kagkarlsson
@kagkarlsson
Copy link
Owner Author

Groundwork laid, but not prioritizing this anymore.

kagkarlsson pushed a commit that referenced this issue Nov 20, 2024
## Brief, plain english overview of your changes here
The support was nearly finished in #371 but later commented out due to
"some issue [..] and limited time".

I tried to find out what those issues were and discovered that the
syntax of the select was wrong. In MySQL the `LIMIT` comes before the
`FOR UPDATE SKIP LOCKED`.

Using that fix `Mysql8CompatibilityTest` passes, I have done no further
testing yet.

## Fixes
#264


## Reminders
- [x] Added/ran automated tests
- [ ] Update README and/or examples (not applicable?)
- [x] Ran `mvn spotless:apply`
@kagkarlsson
Copy link
Owner Author

🎉 This issue has been resolved in v15.1.0 (Release Notes)

@kagkarlsson kagkarlsson added the released Issue has been released label Dec 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement pri1 released Issue has been released
Projects
None yet
Development

No branches or pull requests

1 participant