8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 16:03:03 +01:00
Commit Graph

52020 Commits

Author SHA1 Message Date
Vlad Khorsun
7ebb66b5d3 Improvement #8353 : Report unique usernames for isc_info_user_names 2024-12-19 10:21:58 +02:00
Artyom Abakumov
2528942a8c Better handle null pointer checks in GPRE generated code 2024-12-18 23:08:10 -03:00
GitHub Action
d1f8afd885 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-17 20:17:53 +00:00
Artyom Abakumov
4d7b5fdfeb
Mark FB_ALIGN as constexpr (#8339)
Co-authored-by: Artyom Abakumov <artyom.abakumov@red-soft.ru>
2024-12-17 11:24:41 +03:00
GitHub Action
85e25e543b increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-11 20:18:54 +00:00
Vlad Khorsun
d250eecd8a Fixed bug #8350 : Missed records in replicated database 2024-12-11 18:20:01 +02:00
Dmitry Yemanov
ebfc854059 Post-fixes by Andrey Kravchenko: Move ENV/FILE parsing into a separate routine. Validate configuration key before value. Ensure the username/password is not specified multiple times. 2024-12-11 15:40:43 +03:00
GitHub Action
b37ac359f3 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-10 20:18:36 +00:00
Artyom Ivanov
00581850a4 Refactor AutoDispose and AutoRelease
Removed redundant class definitions and replaced them with type aliases.
2024-12-10 07:15:56 -03:00
Dmitry Yemanov
a8c5b9fa96 Make automatic online re-initialization reliable (#8324) 2024-12-10 09:59:08 +03:00
GitHub Action
2cc772c8f8 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-08 20:17:03 +00:00
Adriano dos Santos Fernandes
e392484582 Fixes to RDB$SQL package. 2024-12-08 09:27:27 -03:00
Adriano dos Santos Fernandes
7d13f3fb12 Bettern constructor for AnyRef. 2024-12-08 09:20:14 -03:00
GitHub Action
9694399ea6 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-05 20:18:55 +00:00
Dmitry Yemanov
c60acb0028
Cleanup batches inside the engine if they were not released explicitly before disconnection. This avoids a resource leak (it's mostly about TempSpace). (#8341) 2024-12-05 12:59:45 +03:00
GitHub Action
30b77ddd13 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-03 20:18:28 +00:00
Andrey Kravchenko
b8f24cdd61
Fix use :@ characters and add sub-section to configure username and password for sync_replica (#8327)
* Add sub-section to configure username and password for sync_replica with the ability to read its from a file or from an environment variable

Also fix use :@ characters in username and password

* Corrections after Dmitry Yemanov review

Fix opening a file if it is specified in absolute path
Also fix the error message if there are not enough permissions to open the file

* Add fixup separators also revert prefix if filename has relative path

* Create a parseSyncReplica function and move the code to better read it

* Add explicit to constructor SyncReplica class with a single non-default parameter

---------

Co-authored-by: Andrey Kravchenko <andrey.kravchenko@red-soft.ru>
2024-12-03 09:49:40 +03:00
GitHub Action
4a1f4e2bc4 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-12-02 20:16:55 +00:00
Vlad Khorsun
021d8c9e1a Fixed bug #8336 : Error: "Invalid clumplet buffer structure: buffer end before end of clumplet - clumplet too long (77779)" when using trusted auth 2024-12-02 17:05:00 +02:00
GitHub Action
1f283c8918 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-28 20:17:56 +00:00
Adriano dos Santos Fernandes
31d8495a1f Fix buffer overflow using string_view. 2024-11-27 23:07:05 -03:00
Vlad Khorsun
6551af1fcb Fixed bug #8331 : Crash of fbclient.dll on Windows 2024-11-27 22:41:59 +02:00
GitHub Action
77b95b8729 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-26 20:18:15 +00:00
GitHub Action
e9584dbc24 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-25 20:18:10 +00:00
Ilya Eremin
babd741daa
Add AUTO RELEASE TEMP BLOBID transaction option (#8323)
* Add AUTO RELEASE TEMP BLOBID transaction option

It makes the transaction release temporary ID of user BLOB just after its materialization. It's useful for massive insertions of records with user-defined BLOBs because it eliminates the memory overhead caused by creating and keeping temporary IDs until the transaction ends. This option is used during the database restore.

* Place tokens in the correct sections

* Avoid repeated attempts to start a transaction with options that are not supported by the target server

* Correct AUTO RELEASE TEMP BLOBID description

* Check bad_tpb_form error for more reliable detection of unsupported transaction options

* Do not use unsupported options for transactions of parallel workers performing RestoreRelationTask
2024-11-25 11:32:33 +03:00
GitHub Action
933ac7bf19 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-17 20:16:20 +00:00
Adriano dos Santos Fernandes
1a4717fa9f
Correction. 2024-11-16 22:07:34 -03:00
GitHub Action
9e2639d211 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-16 20:15:55 +00:00
Dmitry Yemanov
2797cea142 Add forgotten part of my recent commit for #5654 2024-11-16 21:25:50 +03:00
Dmitry Yemanov
0d72b8097c Do not consider non-deterministic expressions as invariants in pre-filters (#7853)
* Do not consider non-deterministic expressions as invariants in pre-filters

* Follow Adriano's suggestion

* Allow deterministic uncorrelated subqueries to be considered as invariants
2024-11-16 17:42:23 +03:00
GitHub Action
49804f3f26 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-15 20:17:33 +00:00
Dmitry Starodubov
b4d7d0c377 Use a 64bit counter for the records written during the backup (#8319) 2024-11-15 19:31:04 +03:00
Dmitry Yemanov
70a60ba816 This should fix #8113: UNION ALL optimization with constant false condition 2024-11-15 12:44:16 +03:00
GitHub Action
9625bd37f2 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-14 20:17:31 +00:00
Vlad Khorsun
23455f019e Add 'SET WIRE_stats' into 'HELP SET' command. 2024-11-14 20:34:53 +02:00
Dmitry Yemanov
26e64e9c08
Cost-based decision between ORDER and SORT plans (#8316)
* Cost-based decision between ORDER and SORT plans

* Use inline constexpr as suggested by Adriano. Misc style changes.
2024-11-14 21:05:43 +03:00
GitHub Action
65b80501e4 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-12 20:17:00 +00:00
Dmitry Yemanov
b4a85b61a7 Fixed cardinality mistake for invariant booleans 2024-11-12 19:26:52 +03:00
Vlad Khorsun
01c64fe102 Fixed bug #8315 : Crash at database restore due to failed system call 2024-11-12 13:57:55 +02:00
Vlad Khorsun
df885d5935 Collect network statistics and make it available for the user applications. (#8310)
* Make Remote provider collect wire statistics.
New info items to query wire stats counters.

* New ISQL commands to show wire statistics.

* Remove requirement to not mix local and remote handled items in the same info request.

* Follow @asfernandes suggestion about class members initialization.

* Make ctor explicit, as @sim1984 suggested

* Put isc_info_end into response buffer despite of its presence in info items.
2024-11-12 13:24:54 +02:00
GitHub Action
8ca2314355 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-08 20:16:34 +00:00
Artyom Abakumov
52657ab691
Add ALTER PACKAGE BODY and CRETE OR ALTER PACKAGE BODY parse rules (#8309) 2024-11-08 08:18:11 -03:00
Adriano dos Santos Fernandes
5b815785a7
Fix warning. 2024-11-08 07:20:46 -03:00
Vlad Khorsun
a645790176 Put isc_info_end into response buffer despite of its presence in info items. 2024-11-08 11:48:06 +02:00
GitHub Action
4eefa4b17e increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-07 20:16:33 +00:00
Vlad Khorsun
ba62d07a1e Workaround problem with static_assert(false) in gcc/clang compilers 2024-11-07 14:37:51 +02:00
Vlad Khorsun
216fb3e164 Simplify 'Firebird' namespace usage in remote. 2024-11-07 14:28:41 +02:00
Vlad Khorsun
e78b721256 Wire protocol improvement: prefetch blob info and some data when open blob (#8307)
* Group op_open_blob2, op_info_blob and op_get_segment into single physical packet.
It allows to prefetch and cache blob info and some blob data in single network roundtrip.
Return cached blob info, if present, without remote access.

* No need to reserve space for segment length.
Fixed typo.
Thanks to @dyemanov for comments.

* Add 'const' for parameter declaration, as @AlexPeshkoff suggested

* Use 'if constexpr' as @TreeHunter9 suggested.
Also, avoid hardcoded constants when possible.
2024-11-07 14:21:15 +02:00
Dmitry Yemanov
79583d675b Rework my fix for #5654: Could not execute query (select from view with nested view) -- the original solution was too restrictive, causing regressions in plans/performance 2024-11-07 13:03:25 +03:00
GitHub Action
b0c36f09af increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-04 20:16:47 +00:00
Adriano dos Santos Fernandes
1c3dc43935 Fix #8304 - Wrong results using minvalue/maxvalue in join condition. 2024-11-03 21:30:15 -03:00
GitHub Action
d53f3681ac increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-30 20:16:56 +00:00
Dmitry Yemanov
e7e9e01fa9 Rework fix for #8290: Unique scan is incorrectly reported in the explained plan for unique index and IS NULL predicate 2024-10-30 11:00:56 +03:00
Dmitry Yemanov
5ed57cb43b Fix #8214: Incorrect result of index list scan for a composite index, the second segment of which is a text field with COLLATE UNICODE_CI 2024-10-30 10:59:20 +03:00
Dmitry Yemanov
bedf271e1f Fix missing synchronization of the shared monitoring data 2024-10-30 10:58:57 +03:00
GitHub Action
833efbf489 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-29 20:17:21 +00:00
Dmitry Yemanov
781e5d92f3 Implement #8230: Ability to obtain PID of server process for current connection without querying mon$ tables 2024-10-29 20:39:30 +03:00
GitHub Action
c4bc9432a4 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-26 20:15:14 +00:00
Adriano dos Santos Fernandes
8b0270ff9a Code improvement. 2024-10-25 18:08:43 -03:00
5b455e3b72
Extra initialization (#8293) 2024-10-25 18:06:52 -03:00
GitHub Action
3aedb7fc62 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-25 20:17:15 +00:00
67d8e39e44
Ability to create an inactive index (#8091)
* Ability to create an inactive index

* Extract inactive indices in dialect 1
2024-10-25 14:35:02 +03:00
GitHub Action
a8f5bdbe1c increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-24 20:17:16 +00:00
Vlad Khorsun
d2f4cf6fee Additional patch for #7269 (PR #8170):
- move more duplicated code into activateIndex,
- cache request that modifies RDB$INDICES.RDB$INDEX_INACTIVE.
2024-10-24 16:02:08 +03:00
Dima
178d83a75e
Fix #7269: Restore deferred primary key indexes (#8170)
* fixed restore deferred primary key indexes

Fixed database recovery aborting on the first failure of the first problematic deferred index
gbak (#7269)

* Extract function activateIndex

Extracted "activateIndex" function to remove duplicate code when restoring the database
2024-10-24 15:55:40 +03:00
Dmitry Yemanov
a1167b4431 Fix #8290: 'Unique scan' is incorrectly reported in the explained plan for unique index and IS NULL predicate 2024-10-24 14:10:51 +03:00
Dmitry Yemanov
7886c9cd93 Fix #8291: NULLs should be skipped during index navigation when there's no lower bound and matched conditions are known to ignore NULLs 2024-10-24 14:10:41 +03:00
Vlad Khorsun
c9aa55344a Move declarations to the appropriate place 2024-10-24 13:28:32 +03:00
GitHub Action
6bfd79fb51 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-22 20:17:08 +00:00
Adriano dos Santos Fernandes
1e33151edc Fix GCC 14.2 warnings. 2024-10-21 22:34:34 -03:00
GitHub Action
be5650bc04 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-21 20:17:12 +00:00
Adriano dos Santos Fernandes
aceb5a6948 Fix #8288 - GPRE generated code is incompatible with GCC 14.2. 2024-10-20 22:34:25 -03:00
GitHub Action
6214b9d582 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-19 20:16:14 +00:00
GitHub Action
591a76107c increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-18 20:16:21 +00:00
Adriano dos Santos Fernandes
042ce98d45
Merge pull request #8286 from FirebirdSQL/work/boost-update
Update boost to version 1.86.0
2024-10-17 21:09:53 +00:00
GitHub Action
cf5a420e33 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-17 20:17:05 +00:00
Adriano dos Santos Fernandes
9b03202f75 Complement fix for #8241 - gbak may lose NULLs in restore. 2024-10-17 08:11:36 -03:00
Adriano dos Santos Fernandes
78a8828775 Update internal/modified/stripped version of boost.preprocessor to 1.86.0.
Passes:
```
rm -rf /src/firebird/src/include/firebird/impl/boost
bcp boost/preprocessor/seq/for_each_i.hpp /src/firebird/src/include/firebird/impl
find /src/firebird/src/include/firebird/impl/ -name "*.hpp" -o -name "*.h" | xargs sed -i 's/BOOST_PREPROCESSOR_/FB_BOOST_PREPROCESSOR_/g'
find /src/firebird/src/include/firebird/impl/ -name "*.hpp" -o -name "*.h" | xargs sed -i 's/BOOST_PP_/FB_BOOST_PP_/g'
find /src/firebird/src/include/firebird/impl/ -name "*.hpp" -o -name "*.h" | xargs sed -i 's|include <boost/|include <firebird/impl/boost/|g'
```
2024-10-17 08:06:23 -03:00
Vlad Khorsun
c78b5e6947 Post fix for #8256.
port should be NULLified after forced disconnect.
2024-10-17 11:27:27 +03:00
Adriano dos Santos Fernandes
b6ce28993e Correction in test. 2024-10-16 23:23:47 -03:00
GitHub Action
dc5fb8f082 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-14 20:17:19 +00:00
Vlad Khorsun
0c7bfb0022 Fixed bug #8283 : Assert in ~thread_db() due to not released page buffer 2024-10-14 18:07:34 +03:00
Vlad Khorsun
9b1e09c1a3 Restore zero-initialization of just allocated buffers, that was lost with fix for #7873, unfortunately. 2024-10-14 18:07:22 +03:00
GitHub Action
2ba5910261 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-11 20:16:45 +00:00
GitHub Action
1c93e89922 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-09 20:16:54 +00:00
GitHub Action
065a3b42e7 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-06 20:15:29 +00:00
Vlad Khorsun
2db2b7b496 Warnings 2024-10-05 23:41:35 +03:00
GitHub Action
e95c128e0e increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-04 20:16:39 +00:00
Vlad Khorsun
37079f1615 Additional fix for #8256 : the case when server doesn't return error immediately after connect. 2024-10-04 14:19:48 +03:00
aa167e2b36
Fix for #8249 - CAST() ignores collation of target data type 2024-10-04 07:12:45 -03:00
GitHub Action
5e5ae686b7 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-02 20:18:28 +00:00
Adriano dos Santos Fernandes
aacc981b85
Merge pull request #8273 from FirebirdSQL/work/public-headers
Reorganize public headers
2024-10-02 06:44:49 -03:00
GitHub Action
b50103f0a8 increment build number
All checks were successful
continuous-integration/drone/push Build is passing
2024-09-30 20:17:06 +00:00
Vlad Khorsun
f62f1336e2
Merge pull request #8274 from FirebirdSQL/work/win_sspi_reconnect
If client fails to connect using Win_SSPI plugin with Negotiate security package, try again using NTLM security package.
2024-09-30 22:40:41 +03:00
Andrey Kravchenko
36b035c329
Fix refetch header data from delta when database in backup lock (#8268)
Co-authored-by: Andrey Kravchenko <andrey.kravchenko@red-soft.ru>
2024-09-30 08:07:12 +03:00
Vlad Khorsun
3092eee7e3 Fixed non-Windows builds 2024-09-30 00:27:05 +03:00
Vlad Khorsun
29197adf31 If client fails to connect using Win_SSPI plugin with Negotiate security package, try again using NTLM security package.
This allows new client connect to the old server that uses legacy NTLM security package.
2024-09-30 00:17:44 +03:00
Adriano dos Santos Fernandes
f400b7fe16 Add deprecation notice. 2024-09-29 16:15:34 -03:00
Adriano dos Santos Fernandes
3f7f82d640 Move public headers to include/firebird with wrappers in include for legacy files. 2024-09-29 15:29:04 -03:00
Adriano dos Santos Fernandes
74c3725e0e perf.h: a public file that depends on private file should not be a public file 2024-09-29 14:48:05 -03:00