Issue: We observed that, when creating a database based on the same
gORM schema multiple times, indexes could appear in different orders,
hurting determinism for use-cases like schema comparison.
In order to fix this, it's simple to switch the ParseIndexes function
to return a list of indices rather than a map, so the callers will
iterate in deterministic order.
Replaced the old release workflow with a new setup using Release
Drafter. This refactor allows for more detailed release notes by
categorizing changes and automatically generating release drafts.
The new workflow triggers on semantic version tags and improves
permissions management. This change enhances the release process
by providing better documentation and automation.
* feat(workflows): add GitHub Action to create release on new tag
This workflow automates the release creation process whenever a new
tag is pushed to the repository. It checks if a release for the tag
already exists and creates one if it doesn't, enhancing the release
management and streamlining the deployment process.
* test
* fix(workflow): improve release existence check in release-on-tag.yml
Refactor the script to improve checking for existing releases by tag.
Return an object instead of using core.setOutput to streamline the
workflow logic. Also, set result-encoding to string for better
compatibility.
* fix(workflow): correct output handling in release-on-tag.yml
Corrected the output handling in the 'release-on-tag.yml' workflow file
by changing 'result-encoding' to 'outputs'. This ensures that the step
correctly checks if a release exists before attempting to create a new
one, thereby avoiding potential errors during the release process.
Added a blank line for better readability.
* fix(workflow): correct output setting in release-on-tag workflow
Refactored how the release_exists output is set to be compatible with
GitHub Actions syntax. This ensures the workflow reliably detects if
a release already exists, improving the robustness of the release
process.
* fix(release): correct output handling in release-on-tag workflow
Improved the way outputs are managed in the 'check_release' step by
returning values instead of direct assignments. This change ensures
better handling of release existence checks and improves code
readability. Added 'result-encoding' to specify string encoding for
results.
* fix(workflow): correct release existence check and add debug output
Refactored the release existence check to return a simple boolean
string ('true'/'false') rather than an object. Added a step to print
the release existence status for debugging purposes. This ensures
correct conditional evaluation and aids in troubleshooting workflow
issues.
* fix(workflow): simplify release process by removing redundant checks
The release-on-tag workflow has been streamlined by eliminating the
redundant steps checking for existing releases. This change reduces
complexity and speeds up the release process by directly creating a
release on every tag push without prior existence verification.
* Use official SQL Server docker image for tests
* Try with tag 2019-latest instead of latest
* Use platform ubuntu-20.04 for SQL Server
* Switch to 2019-CU18-ubuntu-20.04
* Check with 2022-latest image tag and ubuntu-latest platform
* Update health-cmd
* Try sqlcmd without -N -C
* Re-include -N -C, try with ubuntu-20.04
* Try ubuntu-20.04 without -N -C (last trial)
* Finalize working config
* Remove unused env variables
* fix memory leaks in PrepareStatementDB
* Fix CR:
1) Fix potential Segmentation Fault in Reset function
2) Setting db.Stmts to nil map when Close to avoid further using
* Add Test:
1) TestPreparedStmtConcurrentReset
2) TestPreparedStmtConcurrentClose
* Fix test, create new connection to keep away from other tests
---------
Co-authored-by: Zehui Chen <zehui@ssc-hn.com>