[Firebird-devel] [FB-Tracker] Created: (CORE-4631) Lock manager out of room error hides the real cause of this problem

2014-12-02 Thread Dmitry Yemanov (JIRA)
: Bug Components: Engine Affects Versions: 2.5.3, 2.1.6, 2.5.2 Update 1, 2.1.5 Update 1, 2.5.2, 2.1.5 Reporter: Dmitry Yemanov Priority: Minor When the shared memory region backing the lock table cannot be remapped, the status vector returns the error message

[Firebird-devel] [FB-Tracker] Reopened: (CORE-4602) RemoteServicePort is not working

2014-12-02 Thread Dmitry Yemanov (JIRA)
[ http://tracker.firebirdsql.org/browse/CORE-4602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Yemanov reopened CORE-4602: -- Fix Version/s: (was: 3.0 Beta 2) Sean, pay attention to the build numbers. It works OK

[Firebird-devel] Firebird 3.0 Beta 1 release is available for testing

2014-12-01 Thread Dmitry Yemanov
://web.firebirdsql.org/download/prerelease/rlsnotes/Firebird-3.0.0_Beta1-ReleaseNotes.pdf -- Dmitry Yemanov -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your

Re: [Firebird-devel] Tackling CORE-4526 (OFFSET FETCH)

2014-11-30 Thread Dmitry Yemanov
30.11.2014 15:37, Mark Rotteveel wrote: Well, that was quick ;) Should I go and implement it anyway, or do we leave this until it is reported against an actual 3.0 release? So far it's about pure artificial testing, not something really used in production. So I'd wait a bit more ;-) Dmitry

Re: [Firebird-devel] Tackling CORE-4526 (OFFSET FETCH)

2014-11-26 Thread Dmitry Yemanov
Mark, I'm looking at the patch, please be patient ;-) Any news on this? I don't have any major problems with the patch. Just a few questions: 1) Why have you decided to extend select_expr via duplication rather than using something like this: %type selectExprNode select_expr select_expr :

Re: [Firebird-devel] Support for building Firebird with mingw-w64 toolchains.

2014-11-23 Thread Dmitry Yemanov
23.11.2014 19:12, Alexpux wrote: I’m use Firebird about 7 years and now I’m interesting in build Firebird with mingw-w64 toolchains. Out of curiosity, why you need to build it yourself instead of using the official binaries? This is quite uncommon for Windows users. Most free databases

Re: [Firebird-devel] Support for building Firebird with mingw-w64 toolchains.

2014-11-23 Thread Dmitry Yemanov
23.11.2014 20:23, Dimitry Sibiryakov wrote: No dependency on C++ runtime Is it really important for MSVC10 and higher? Dmitry -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate!

[Firebird-devel] [FB-Tracker] Created: (CORE-4616) Server crashes while accessing context variables concurrently

2014-11-21 Thread Dmitry Yemanov (JIRA)
Components: Engine Affects Versions: 2.5.3, 2.5.2 Update 1, 2.5.2 Reporter: Dmitry Yemanov Crash happens when one thread executes RDB$SET_CONTEXT: fb_inet_server!set_context fb_inet_server!CALL_UDFlong fb_inet_server!invoke fb_inet_server!FUN_evaluate fb_inet_server!EVL_expr

Re: [Firebird-devel] Tackling CORE-4526 (OFFSET FETCH)

2014-11-11 Thread Dmitry Yemanov
11.11.2014 21:02, Mark Rotteveel wrote: Anyone? I'm looking at the patch, please be patient ;-) Dmitry -- Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email,

Re: [Firebird-devel] DROP USER delayed until commit?

2014-11-09 Thread Dmitry Yemanov
09.11.2014 12:21, Mark Rotteveel wrote: I noticed that when dropping a user that does not exist (using DROP USER), the isc_gsec_err_rec_not_found error is not triggered on execute, but only on commit, which is rather unexpected and makes it harder to take appropriate actions. Why is this,

Re: [Firebird-devel] request operations

2014-11-04 Thread Dmitry Yemanov
04.11.2014 18:18, Dimitry Sibiryakov wrote: Could someone explain meaning of each of the values? enum req_s { req_evaluate, req_return, req_receive, req_send, req_proceed, req_sync, req_unwind }; req_evaluate - execute the node inside the main

Re: [Firebird-devel] View Creation error on Firebird 3 Snapshot 31387

2014-11-03 Thread Dmitry Yemanov
Fabiano, I’m testing the new Firebird 3 Snapshot (31387) and I got a SP creation error that does not occur in FB 2.5.1. /Column unknown./ /ITENS.BDCODNAT./ This is an intended limitation to comply with the SQL specification (and other databases as well). from vef_emp_tmovseritens itens ,

Re: [Firebird-devel] Tackling CORE-4526 (OFFSET FETCH)

2014-11-03 Thread Dmitry Yemanov
03.11.2014 23:14, Mark Rotteveel wrote: For implementing this I need to add two keywords: ROW and OFFSET (note: defined as reserved in SQL standard), but looking at the definition in keywords.cpp, I wonder what I need to use for version (1 or 2, or maybe a different value. Version 2.

Re: [Firebird-devel] Multiple instances under windows (was Re: UsingFirebird 3, beta 1 - installer report)

2014-10-31 Thread Dmitry Yemanov
31.10.2014 20:19, Leyne, Sean wrote: The only issue is that the restart will not happen immediately, but after 1 minute (interval granularity is minutes, not seconds) Isn't zero interval allowed? Dmitry --

Re: [Firebird-devel] Thought about constraint declarations for V4

2014-10-28 Thread Dmitry Yemanov
Ann, I think it would be wise to add a [NO] VALIDATION modifier to constraint definitions, including NOT NULL and referential integrity definitions. In the presence of a VALIDATION modifier, Firebird would begin enforcing the constraint on commit (as now) and then start a pass to insure that

Re: [Firebird-devel] Thought about constraint declarations for V4

2014-10-28 Thread Dmitry Yemanov
28.10.2014 00:14, Thomas Steinmaurer wrote: Now while constraints are under discussion, if we could put deferred constraints into the nice to have pot ... ;-) Not for v4, sorry. Dmitry -- Firebird-Devel mailing

Re: [Firebird-devel] Multiple instances under windows (was Re: UsingFirebird 3, beta 1 - installer report)

2014-10-28 Thread Dmitry Yemanov
28.10.2014 10:34, Martijn Tonies wrote: It would be nice to be able to easily control the instances from a small application. What's wrong with the Windows Service Manager? ;-) Dmitry -- Firebird-Devel mailing

Re: [Firebird-devel] Thought about constraint declarations for V4

2014-10-28 Thread Dmitry Yemanov
28.10.2014 12:35, Dimitry Sibiryakov wrote: Oracle?.. Their invalid DB objects aren't about consistency even in the smallest. Invalid metadata invalid data. We're speaking about the latter here. Dmitry --

Re: [Firebird-devel] Thought about constraint declarations for V4

2014-10-28 Thread Dmitry Yemanov
28.10.2014 13:28, Adriano dos Santos Fernandes wrote: If user knows what he's doing, then the database is not validating, it's just wasting his time. I think there should be a NO VALIDATION option. Generally, I don't mind. My point was that *by default* VALIDATION should be implied and such

Re: [Firebird-devel] Beta 1: how to use additionalsecuritydatabases?

2014-10-28 Thread Dmitry Yemanov
28.10.2014 18:28, Alex Peshkoff wrote: I understand that using mon$ tables could be better but afraid for FB3 time for such changes is gone. Feel free to modify SEC$USERS, if needed. I'm likely to commit changes for MON$ tables before Beta 2 as well. Dmitry

Re: [Firebird-devel] Beta 1: how to use additionalsecuritydatabases?

2014-10-28 Thread Dmitry Yemanov
28.10.2014 18:55, Alex Peshkoff wrote: What if I also add that info not to SEC$USERS but to MON$DATABASE? No problem, but what is that info? Name of the security db or what? I'm asking because we had plans to introduce all config settings (actual to this database) via a new MON$ table. So

Re: [Firebird-devel] Beta 1: how to use additionalsecuritydatabases?

2014-10-28 Thread Dmitry Yemanov
28.10.2014 19:06, Martijn Tonies wrote: MON$SEC_DATABASE_USED values: DEFAULT / SECONDARY Maybe DEFAULT, SELF, OTHER? I may imagine cases when EUA and other-non-default dbs should be distinguished. Dmitry --

Re: [Firebird-devel] Beta 1: how to use additionalsecuritydatabases?

2014-10-28 Thread Dmitry Yemanov
28.10.2014 19:19, Martijn Tonies wrote: What would self mean? Are the security tables inside the database you're connecting to? Self = EUA. Not just having security tables but actually known to be authenticated using them while connecting. And other non default would be a few databases

Re: [Firebird-devel] Beta 1: how to use additionalsecuritydatabases?

2014-10-28 Thread Dmitry Yemanov
28.10.2014 19:37, Dimitry Sibiryakov wrote: Why it is security.fdb, not security3.fdb then?.. Actually, it's security.db, not security.fdb ;-) security.db = $(dir_secDb)/security3.fdb Dmitry -- Firebird-Devel

Re: [Firebird-devel] Firebird 3.0 Build 31369 gbak crash

2014-10-27 Thread Dmitry Yemanov
Fabiano, I’m testing the new Firebird 3.0 build 31369 and trying to restore a big database and at some point, creating an index gbak.exe crashes and database restore is interrupted. In the firebird.log I got 2 entries: FABIANOWed Oct 22 15:46:42 2014

Re: [Firebird-devel] Firebird 3.0 beta database recover problem: object has non-SQL security class defined

2014-10-27 Thread Dmitry Yemanov
27.10.2014 12:30, Robbert-Jan wrote: While restoring a database with FB 3.0 beta 1 (backed-up with FB3 alpha 2), I get this error: action cancelled by trigger (3) to preserve data integrity object has non-SQL security class defined Can you provide us with this backup? Dmitry

Re: [Firebird-devel] Firebird 3.0 beta database recover problem: object has non-SQL security class defined

2014-10-27 Thread Dmitry Yemanov
27.10.2014 13:34, Robbert-Jan wrote: Sure, I'm happy to. As long as I can put it somewhere privately (i.e. not on the internet) and you're willing to destroy it after analyzing/fixing. I will destroy it for sure. Where can I put it? Do you have FTP server in your company? The size of the

Re: [Firebird-devel] Firebird 3.0 beta database recover problem: object has non-SQL security class defined

2014-10-27 Thread Dmitry Yemanov
27.10.2014 15:20, Robbert-Jan wrote: But do I have to create a issue in the tracker for this? I guess not, if it only applies to converting from alpha2 to beta1. I can now confirm this being an incompatibility in the backup format introduced between Alpha 2 and Beta 1. This affects packages

Re: [Firebird-devel] Firebird 3 Beta 2 according to tracker

2014-10-27 Thread Dmitry Yemanov
28.10.2014 00:09, Thomas Steinmaurer wrote: does the following reflect the real status quo on what needs to be done for Beta 2? http://tracker.firebirdsql.org/browse/CORE/fixforversion/10586 More or less. Some items from that list can be postponed and some minor tasks may be not in the list.

Re: [Firebird-devel] Multiple instances under windows (was Re: UsingFirebird 3, beta 1 - installer report)

2014-10-27 Thread Dmitry Yemanov
27.10.2014 19:58, Paul Reeves wrote: What is - currently - the reason to keep supporting the cpl applet? Does it do anything more than just starting/stopping the service? It has always allowed switching the guardian on and off, as well as switching between running as an app or a service. My

Re: [Firebird-devel] SysFunctions returning non-null value for null input

2014-10-16 Thread Dmitry Yemanov
16.10.2014 14:55, Geoff Worboys wrote: I've cut the problem down to the thing that's giving me trouble: I want to return a non-null value when when the input expression resolves to null. In the code below I'm just trying to return a 0 (for the sake of the example). This executes but still

Re: [Firebird-devel] Linux requirements for FB3

2014-10-15 Thread Dmitry Yemanov
15.10.2014 18:50, Alex Peshkoff wrote: Distro kernel glibc Firebird3 ok Debian 6 2.6.32 2.11.2 no Debian 7 3.2.41 2.13yes RHEL-5 2.6.18 2.5 no RHEL-6 2.6.32 2.12no RHEL-7 3.102.17yes SLE11

Re: [Firebird-devel] Linux requirements for FB3

2014-10-15 Thread Dmitry Yemanov
15.10.2014 19:20, Alex Peshkoff wrote: In that case we will have to keep suing a hack with a shared posix mutex to avoid an old bug in a kernel fixed in 2.6.33 or 24 (do not remember exactly). Showed itself on CS when accessing same db remotely (i.e. as firebird user from OS POV) and embedded

Re: [Firebird-devel] openCursors works different in embedded and remote

2014-10-14 Thread Dmitry Yemanov
13.10.2014 19:23, Adriano dos Santos Fernandes wrote: Please look at test staticMessage2 at https://github.com/asfernandes/fbstuff/blob/master/src/test/v3api/StaticMessageTest.cpp The second openCursor tries to pass NULL to a not-NULL parameter. With embedded, the test works. With remote,

Re: [Firebird-devel] wait vs nowait on meta data statements

2014-10-03 Thread Dmitry Yemanov
03.10.2014 10:31, Martijn Tonies wrote: I noticed that with Classic 2.5, you can get “object in use” when trying to modify a stored procedure that’s been previously executed, see also: http://tracker.firebirdsql.org/browse/CORE-4016 When using “wait” on the transaction to save the procedure,

Re: [Firebird-devel] Firebird 3.0.0.31348 - Weird domain metadata for newly created domain

2014-10-03 Thread Dmitry Yemanov
03.10.2014 19:47, Adriano dos Santos Fernandes wrote: https://github.com/asfernandes/fbstuff/blob/master/src/test/v3api/StaticMessageTest.cpp Note the line string(output-description.str,output-description.length) for the SALES relation, which don't have a comment. Current (without a test

Re: [Firebird-devel] Firebird 3.0.0.31348 - Weird domain metadata for newly created domain

2014-10-03 Thread Dmitry Yemanov
03.10.2014 21:03, Martijn Tonies (Upscene Productions) wrote: You purposefully want to break existing applications because the Firebird client returns the data of the previous record. You don't get what's really happening. Firebird API (read: fbclient) represents every field with two parts:

Re: [Firebird-devel] Firebird 3.0.0.31348 - Weird domain metadata for newly created domain

2014-10-03 Thread Dmitry Yemanov
03.10.2014 21:20, Martijn Tonies (Upscene Productions) wrote: I get exactly what's happening. And it's clear to me -something- has changed in this regard, cause if it weren't, everything would be just fine. Then tell us how a properly written application (the one not ignoring the NULL

Re: [Firebird-devel] Firebird 3.0.0.31348 - Weird domain metadata for newly created domain

2014-10-03 Thread Dmitry Yemanov
03.10.2014 21:37, Martijn Tonies (Upscene Productions) wrote: I never said a properly written application could be affected, I said something has clearly changed as existing applications suddenly return the wrong result. And I said that such existing applications are obviously buggy, but you

Re: [Firebird-devel] error on restore

2014-10-02 Thread Dmitry Yemanov
02.10.2014 22:21, Roman Simakov wrote: Sorry for some kind of offtopic. What does it mean the last number in version? Is it synthetic build number? Yes, it's auto-generated. How can I understand what revision number was used to build it? Search by the build number in fb-checkins. Note that

Re: [Firebird-devel] error on restore

2014-10-02 Thread Dmitry Yemanov
02.10.2014 20:18, Frank Schlottmann-Gödde wrote: I'm getting gbak: ERROR:action cancelled by trigger (3) to preserve data integrity gbak: ERROR:object has non-SQL security class defined gbak:Exiting before completion due to errors when trying to restore a backup created by version

[Firebird-devel] [FB-Tracker] Created: (CORE-4568) Server may crash while disconnecting from the database under load

2014-10-01 Thread Dmitry Yemanov (JIRA)
Components: Engine Affects Versions: 3.0 Alpha 2, 3.0 Alpha 1 Environment: SC/CS only Reporter: Dmitry Yemanov If a page-level AST is delivered during the database disconnection, the server may crash. -- This message is automatically generated by JIRA. - If you

[Firebird-devel] [FB-Tracker] Created: (CORE-4564) Add per-table performance counters to the monitoring tables

2014-09-30 Thread Dmitry Yemanov (JIRA)
Components: Engine Reporter: Dmitry Yemanov Currently, record level performance counters are available in MON$RECORD_STATS only globally (aggregating all affected tables). However, they are available at the per table basis in the trace output. It makes a lot of sense to report

Re: [Firebird-devel] TCP Loopback fast path in Windows

2014-09-26 Thread Dmitry Yemanov
26.09.2014 19:13, Leyne, Sean wrote: Localhost is not necessary for Classic and SuperClassic engine (I not sure of SuperServer, we don't use this mode), since local mode connections are supported XNET is not an option for Jaybird or .NET users. since the long-term path for Firebird is the

Re: [Firebird-devel] TCP Loopback fast path in Windows

2014-09-26 Thread Dmitry Yemanov
26.09.2014 20:11, Leyne, Sean wrote: If v3 has the SMP improvements which are planned, why would we continue to support 3 engine versions? Classic and SuperClassic would have functionality which covers all use cases. v3 has the SMP improvements in *SuperServer*. Dmitry

Re: [Firebird-devel] Beta release

2014-09-24 Thread Dmitry Yemanov
24.09.2014 19:33, Tom Coleman wrote: We're almost in October and the FB3 beta release date still shows as August 31. SMB 3, memory management, etc., etc - all very interesting discussions but how are they leading to the highly-anticipated and much needed beta release? Beta release is

Re: [Firebird-devel] Beta release

2014-09-24 Thread Dmitry Yemanov
24.09.2014 19:39, Dmitry Yemanov wrote: Beta release is expected the next week. Correction: Beta *code* is expected to be ready (i.e. tagged) the next week. The release itself will appear slightly later, after composing the docs and passing QA. Dmitry

Re: [Firebird-devel] Firebird 3 memory manager

2014-09-20 Thread Dmitry Yemanov
Nickolay, I implemented intermediate versions GC algorithm and tried to run some stress tests on Firebird 3 to check if I have broken something. The problem is that tests that I created were spending most of their time in memory manager. This is not healthy. Out of curiosity, what is the

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-04 Thread Dmitry Yemanov
04.09.2014 19:25, Tom Coleman wrote: Speaking of the v3.0 release, who updates 3.0 Beta 1 release dates? Me. August 31 has come and gone: I know. Are there really just 5 unresolved issues delaying the beta release? Yes, around that number. Dmitry

Re: [Firebird-devel] Coding style: one-line blocks

2014-09-02 Thread Dmitry Yemanov
02.09.2014 19:05, Dimitry Sibiryakov wrote: if (some condition some other condition) hardly recognized line that doing something; This example violates the project coding style. Dmitry

Re: [Firebird-devel] Coding style: one-line blocks

2014-09-02 Thread Dmitry Yemanov
02.09.2014 18:35, Dimitry Sibiryakov wrote: When was decided that one-line blocks must not be enclosed with parentheses? It didn't change for the past few years: http://www.firebirdsql.org/en/coding-style/ http://geosoft.no/development/cppstyle.html 82. Single statement if-else, for or while

Re: [Firebird-devel] Coding style: one-line blocks

2014-09-02 Thread Dmitry Yemanov
02.09.2014 21:27, Dimitry Sibiryakov wrote: if (temp.rpb_flags rpb_delta) temp.rpb_prior = data; doesn't look much better. Let me disagree. Dmitry -- Slashdot TV. Video for Nerds. Stuff that

Re: [Firebird-devel] Firebird 3 - Windows snapshot builds

2014-09-02 Thread Dmitry Yemanov
02.09.2014 23:10, Gabor Boros wrote: Available snapshots date is august 27. Is it a known issue? Yes, Windows builds are broken. Dmitry -- Slashdot TV. Video for Nerds. Stuff that matters.

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
01.09.2014 11:24, Alex Peshkoff wrote: That's nice - but what should happen with that special syntax when BLR follows DYN? Easy option - deprecate the command. A more clever one - not DROP (nullify) the source but set some flag to HIDE it instead. That flag would mean returning NULL instead

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
01.09.2014 19:58, Jim Starkey wrote: Anybody see any problems with it? I like neither DPB solution because it's DPB. It's not a connection string option, it's an API option. Surely not a problem for ISQL users that will support it out of the box. But most of existing user applications need

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
01.09.2014 23:28, Dimitry Sibiryakov wrote: But it requires a quite complex condition, no? Not just if relation is system one, throw exception, but if relation is system one, but not this and that, throw exception. Complex condition is: relation is X and no other field but rdb$source is

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
01.09.2014 23:35, Dmitry Yemanov wrote: Complex condition is: relation is X and no other field but rdb$source is modified and the new value is NULL, of course. Dmitry -- Slashdot TV. Video for Nerds. Stuff

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
02.09.2014 00:22, James Starkey wrote: What possible user applications are going to be doing procedure and trigger definitions that require the source be omitted? Whatever user application that works with the database and executes metadata upgrade scripts itself, without invoking ISQL. And

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-09-01 Thread Dmitry Yemanov
02.09.2014 00:59, Dimitry Sibiryakov wrote: Complex condition is: relation is X and no other field but rdb$source is modified. We already have function in VIO doing such a check for other purposes. You are not going to simplify code, are you?.. Neither of the solutions being discussed

Re: [Firebird-devel] Hiding source code of procedures and triggerswill not work in FB 3

2014-08-31 Thread Dmitry Yemanov
31.08.2014 22:11, Dimitry Sibiryakov wrote: To secure it from examining by users, no?.. This is the last reason for such a move. Dmitry -- Slashdot TV. Video for Nerds. Stuff that matters.

Re: [Firebird-devel] Hiding source code of procedures and triggers will not work in FB 3

2014-08-31 Thread Dmitry Yemanov
31.08.2014 15:51, Carlos H. Cantu wrote: We have a hack that many people uses for a long time, to make it more difficult to stole procedures/triggers source (more difficult, not impossible, since BLR can be decoded to source). They know it is not 100% safe, but so far it is the only way to

[Firebird-devel] [FB-Tracker] Created: (CORE-4534) Invalid DB_KEY based retrievals when concatenation is involved

2014-08-28 Thread Dmitry Yemanov (JIRA)
Components: Engine Affects Versions: 2.5.3, 2.1.6, 3.0 Alpha 2, 3.0 Alpha 1, 2.5.2 Update 1, 2.1.5 Update 1, 2.5.2, 2.1.5 Reporter: Dmitry Yemanov Priority: Minor Trivial demonstration: set plan; select * from rdb$database where rdb$db_key = x'

Re: [Firebird-devel] Unsigned integer TraNumber problem

2014-08-27 Thread Dmitry Yemanov
26.08.2014 00:29, Nikolay Samofatov wrote: When you converted transaction number from SLONG to TraNumber (ULONG) you didn't take into account that LCK_query_data returns SLONG and uses signed integers internally. While there might be different solutions to this particular problem, I'm

Re: [Firebird-devel] Unsigned integer TraNumber problem

2014-08-27 Thread Dmitry Yemanov
26.08.2014 21:52, Jim Starkey wrote: As the original author of SLONG, ULONG, et al, might I suggest that you ditch them all in favor of the standard and size explicit int64_t, int32_t, etc.? When it was discussed the last time, some compilers (was it some ancient MSVC version?) didn't

[Firebird-devel] [FB-Tracker] Created: (CORE-4530) DB_KEY based join of two tables may be ineffective

2014-08-25 Thread Dmitry Yemanov (JIRA)
Affects Versions: 2.5.3, 3.0 Alpha 2 Reporter: Dmitry Yemanov Simplified test case: set planonly; recreate table t (id int primary key); commit; select count(*) from (select id, rdb$db_key k from t a order by id) x left join t z on x.k = z.rdb$db_key -- (*) PLAN JOIN (X A ORDER

Re: [Firebird-devel] Tackling CORE-4526 (OFFSET FETCH)

2014-08-22 Thread Dmitry Yemanov
22.08.2014 18:54, Mark Rotteveel wrote: Are there any objections if I try to come up with a patch to add OFFSET and FETCH to the select syntax (CORE-4526)? Feel free. Dmitry -- Slashdot TV. Video for Nerds.

Re: [Firebird-devel] Error messages how-to

2014-08-12 Thread Dmitry Yemanov
12.08.2014 18:03, Mark Rotteveel wrote: Doesn't this miss a add specific standard (or vendor-specific) SQL state somewhere? It's hidden inside item (3) ;-) Dmitry -- Firebird-Devel mailing list, web interface at

Re: [Firebird-devel] So, What's wrong with IBPP?

2014-08-11 Thread Dmitry Yemanov
11.08.2014 13:45, Mark Rotteveel wrote: To illustrate: you seem (?) to be speaking from the perspective of a target audience who use the interface in application development, and where you don't want to deal with all the nitty gritty low-level details, here IBPP is probably a good fit (but as

Re: [Firebird-devel] New Interface

2014-08-11 Thread Dmitry Yemanov
11.08.2014 18:18, Jim Starkey wrote: Since plugins pretty much need to be compiled with the same compiler as the engine Very questionable requirement. I can easily expect plugins written in Delphi. Dmitry --

Re: [Firebird-devel] New Interface

2014-08-11 Thread Dmitry Yemanov
11.08.2014 22:08, Adriano dos Santos Fernandes wrote: But an (client) application wants to generate exception when accessing the API, and we do not know in advance what's the good classes for each project. And we'll never know. This is not our business, IMO. Some may use like Firebird, an

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 07:09, Adriano dos Santos Fernandes wrote: I did some tests and detected that FPC class with or without virtual methods has a pointer in its start. From what I've seen on the web, there should be three pointers there. But maybe it depends on the compiler settings or other reasons

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 12:34, Reinier Olislagers wrote: Do I understand correctly that the existing FB 2.5 C API will therefore remain supported Correct. and updated with new features for each FB release? Not necessarily correct. Dmitry

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 13:48, Dimitry Sibiryakov wrote: It is an open project, no?.. It is. But open unmanaged. When C API missed a new feature that I could use, I created a patch, submitted it to the project and it may be either accepted or rejected. Because you may disappear tomorrow but the

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 13:55, Reinier Olislagers wrote: However, apparently FB devs don't think it's important to keep it in sync with the C++ interface - even if third parties could submit patches for that. So in effect, new FB (features) will not be compatible with any language that does not have C++

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 14:09, Dimitry Sibiryakov wrote: Whole project is inherited, remember?.. You have to maintain code written by Jim, Mike, Arno, Nikolay and others, so why not mine?.. Everything depends on the patch. There's a difference between *can* be accepted and *will* be accepted. If you

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 14:10, Jim Starkey wrote: It is a fool's errand to try to build a OO interface that is call compatible across a wide range of OO languages. If anyone is in doubt, look at Objective-C and weep. If this is found being impossible (I'm not deeply involved, so I don't have a

Re: [Firebird-devel] New Interface

2014-08-10 Thread Dmitry Yemanov
10.08.2014 19:45, Dimitry Sibiryakov wrote: When will you start to separate application API and plugin API?.. UDRs must use a regular application API for callbacks into the engine, this is a design requirement. Dmitry

Re: [Firebird-devel] New Interface

2014-08-09 Thread Dmitry Yemanov
09.08.2014 21:19, Dimitry Sibiryakov wrote: It has to be channeled to benefit current and prospective users. Current users don't care about API because they don't use it. They use all kind of envelopes which are already OO-oriented, tested by years and well documented. Future users also

Re: [Firebird-devel] dtype_packed

2014-08-05 Thread Dmitry Yemanov
05.08.2014 12:19, Mark Rotteveel wrote: Not an authorative answer, but it seems that dtype_packed is also known in COBOL (and SAP) for a BCD (binary coded decimal). If that also applies to Firebird, I am not sure. dtype_packed really seems to be a packed decimal, however it's not used by

Re: [Firebird-devel] SVN: firebird:[59943] firebird/trunk/src/yvalve/why.cpp

2014-08-03 Thread Dmitry Yemanov
03.08.2014 18:29, Dimitry Sibiryakov wrote: Commented out the annoying (thus supposedly wrong?) assertion. Without this assert following code will crash with segfault on using offsets array. If this assert is activated on queries without output parameters, it should be changed to

Re: [Firebird-devel] DDL permissions

2014-08-02 Thread Dmitry Yemanov
01.08.2014 18:55, Simonov Denis wrote: SQL insert into RDB$EXCEPTIONS(RDB$EXCEPTION_NAME) VALUES ('E1'); At the first glance, I don't see why it cannot be prohibited. But I see from the code that many system tables are still unprotected from user inserts. Maybe Claudio still has some pending

Re: [Firebird-devel] COMMENT ON docs

2014-07-28 Thread Dmitry Yemanov
28.07.2014 20:57, Dalton Calford wrote: Has any work been performed on implementing schema/synonyms/larger object identifiers? Nope, as far as I'm aware of. It was proposed for v4 but so far I don't see anybody jumping in with lots of interest... Dmitry

Re: [Firebird-devel] COMMENT ON docs

2014-07-28 Thread Dmitry Yemanov
28.07.2014 22:20, Dalton Calford wrote: So, let me understand this. (a) the plan is to block/remove access to the system tables Wrong, at least in the short term. Currently we're trying to block *write* access to the system tables, no more than that. (b) functionality will not be added

Re: [Firebird-devel] New Interface

2014-07-25 Thread Dmitry Yemanov
25.07.2014 18:43, Jim Starkey wrote: If an interface is incompatible, existing applications have to be recoded. If they need to be recoded, there isn't any real purpose to retaining an interface style. At the moment the new API and the legacy one are mostly compatible, actually the legacy

Re: [Firebird-devel] setCursorName in IResultSet rather than IStatement

2014-07-24 Thread Dmitry Yemanov
24.07.2014 14:37, Dimitry Sibiryakov wrote: In new API you can simply deprecate using named cursors. They are almost useless anyway. And also deprecate WHERE CURRENT OF in DSQL for being useless? Just because you don't use it? Dmitry

Re: [Firebird-devel] setCursorName in IResultSet rather than IStatement

2014-07-24 Thread Dmitry Yemanov
24.07.2014 14:54, Dimitry Sibiryakov wrote: Does it work without FOR UPDATE in SELECT now? I haven't tried. Did it work before? Has FOR UPDATE clause stopped killing network peformance? Not everybody is working with slow networks. Using RDB$DB_KEY for DML has the same effect as WHERE

Re: [Firebird-devel] setCursorName in IResultSet rather than IStatement

2014-07-24 Thread Dmitry Yemanov
24.07.2014 15:14, Dimitry Sibiryakov wrote: I haven't tried. Did it work before? No. And this is correct. Not everybody is working with slow networks. Any network is slow for transferring one record per fetch. Embedded server shows this problem well. (Every SELECT in it works in

Re: [Firebird-devel] Problems with the Firebird 3 API

2014-07-22 Thread Dmitry Yemanov
21.07.2014 18:04, Alex Peshkoff wrote: Ahh - it's related with multiple inheritance and rtti. Luckily we do not use both in interfaces. Just for clarity - besides that, we must neither use virtual destructors nor overloaded methods to guarantee the stable vtable layout. Dmitry

Re: [Firebird-devel] Problems with the Firebird 3 API

2014-07-22 Thread Dmitry Yemanov
22.07.2014 14:54, Alex Peshkoff wrote: Not sure how does presence of overloaded methods affect stability of vtable layout, but agree that we should better avoid them in public interfaces. Even if you put an overloaded method at the end of the interface, its vtable entry will be placed in the

Re: [Firebird-devel] Firebird 3 build broken with gcc under Linux

2014-07-22 Thread Dmitry Yemanov
22.07.2014 14:44, Dimitry Sibiryakov wrote: Instead of fixing handling 32 bits internally without any bounds checking In general, I don't like platform dependent datatypes in the public API, hence my objections to size_t. (*) The problems, as I see them, are: 1) It may complicate client

Re: [Firebird-devel] Problems with the Firebird 3 API

2014-07-22 Thread Dmitry Yemanov
22.07.2014 15:31, Jim Starkey wrote: Why do you care? If the C++ interface (pure virtual) is expected to be used outside the Firebird project (by other C++ applications) or even by different Firebird versions (e.g. newer server loading the older engine), then we must care. You cannot extend

Re: [Firebird-devel] Firebird 3 build broken with gcc under Linux

2014-07-21 Thread Dmitry Yemanov
21.07.2014 13:13, Alex Peshkoff wrote: We were using system size_t until Nickolay had committed FB_SIZE_T a few days ago in attempt to avoid warnings. The bad thing is that it wasnt't discussed. Not too late to begin discussion now. I would sooner agree with the change and Nickolay's

Re: [Firebird-devel] Problems with the Firebird 3 API

2014-07-21 Thread Dmitry Yemanov
21.07.2014 16:32, Alex Peshkoff wrote: First of all - formal definition of API is certainly not a set of C++ classes. Each firebird interface is a single pointer, pointing to the table of virtual functions that are contained in this interface. First parameter of each function is always a

Re: [Firebird-devel] Firebird 3 build broken with gcc under Linux

2014-07-21 Thread Dmitry Yemanov
21.07.2014 18:16, Alex Peshkoff wrote: I think we should wait for Nickolay's mind before doing some big changes. I don't propose any big changes now, so far we're just discussing. Maybe there will be other opinions posted here. Dmitry

Re: [Firebird-devel] Problems with the Firebird 3 API

2014-07-21 Thread Dmitry Yemanov
21.07.2014 18:04, Alex Peshkoff wrote: Ahh - it's related with multiple inheritance and rtti. Luckily we do not use both in interfaces. I didn't try your test app, but I can confirm the expected vtable layout (at least for IProvider) in the debugger (for gcc 4.8.2). As for Free Pascal, they

Re: [Firebird-devel] Firebird 3 build broken with gcc under Linux

2014-07-19 Thread Dmitry Yemanov
19.07.2014 14:14, Roman Simakov wrote: IMO FB must use system size_t. We were using system size_t until Nickolay had committed FB_SIZE_T a few days ago in attempt to avoid warnings. The bad thing is that it wasnt't discussed. Dmitry

Re: [Firebird-devel] DDL permissions

2014-07-17 Thread Dmitry Yemanov
17.07.2014 12:32, Simonov Denis wrote: After adding restrictions on DDL statements, I can not start initialized security3.fdb GSEC add sysdba -pw masterkey An error occurred while attempting to add the user. unsuccessful metadata update CREATE TABLE PLG$SRP failed There is no privilege

Re: [Firebird-devel] C++ and the API

2014-07-16 Thread Dmitry Yemanov
16.07.2014 12:15, Dimitry Sibiryakov wrote: This criticism is valid not for API itself, but mostly for its internal implementation. API is fine, code under the hood is inadequate. Once again, you don't count the message based API being a public API. Most of 16 bits limitation belongs to

Re: [Firebird-devel] C++ and the API

2014-07-15 Thread Dmitry Yemanov
15.07.2014 17:49, Dimitry Sibiryakov wrote: It even refuses to open (leave alone absence of links from official www server). Surprise, but the link is from the official www server. Dmitry -- Want fast and easy

Re: [Firebird-devel] The Firebird 3 API and programming language independence

2014-07-13 Thread Dmitry Yemanov
13.07.2014 18:36, Dimitry Sibiryakov wrote: http://sourceforge.net/projects/uib/ And the module he supposedly refers to is: https://sourceforge.net/p/uib/code/HEAD/tree/trunk/source/uibfblib.pas Dmitry --

<    3   4   5   6   7   8   9   10   11   12   >