Re: [Firebird-devel] C++11 features

2016-08-31 Thread Dmitry Yemanov
31.08.2016 05:14, Adriano dos Santos Fernandes wrote: > > In the code I'm writing, I had good opportunities to use some features > that the compiler flags we're using disallowed, like lambda and default > arguments for template parameter. > > Also we have the ubiquitous ugly iterator types in

Re: [Firebird-devel] Stopping firebird.exe

2016-08-22 Thread Dmitry Yemanov
22.08.2016 11:48, Alex Peshkoff wrote: >> >> if I start firebird using "firebird.exe -a", is there a way to stop it? >> In a scripted way. > > I know programmatical way to stop it. It's ugly but should work. > > Query services manager with undocumented(!!!, it's in svc_undoc.h) > information(!!!)

Re: [Firebird-devel] RFC: Timeouts

2016-08-18 Thread Dmitry Yemanov
18.08.2016 20:12, Dimitry Sibiryakov wrote: > > May be there are simpler and safer solutions for these problems? I doubt that. > How about How about an optimizer mistake (yes, this is possible even in MSSQL and Oracle) that causes a bad access path being chosen? Don't substitute one issue

Re: [Firebird-devel] RFC: Timeouts

2016-08-18 Thread Dmitry Yemanov
18.08.2016 19:01, Dimitry Sibiryakov wrote: > > Ok but then what is a _real_ problem that subj is supposed to _solve_? Prevent production server from being unexpectedly overloaded *before* DBA can analyse such cases and take actions to avoid them. Typical cases: - possibly heavy ad-hoc queries

Re: [Firebird-devel] RFC: Timeouts

2016-08-18 Thread Dmitry Yemanov
18.08.2016 18:51, Dimitry Sibiryakov wrote: > >On the other hand it provides DBA a choice, not kill the query > unconditionally. >You are not going to make an option "log, but do not kill", are you?.. Logging slow queries is a completely different topic and it's already covered by

Re: [Firebird-devel] RFC: Timeouts

2016-08-18 Thread Dmitry Yemanov
18.08.2016 13:04, liviuslivius wrote: > > I suppose better feature will be "timeout messaging" - something like > TRIGGER ON STATEMENT_TIMEOUT > TRIGGER ON TRANSACTION_TIMEOUT Triggers are for developers. Asking DBAs to create special triggers is a bad idea. Dmitry

[Firebird-devel] [FB-Tracker] Created: (CORE-5329) Database gets partially corrupted in the "no-reserve" mode

2016-08-13 Thread Dmitry Yemanov (JIRA)
Type: Bug Components: Engine Affects Versions: 3.0.0 Reporter: Dmitry Yemanov If a "no-reserve" (aka "use full space") option was enabled for a v2.5 database, then the issue becomes visible right after restore on v3.0, just do an immediate validation and see:

Re: [Firebird-devel] Some hint of internal choice of plan taken by Firebird

2016-08-02 Thread Dmitry Yemanov
02.08.2016 09:32, liviuslivius wrote: > > What is the choice internals about which table should be taken first as > natural? Both combinations {K->ZF} and {ZF->K} are considered and the cheapest one is chosen. > And is non indexed filtering on table taken into account? Yes. Dmitry

Re: [Firebird-devel] UDF by descriptor - paramdsc.dsc_sub_type - character sets

2016-07-23 Thread Dmitry Yemanov
23.07.2016 08:44, Geoff Worboys wrote: > Ergo: the character set of the parameters to an EXECUTE BLOCK > come from the attachment character set and NOT from the > declared character set. > > You say "of course, parameters are converted to client charset" > but this is both far from obvious and

[Firebird-devel] [FB-Tracker] Created: (CORE-5307) Random "invalid transaction handle" errors are returned from the engine

2016-07-13 Thread Dmitry Yemanov (JIRA)
Issue Type: Bug Components: API / Client Library, Engine Affects Versions: 3.0.0, 4.0 Initial Reporter: Dmitry Yemanov Sometimes (almost randomly) DML statement running in a valid transaction context may fail with "invalid transaction handle" error.

[Firebird-devel] [FB-Tracker] Created: (CORE-5305) CASCADE UPDATE fails for self-referencing FK

2016-07-11 Thread Dmitry Yemanov (JIRA)
Versions: 3.0.0, 4.0 Initial Reporter: Dmitry Yemanov Test case: recreate table tfkself (col1 int primary key, col2 int references tfkself(col1) on update cascade); insert into tfkself (col1, col2) values (1, null); insert into tfkself (col1, col2) values (2, null); insert into tfkself

Re: [Firebird-devel] CORE-1117 - max sql command limit

2016-06-23 Thread Dmitry Yemanov
23.06.2016 13:59, liviuslivius wrote: > > i have attached file to http://tracker.firebirdsql.org/browse/CORE-1117 I see that it fails way before the 64KB limit, with just the first union part (simplified): SELECT * FROM UMOWA U INNER JOIN WARUNKI W ON W.UMOWA_ID = U.UMOWA_ID AND W.DYR_ID

Re: [Firebird-devel] CORE-1117 - max sql command limit

2016-06-23 Thread Dmitry Yemanov
23.06.2016 10:40, Mark Rotteveel wrote: > Are you using the old or new API. The limit still exists when the old > API is used. Not quite so. If you pass a zero-terminated string to the old API, it will be able to process long queries correctly. Provided that a v3.0 fbclient.dll is used.

Re: [Firebird-devel] CORE-1117 - max sql command limit

2016-06-23 Thread Dmitry Yemanov
23.06.2016 10:24, liviuslivius wrote: > > is this really working in all situations? Especially with union? > I got error "Unexpected end of command - line 37, column 1779." > Statement length is 76618 chars. > If i remove ANY of the union part and length is back to <64K it work ok. > I use current

Re: [Firebird-devel] Null flag in OO API

2016-06-22 Thread Dmitry Yemanov
22.06.2016 22:01, Jiří Činčura wrote: >> is considered non-NULL: zero or anything != -1? I expected the former >> (this is how the engine handles messages) while Jiri supposes the >> latter. Where is the truth? > > From my testing - on external engine messages - only the 0 was handled > as not

Re: [Firebird-devel] Null flag in OO API

2016-06-22 Thread Dmitry Yemanov
22.06.2016 18:58, Adriano dos Santos Fernandes wrote: > >> looking into memory dump for parameters in external engine in OO API is >> { 0xFF 0xFF } for true and anything else (basically 0) for false. >> Correct? > > Yes, 0xFF 0xFF is -1 (signed short). Is it really correct? I know that -1 is used

Re: [Firebird-devel] isc_info_firebird_version response format

2016-06-22 Thread Dmitry Yemanov
22.06.2016 10:28, Jiří Činčura wrote: >> And this may be considered a bug :-) given that InterBase returns two >> strings for this tag. > > Do you want me to put to tracker? Let's see what others think. This is really a low priority thing. Dmitry

Re: [Firebird-devel] isc_info_firebird_version response format

2016-06-22 Thread Dmitry Yemanov
22.06.2016 09:57, Jiří Činčura wrote: > I was just confused by isc_info_isc_version having > just one. And this may be considered a bug :-) given that InterBase returns two strings for this tag. AFAIU, in the old days we've just replaced isc_info_isc_version with isc_info_firebird_version in

Re: [Firebird-devel] isc_info_firebird_version response format

2016-06-22 Thread Dmitry Yemanov
21.06.2016 22:45, Jiří Činčura wrote: > I'm sending the isc_info_firebird_version, isc_info_end only in > op_info_database. And the buffer I get back is: > 103 isc_info_firebird_version > 74, 0, total length of the returned clumplet > 2, number of strings inside the clumplet > 28, 87, ...

Re: [Firebird-devel] isc_info_firebird_version response format

2016-06-21 Thread Dmitry Yemanov
21.06.2016 19:48, Jiří Činčura wrote: > > when I ask for isc_info_firebird_version (currently on FB3) it looks to > me I get response for isc_info_isc_version followed by > isc_info_firebird_version together. Is that expected? AFAIK, it's not. And I don't see how it can happen in the code.

Re: [Firebird-devel] Transaction id size in Firebird 3

2016-06-18 Thread Dmitry Yemanov
18.06.2016 16:03, Mark Rotteveel wrote: > What about op_reconnect? Can I always send an 8 byte VAX 'integer', even > on older Firebird versions? Or should I only try to send 8 bytes on FB 3? The latter. Older FB versions are unlikely to crash but won't execute the request either (VAX integers

Re: [Firebird-devel] Transaction id size in Firebird 3

2016-06-17 Thread Dmitry Yemanov
17.06.2016 21:23, Mark Rotteveel wrote: > > Does this BigIntSpb also work with a v2 SPB, or do I need to change it > to a v3 SPB (code suggests v2 will work, but confirmation would be nice)? It works. > Is there an easy trick to get Firebird to produce a 33 bit or longer > transaction id without

Re: [Firebird-devel] Test bugs.core_3554 randomly fails

2016-06-17 Thread Dmitry Yemanov
17.06.2016 17:13, Dimitry Sibiryakov wrote: > > As most of you know, when routine protocol.cpp:alloc_cstring() receives zero > length, it > behaves differently, depending on previous allocations. In some cases it > returns pointer > to zero-length string, in some - NULL pointer. > Because of

[Firebird-devel] [FB-Tracker] Created: (CORE-5281) Support AS CURSOR and . features in FOR EXECUTE STATEMENT loops

2016-06-14 Thread Dmitry Yemanov (JIRA)
Type: Improvement Components: Engine Reporter: Dmitry Yemanov Priority: Minor This is not about positioned updates/deletes, but about a simplified syntax to retrieve the output values without using many variables. It's implementation is likely to be very

Re: [Firebird-devel] Class to prevent implicit zero to pointer conversion

2016-06-07 Thread Dmitry Yemanov
01.06.2016 18:21, Dimitry Sibiryakov wrote: > > I've got a little problem when implicit conversion from zero to pointer can > cause > calling of wrong overloaded function. For example, foo(bool a) and foo(void* > a) both can > be called as foo(0) and compiler used to throw error for this call,

Re: [Firebird-devel] Longer metadata names and related things

2016-06-03 Thread Dmitry Yemanov
03.06.2016 16:30, Dimitry Sibiryakov wrote: >> I treat this problem as low priority, but supposing we're going to do >> something to users of the legacy API access longer names, I think the >> best method is to have a function that obtains an IStatement from an >> isc_stmt_handle and read them

Re: [Firebird-devel] BLR contexts limit

2016-06-03 Thread Dmitry Yemanov
03.06.2016 09:04, liviuslivius wrote: > > is something done in the subject? Or some info about plans :) > I tested current FB3 snapshot but still context limit :( > "Dynamic SQL Error. Too many Contexts of Relation/Procedure/Views. Maximum > allowed is 256.". It won't be done in v3.x, this

Re: [Firebird-devel] ODS 13

2016-06-01 Thread Dmitry Yemanov
01.06.2016 14:06, Adriano dos Santos Fernandes wrote: > But if databases is said to be "shared", two engines will access and > corrupt them. No, two engines will synchronize their access using the same lock table. If one of them cannot read that lock table, it will fail. But no corruption will

Re: [Firebird-devel] ODS 13

2016-06-01 Thread Dmitry Yemanov
01.06.2016 12:40, Roman Simakov wrote: > Does it make sense to install several previous engines with current > one to make it possible to perform B/R after server upgrade? Sure, why not. But it should be up to DBAs, I doubt we should distribute engine12 inside the FB4 packages. Dmitry

Re: [Firebird-devel] Move semantic

2016-06-01 Thread Dmitry Yemanov
01.06.2016 11:34, Alex Peshkoff wrote: > But they provide (unlike gcc) working code. At least on AIX. Does GCC fail to create a working code even with -O2 and lower settings? I.e. is it optimization issue or something fundamental? Dmitry

Re: [Firebird-devel] ODS 13

2016-06-01 Thread Dmitry Yemanov
All, I've bumped the ODS version for v4. It cannot work with ODS12 databases anymore, backup/restore is needed. Now we may introduce incompatible changes, some of them are expected soon. Ideally, I'd prefer low-level changes to settle before September, minor system table changes may be

Re: [Firebird-devel] Move semantic

2016-05-31 Thread Dmitry Yemanov
31.05.2016 14:52, Dimitry Sibiryakov wrote: > > The only reason may be support of ancient compilers as it happened with > prohibition of > deleted methods. Does MSVC10 count as ancient? Dmitry -- What NetFlow

Re: [Firebird-devel] Move semantic

2016-05-31 Thread Dmitry Yemanov
30.05.2016 18:47, Dimitry Sibiryakov wrote: > > Is it allowed to use move constructor and assignment in Firebird code? AFAIK, we never use them before, but I don't see why we should prohibit their usage if really necessary. Dmitry

Re: [Firebird-devel] Using string.printf()

2016-05-28 Thread Dmitry Yemanov
28.05.2016 15:58, Dimitry Sibiryakov wrote: > > What is advantage of following code > >> string err_msg; >> err_msg.printf("INTL module '%s' is of incompatible version number %d", >> filename.c_str(), version); >> gds__log(err_msg.c_str()); > > over

Re: [Firebird-devel] [FB-Tracker] Created: (CORE-5252) Crash on bugs.core_3029 in dev build

2016-05-26 Thread Dmitry Yemanov
26.05.2016 15:19, Dimitry Sibiryakov wrote: > > Why releasing of savepoints from SP don't crash? Because procedure/function/trigger invocation always ends with EXE_unwind. This is not so for DSQL requests. Dmitry

Re: [Firebird-devel] [FB-Tracker] Created: (CORE-5252) Crash on bugs.core_3029 in dev build

2016-05-25 Thread Dmitry Yemanov
25.05.2016 18:21, Roman Simakov wrote: > Am I the only who run tests in developer build sometimes? Me too, but rarely. > Is it possible to add one more configureation to CI of ci.ibphoenix.com? Not sure about ci.ibphoenix.com, but definitely impossible for the Windows CI host -- it's too slow

Re: [Firebird-devel] [FB-Tracker] Created: (CORE-5252) Crash on bugs.core_3029 in dev build

2016-05-25 Thread Dmitry Yemanov
25.05.2016 19:52, Dmitry Yemanov wrote: > >> Here is sequence of savepoints generated in this test: >> >>> Request to rollback to 11. Stack is 14->11->5->10->1-> >>> Request to rollback to 10. Stack is 5->10->1-> > > How did it happen

Re: [Firebird-devel] [FB-Tracker] Created: (CORE-5252) Crash on bugs.core_3029 in dev build

2016-05-25 Thread Dmitry Yemanov
25.05.2016 19:39, Dimitry Sibiryakov wrote: > Here is sequence of savepoints generated in this test: > >> Request to rollback to 11. Stack is 14->11->5->10->1-> >> Request to rollback to 10. Stack is 5->10->1-> How did it happen that savepoint 11 (10 in the second case) was created inside the

Re: [Firebird-devel] FB/Java embedded connections - proposed solution for Firebird and Jaybird

2016-05-20 Thread Dmitry Yemanov
20.05.2016 11:32, Mark Rotteveel wrote: > >> If it's about routine in machine codes such routine should not exist on >> server. Nor in UDF, nor in plugins. No other solutions. >> What about Java - I hope call to dynamic library loader can be >> restricted by VM? > > Yes it can, but for example the

Re: [Firebird-devel] FB/Java embedded connections - proposed solution for Firebird and Jaybird

2016-05-20 Thread Dmitry Yemanov
20.05.2016 11:18, Alex Peshkoff wrote: > >> What about a new parameter in firebird.conf: EmbeddedDatabaseAccess, >> defaulted to "Restrict Self" (which is OK for 99% embedded apps)? > > Sorry looks like I do not understand what is suggested. What else values > can have that parameter? Pathnames

Re: [Firebird-devel] FB/Java embedded connections - proposed solution for Firebird and Jaybird

2016-05-20 Thread Dmitry Yemanov
What about a new parameter in firebird.conf: EmbeddedDatabaseAccess, defaulted to "Restrict Self" (which is OK for 99% embedded apps)? It will be checked for outgoing embedded connections, as they're usually (*) handled by the same engine. Remote connections will be always allowed and

Re: [Firebird-devel] FB/Java embedded connections - proposed solution for Firebird and Jaybird

2016-05-19 Thread Dmitry Yemanov
20.05.2016 04:52, Adriano dos Santos Fernandes wrote: > > Firebird: > > - By default engine will verify user/password How? Authentication code belongs to the network listener, not the embedded library. And I foresee compatibility issues for embedded users. Dmitry

Re: [Firebird-devel] Getting current shutdown mode

2016-05-19 Thread Dmitry Yemanov
20.05.2016 08:28, Jiří Činčura wrote: > >> * >> bin # ./fbsvcmgr service_mgr action_db_stats dbname employee >> sts_hdr_pages > > Yeah. That's not good. Scraping it from text is not what I should > provide in library. May I create ticket to provide such API? Sure, feel free.

Re: [Firebird-devel] How an RDB$ index can be rebuilt in 3.0 ?

2016-05-19 Thread Dmitry Yemanov
19.05.2016 10:39, Pavel Cisar wrote: > > An RDB$INDEX_* is typically an automatically created one for constraint. It may also be an index on some system table, RDB$DEPENDENCIES in this particular case. This was the actual problem raised. Dmitry

[Firebird-devel] [FB-Tracker] Created: (CORE-5241) Affected rows are not counted for some update operations with views

2016-05-16 Thread Dmitry Yemanov (JIRA)
: Bug Components: Engine Affects Versions: 3.0.0, 4.0 Initial, 2.5.5, 2.5.4, 2.5.3 Update 1, 2.1.7, 2.5.3, 2.5.2 Update 1, 2.5.2, 2.5.1, 2.5.0 Reporter: Dmitry Yemanov Partially caused by the old bugfix CORE-578 which is totally wrong for PSQL with many updates, partially

Re: [Firebird-devel] Compiler for official Firebird 4 release on Windows

2016-05-16 Thread Dmitry Yemanov
All, I suggest to drop support for VS versions 8.0 and 9.0 in the master branch. VS 10, 12/13 and 14/15 will still be supported. Dmitry -- Mobile security can be enabling, not merely restricting. Employees who bring

Re: [Firebird-devel] Non-copyable objects

2016-05-16 Thread Dmitry Yemanov
16.05.2016 00:17, Dimitry Sibiryakov wrote: > > But for 4.0 official compiler is VS 2013 which support that. But we maintain projects for older VS versions too, and the code must be compilable with them. Dmitry --

Re: [Firebird-devel] Non-copyable objects

2016-05-15 Thread Dmitry Yemanov
15.05.2016 00:59, Adriano dos Santos Fernandes wrote: > > Instead of write private copy constructor and operator=, what about > start using a mixing at least for new code? > > It makes easier and much more clear. > > Example taken from >

[Firebird-devel] [FB-Tracker] Created: (CORE-5239) Add virtual table SEC$ROLES to return all roles currently active for the connected user

2016-05-15 Thread Dmitry Yemanov (JIRA)
Project: Firebird Core Issue Type: Improvement Components: Engine Reporter: Dmitry Yemanov After introducing default (and aggregated) roles, CURRENT_ROLE becomes practically useless in such cases. We now have RDB$ROLE_IN_USE() to check for a particular role

[Firebird-devel] [FB-Tracker] Created: (CORE-5238) Replace xinetd support with the native listener

2016-05-15 Thread Dmitry Yemanov (JIRA)
Reporter: Dmitry Yemanov Using the same native network listener (firebird process) on Classic would be the logical last step in unifying the architectures. It would simplify maintenance for us (no need to double install scripts) and production setup for end users (easy to detect

Re: [Firebird-devel] FB 3 source code analisys

2016-05-11 Thread Dmitry Yemanov
11.05.2016 17:29, Adriano dos Santos Fernandes wrote: > This one is incorrectly reported: > > Usage of ifl_data may be done from the callback AFAIU. True. No tool is perfect, maybe other outlined "problems" will be more actual. Dmitry

Re: [Firebird-devel] PathName and operator +=

2016-05-06 Thread Dmitry Yemanov
06.05.2016 22:47, Dimitry Sibiryakov wrote: > > Then you should define "not to be a string". What does it mean? Not to be > AutoStorage > descendant? To have different storage model? Speaking about storage, would it make sense to define PathName statically allocated (MAX_PATH limited)? We have

[Firebird-devel] [FB-Tracker] Created: (CORE-5228) Restore may hang if the database contains more than 4 billion records

2016-05-06 Thread Dmitry Yemanov (JIRA)
Type: Bug Components: Engine Affects Versions: 3.0.0, 4.0 Initial, 2.5.5, 2.5.4, 2.5.3 Update 1, 2.1.7, 2.5.3, 2.5.2 Update 1, 2.5.2, 2.5.1, 2.5.0 Reporter: Dmitry Yemanov The problem of the current restore process is that every record is inserted in its own looper

Re: [Firebird-devel] Transaction id size in Firebird 3

2016-05-02 Thread Dmitry Yemanov
01.05.2016 13:01, Mark Rotteveel wrote: > >> But it seems that these inputs tags were forgotten re. their longer >> counterparts: isc_spb_rpr_commit_trans, isc_spb_rpr_rollback_trans, >> isc_spb_rpr_recover_two_phase. Please file a ticket. > > Done: http://tracker.firebirdsql.org/browse/CORE-5224

[Firebird-devel] [FB-Tracker] Created: (CORE-5226) Incorrect result set (missing records) may be returned by the ORDER plan query navigating on a descending index

2016-05-01 Thread Dmitry Yemanov (JIRA)
://tracker.firebirdsql.org/browse/CORE-5226 Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 3.0.0, 4.0 Initial, 2.5.5, 2.5.4, 2.5.3 Update 1, 2.1.7, 2.5.3, 2.5.2 Update 1, 2.5.2, 2.5.1, 2.5.0 Reporter: Dmitry Yemanov It happens only

Re: [Firebird-devel] Record level compression for V4

2016-05-01 Thread Dmitry Yemanov
Slavomir, > is it good time (V4) to commit new record level compression? > > http://elektlabs.cz/fbrle/ Is this download the latest version? http://elektlabs.cz/fbrle/FirebirdWin64_ElektLabs.zip > If yes, will you need my help for this task? I will start with replacing the current RLE with the

Re: [Firebird-devel] Transaction id size in Firebird 3

2016-04-30 Thread Dmitry Yemanov
30.04.2016 18:47, Mark Rotteveel wrote: > Is the limit now 2^32 or 2^48? 2^48 internally, represented as 2^64 for the external world. > Also what is the effect of this change (and the change "Limits Raised > for Attachment and Statement IDs" below that) for the wire protocol? > Does this affect

[Firebird-devel] [FB-Tracker] Created: (CORE-5222) SELECT WITH LOCK may raise unexpected update conflict errors under concurrent load

2016-04-29 Thread Dmitry Yemanov (JIRA)
: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 3.0.0, 4.0 Initial Reporter: Dmitry Yemanov This is a regression introduced in v3.0. Easily noticable in read-committed no-record-version mode. -- This message is automatically generated by JIRA

[Firebird-devel] [FB-Tracker] Created: (CORE-5218) Explicitly defined names for NOT NULL constraint are not exported into script by ISQL -x

2016-04-28 Thread Dmitry Yemanov (JIRA)
Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 3.0.0, 4.0 Initial, 2.5.5, 2.5.4, 2.5.3 Update 1, 2.1.7, 2.5.3, 2.5.2 Update 1, 2.5.2, 2.5.1, 2.5.0 Reporter: Dmitry Yemanov Priority: Minor create table t ( id int

[Firebird-devel] [FB-Tracker] Created: (CORE-5216) Provide location context (line/column numbers) for runtime errors raised inside EXECUTE BLOCK

2016-04-28 Thread Dmitry Yemanov (JIRA)
Project: Firebird Core Issue Type: Improvement Components: Engine Reporter: Dmitry Yemanov set term ^; select cast('' as timestamp) from rdb$database ^ -- ERROR: -- Statement failed, SQLSTATE = 22018 -- conversion error from string "" recreate

Re: [Firebird-devel] Updated Comparison of many standard (and non-standard) SQL features amongst 10 databases

2016-04-25 Thread Dmitry Yemanov
And our DDL is not so transactional as they think ;-) Dmitry -- Find and fix application performance issues faster with Applications Manager Applications Manager provides deep performance insights into multiple tiers

Re: [Firebird-devel] Updated Comparison of many standard (and non-standard) SQL features amongst 10 databases

2016-04-25 Thread Dmitry Yemanov
25.04.2016 15:28, Mark Rotteveel wrote: > > Still missing from the list: > * Substring with regex: > http://firebirdsql.org/file/documentation/release_notes/html/en/3_0/bk01ch09s05.html#rnfb30-dml-substring > > Might work; haven't tried it yet but I think it should be possible now > * Index using

Re: [Firebird-devel] Feature request & discussion for V4 (same as for V3)

2016-04-25 Thread Dmitry Yemanov
25.04.2016 10:35, Christian Waldmann wrote: > In Firebird CORE-659 (http://tracker.firebirdsql.org/browse/CORE-659) there > is a collection of requests for spatial index, e.g. R*Tree or GiST, for GIS > applications and other. Spatial indexes are also fine to find events in a > interval of time. >

Re: [Firebird-devel] Performance of fbclient.dll of recent snapshots

2016-04-22 Thread Dmitry Yemanov
22.04.2016 18:03, Michal Kubecek wrote: > We might also consider extending the new connection string format > inet://... to variants inet4://... and inet6://... which would enforce > AF_INET or AF_INET6. This may be a good workaround. Dmitry

Re: [Firebird-devel] Trace files and lock directory

2016-04-14 Thread Dmitry Yemanov
14.04.2016 18:27, Leyne, Sean wrote: > > current location of the lock and conf files (under Windows) is > wrong/non-conformant -- they should be in \All Users\Firebird path, not > Program Files\Firebird Lock files are in ProgramData\Firebird. Dmitry

Re: [Firebird-devel] Crash when caught exception is stored in StaticStatusVector

2016-04-12 Thread Dmitry Yemanov
12.04.2016 15:31, Dimitry Sibiryakov wrote: > On the other hand we can restore logic described in declaration of > system_error and > eliminate using of dynamic strings inside of this class. In this case > StaticStatusVector > should be fine. I will commit a different solution. Testing it now.

Re: [Firebird-devel] Crash when caught exception is stored in StaticStatusVector

2016-04-12 Thread Dmitry Yemanov
12.04.2016 11:01, Dimitry Sibiryakov wrote: >> I believe some other kind of status holder should be used there. >> DynamicStatusVector maybe? > > Probably. I don't know status hierarchy well. DynamicStatusVector seems to be > obvious > candidate, but I don't like its overhead. Alex, can you

Re: [Firebird-devel] Crash when caught exception is stored in StaticStatusVector

2016-04-11 Thread Dmitry Yemanov
11.04.2016 22:49, Dimitry Sibiryakov wrote: > Let me show that on example from TempSpace::setupFile(): > >> Firebird::StaticStatusVector status_vector; > . >> try >> { > . >> catch (const Firebird::system_error& ex) >> { >>

Re: [Firebird-devel] Feature request & discussion for V4 (same as for V3)

2016-04-11 Thread Dmitry Yemanov
11.04.2016 14:40, Dimitry Sibiryakov wrote: > > While bug with orphan index nodes is living in the engine - index only scan is > impossible completely. Pure index-only scan - maybe. It's impossible without transaction numbers in indices too. But there may be other alternatives to consider. >

Re: [Firebird-devel] Feature request & discussion for V4 (same as for V3)

2016-04-11 Thread Dmitry Yemanov
11.04.2016 14:16, Dimitry Sibiryakov wrote: > 11.04.2016 13:08, Molnár Attila wrote: >> It's hard and costly (or even possible) to deconstruct the index format to >> get the >> original column values? > > Yes, in common case it is impossible. But it can be made possible. The question is whether

Re: [Firebird-devel] Feature request & discussion for V4 (same as for V3)

2016-04-11 Thread Dmitry Yemanov
11.04.2016 14:08, Molnár Attila wrote: > >> When InterBase was created, there was a lot of academic work on >> optimizing corner cases, with the result that academic databases >> tended to spend more time optimizing than retrieving. We made the >> deliberate choice not to spend optimizer time

Re: [Firebird-devel] Feature request & discussion for V4 (same as for V3)

2016-04-08 Thread Dmitry Yemanov
08.04.2016 12:54, Molnár Attila wrote: > > Here is my list. List of v4 features is already composed. We may add some more improvements here and there, but no promises about them. Dmitry -- Firebird-Devel mailing

Re: [Firebird-devel] FB4 Database Strings

2016-04-06 Thread Dmitry Yemanov
06.04.2016 19:00, Jim Starkey wrote: > I suggest that FB4 get completely out of the business of passing > database file names over the API and go strictly with something like a > URL that identifies the location and name of a database, letting the > server configuration map the name into a file

Re: [Firebird-devel] Version 4 and network shares

2016-04-06 Thread Dmitry Yemanov
06.04.2016 18:34, Dimitry Sibiryakov wrote: > > So, it is decided that Firebird 4 won't try to implicitly expand mounted > network drives > and UNC patches, right? Correct. Dmitry -- Firebird-Devel mailing list, web

Re: [Firebird-devel] Version 4 and network shares

2016-04-06 Thread Dmitry Yemanov
06.04.2016 14:39, Dimitry Sibiryakov wrote: > 05.04.2016 17:46, Dmitry Yemanov wrote: >> I'd go even further and wipe out the named pipes (aka WNET) protocol >> too. I don't see any sense in it nowadays. > > But what to do with connections from old clients then? They will be

Re: [Firebird-devel] Version 4 and network shares

2016-04-05 Thread Dmitry Yemanov
05.04.2016 18:24, Dimitry Sibiryakov wrote: > > In V4 will we still support connection to database on network share or mapped > drive > using the trick with overwriting "local" connection string to named pipes one? > I.e. can expand_share_name() be cleaned out of isc_file.cpp? I'd go even

Re: [Firebird-devel] Case-insensitive PathName comparison on Windows

2016-04-04 Thread Dmitry Yemanov
04.04.2016 19:53, Dimitry Sibiryakov wrote: > 04.04.2016 11:56, Dmitry Yemanov wrote: >> File is opened usually once, conversion is OK here. > > File management routines accept wchar_t, no conversion is required. I thought you were speaking about

Re: [Firebird-devel] Case-insensitive PathName comparison on Windows

2016-04-04 Thread Dmitry Yemanov
04.04.2016 12:47, Alex Peshkoff wrote: > Method 3 is good when talking about comparison, but for all other usages > we will have conversion overhead almost for nothing. What other usages do you have in mind? File is opened usually once, conversion is OK here. Monitoring may deal with UTF8,

[Firebird-devel] [FB-Tracker] Created: (CORE-5182) Inconsistent effects of subsequent statement execution if failing during record refetch

2016-04-04 Thread Dmitry Yemanov (JIRA)
Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 4.0 Initial, 3.0 RC2, 3.0 RC1 Reporter: Dmitry Yemanov Test case: CREATE TABLE Q (F1 INT); CREATE OR ALTER TRIGGER Q_AD FOR Q ACTIVE AFTER DELETE POSITION 0 AS BEGIN DELETE FROM Q; END

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-26 Thread Dmitry Yemanov
26.03.2016 19:08, Adriano dos Santos Fernandes wrote: > > The problem I see is the executable version info which will not be accurate. Please elaborate. Our executables will have build number in the executable version info, as they always had. > I like to see the commit hash in the string, even

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-26 Thread Dmitry Yemanov
25.03.2016 12:43, Dimitry Sibiryakov wrote: > 25.03.2016 10:37, Dmitry Yemanov wrote: >> We used exactly the same approach with SVN and nobody complained about >> polluted changelog. > > Because nighty commits weren't in ChangeLog and nobody cared about native SVN > l

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-26 Thread Dmitry Yemanov
25.03.2016 22:48, Adriano dos Santos Fernandes wrote: >> This gives us a buildno counted in days, not in commits (as now). > > In practive it's not different. > > Doesn't the script is running per day like was in svn? > > Right, that means the snapshot build has a "perfect" buildno, but the >

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-25 Thread Dmitry Yemanov
25.03.2016 22:19, Michal Kubecek wrote: >timestamp='$Format:%ct$' >if [ "${timestamp:0:1}" = '$' ]; then >ts=`git log -1 --pretty='%ct'` >fi >build_num=$[timestamp / 86400 - 16811] This gives us a buildno counted in days, not in commits (as now). Dmitry

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-25 Thread Dmitry Yemanov
25.03.2016 21:35, Adriano dos Santos Fernandes wrote: > >> Can we call git from the filter and expect the repository directory >> being the current one? What about multiple shell commands? > > I think no. But now we have a build number for each date, so with the > date we can simulate the same

Re: [Firebird-devel] [firebird] increment build number (773c7bf)

2016-03-25 Thread Dmitry Yemanov
25.03.2016 12:43, Dimitry Sibiryakov wrote: > Because nighty commits weren't in ChangeLog and nobody cared about native SVN > log. Now, > when ChangeLog is out of business, GIT log is the only source of list of > changes, so it is > better to keep it short and clean. Merge commits are

Re: [Firebird-devel] BLR contexts limit

2016-03-24 Thread Dmitry Yemanov
24.03.2016 14:52, liviuslivius wrote: > > this is because Array DML(in Delphi) use execute block with parameters > and all parameters/variables are counted as contexts No, they don't. Dmitry -- Transform Data into

Re: [Firebird-devel] BLR contexts limit

2016-03-24 Thread Dmitry Yemanov
24.03.2016 16:24, Adriano dos Santos Fernandes wrote: > > If we use the new version only when the object actually uses more than > 255 contexts, it's an object that cannot be really migrated backward. It's doable, just with minor tweaks - BLR version tag should be adjusted in-place after the

Re: [Firebird-devel] Physical replication using NBACKUP

2016-03-24 Thread Dmitry Yemanov
24.03.2016 11:33, Vlad Khorsun wrote: >> May I suggest to add isc_info_* code to query the backup GUID via >> isc_database_info()? Parsing gstat output for it is very awful. > > I have same idea. I suppose it is better to return GUID in text > representation, not binary, agree ? I'm not that

Re: [Firebird-devel] BLR contexts limit

2016-03-23 Thread Dmitry Yemanov
24.03.2016 00:25, liviusliv...@poczta.onet.pl wrote: > > is this somehow implemented or stuck under not finished discussion? Implemented *but* stuck due to lack of comments ;-) > We are waiting for removing this limit : > Fingers crossed :) Are you prepared to lose the ability to migrate

Re: [Firebird-devel] Physical replication using NBACKUP

2016-03-23 Thread Dmitry Yemanov
23.03.2016 18:14, Vlad Khorsun wrote: > > Original patch contains just "-I" switch :) For me both "inplace" and "merge" > are ok, let decide what to use. My point was to replace two switches (-inplace -restore) with one (-merge or whatever). Dmitry

Re: [Firebird-devel] Physical replication using NBACKUP

2016-03-23 Thread Dmitry Yemanov
23.03.2016 17:43, Vlad Khorsun wrote: > > apply new increment to the target database: > nbackup -INPLACE -R target.fdb source-inc.nbk Wouldn't something like "nbackup -merge" be more user-friendly? Dmitry --

Re: [Firebird-devel] Extend ALTER EXTERNAL FUNCTION to adjust arguments

2016-03-23 Thread Dmitry Yemanov
20.03.2016 14:27, Atri Sharma wrote: > Does this sound like an easy place to start? It should be doable and probably you could take some ideas or even code snippets from other places. First of all, syntax for ALTER EXTERNAL FUNCTION needs to be changed to match the one for DECLARE EXTERNAL

Re: [Firebird-devel] Services and encoding

2016-03-23 Thread Dmitry Yemanov
23.03.2016 12:56, Dimitry Sibiryakov wrote: > > what will be an advantage of the new DPB version except implicit isc_dpb_utf8 > tag? 1) No need to care about that tag -- simplify life for both end users and connectivity layer developers. 2) Explicitly declare our UTF8 only future (in advance).

Re: [Firebird-devel] Services and encoding

2016-03-23 Thread Dmitry Yemanov
23.03.2016 12:25, Dimitry Sibiryakov wrote: >> If we agree to move towards UTF8 in the long run, adding a new DPB/SPB >> version may be a good idea. Not necessarily in v4 though. > > Completely break backward-compatibility is a bad idea. I didn't not suggest to remove/deprecate older DPB

Re: [Firebird-devel] Services and encoding

2016-03-23 Thread Dmitry Yemanov
23.03.2016 12:10, Alex Peshkoff wrote: > > isc_spb_utf8_filename is enough, see no need to have new version. Please let's avoid choosing bad names. It has nothing to do with filenames. It should be something like isc_spb_utf8_data or isc_spb_utf8_strings instead. And yes, we need to add a

Re: [Firebird-devel] Services and encoding

2016-03-23 Thread Dmitry Yemanov
23.03.2016 12:04, Mark Rotteveel wrote: > > In that case wouldn't it be better to bump the SPB version and declare > that from that version strings buffers are UTF-8 only? Shouldn't this idea be adapted for DPB as well? Dmitry

Re: [Firebird-devel] Git and ChangeLog

2016-03-22 Thread Dmitry Yemanov
22.03.2016 19:47, Dimitry Sibiryakov wrote: > > Will ChangeLog be updated someday or it is abandoned? It will not be maintained anymore in its old form. Its new contents will migrate from WhatsNew which will be deleted. Dmitry

[Firebird-devel] [FB-Tracker] Created: (CORE-5159) Regression: engine may throw transliteration errors when running from non-ASCII system path

2016-03-20 Thread Dmitry Yemanov (JIRA)
Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 4.0 Initial, 3.0 RC2 Reporter: Dmitry Yemanov Unpack Firebird into some non-ASCII directory and try to create some ICU collation (or restore a backup with ICU attributes

Re: [Firebird-devel] Git

2016-03-20 Thread Dmitry Yemanov
16.03.2016 18:05, Paul Beach wrote: > > e.g. > git checkout -b mac-port B3_0_Release You need "git clone" before that (just once for all the subsequent work). Dmitry -- Transform Data into Opportunity. Accelerate data

Re: [Firebird-devel] Git

2016-03-20 Thread Dmitry Yemanov
17.03.2016 15:02, Adriano dos Santos Fernandes wrote: > Was our svn repository allowed for arbitrary branch creation without > project discussion till now? No! > > Now with github that would not even be necessary as one could fork and > do his things. > > So, to allow arbitrary branch creation in

<    1   2   3   4   5   6   7   8   9   10   >