Re: [Firebird-devel] Firebird 4 - MON$ / Trace API changes?

2021-09-16 Thread Thomas Steinmaurer

Hi Mark,

On 2021-09-13 15:59, Maya Opperman wrote:
  Another possibility is to set coercion rules for new data type 
for your connection, see


https://firebirdsql.org/file/documentation/release_notes/html/en/4_0/rlsnotes40.html#rnfb4-msql-set-bind-native-to-legacy-coercion-rules 



Thanks Vlad! In this example from this link:

SET BIND OF DECFLOAT TO DOUBLE PRECISION;
SELECT CAST('123.45' AS DECFLOAT(16)) FROM RDB$DATABASE; --double

Does this need to be done within every transaction that is started, or
per connection/session, or once off per database?


You have two options if you want to control this per database:

1. Use DataTypeCompatibility[1] in databases.conf (or firebird.conf 
for all databases). This allows you to restrict the types to those of 
Firebird 3.0 or 2.5 and Firebird will apply coercion rules for new types


2. Define an ON CONNECT database trigger that defines the rule(s) you 
want


You can also define the mapping rules through the database parameter 
buffer.


Mark

 [1]: 
https://www.firebirdsql.org/file/documentation/release_notes/html/en/4_0/rlsnotes40.html#rnfb40-config-datatypecompat



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


If someone has no control over a customer database, the DPB approach at 
connect level sound appealing. And Google points me to the Jaybird 
documentation :-)

https://firebirdsql.github.io/jaybird-manual/jaybird_manual.html#ref-datatypebind

Thanks for this hint. Very helpful!

Thomas



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 4 - MON$ / Trace API changes?

2021-09-13 Thread Thomas Steinmaurer

Hello Vlad,


13.09.2021 11:43, Thomas Steinmaurer wrote:

Hello,

congratulations to the Firebird 4 release!

How do I best find out what has been changed in the area of MON$ 
tables and especially Firebird Trace API.


MON$ tables get a bit of mentioning in the Release Notes, e.g. what 
fields have been added etc. resp. I could extract the DDL for all 
MON$ tables and textually compare it the output for Firebird 3 MON$ 
tables.


What might have been added in the Firebird 4 Trace API interesting 
for our FB TraceManager product? Any new trace event types (aka 
EXECUTE_STATEMENT_FINISH etc ...). Would thi be covered in the 
Release Notes?


  Sure. There was not mush changes in Trace visible to the end users:
- new system privilege to trace attachments of other users
- session management statements now traced
- trace record for COMMIT/ROLLBACK RETAINING was extended to show 
old/new transaction IDs


Some other features that developed before release was backported into 
v3 so it is not new in v4.

And, of course, some bugs was fixed.


Many thanks. This helps.

It seems MON$ tables are now using the timestamp with time zone data type.

To do a simple "SELECT * ..." query on e.g. MON$DATABASE, I guess either 
the client library needs to support the new data type or I need to 
explicitly CAST to TIMESTAMP each affected column, right?


Thanks,
Thomas



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 4 - MON$ / Trace API changes?

2021-09-13 Thread Thomas Steinmaurer

Hello,

congratulations to the Firebird 4 release!

How do I best find out what has been changed in the area of MON$ tables 
and especially Firebird Trace API.


MON$ tables get a bit of mentioning in the Release Notes, e.g. what 
fields have been added etc. resp. I could extract the DDL for all MON$ 
tables and textually compare it the output for Firebird 3 MON$ tables.


What might have been added in the Firebird 4 Trace API interesting for 
our FB TraceManager product? Any new trace event types (aka 
EXECUTE_STATEMENT_FINISH etc ...). Would thi be covered in the Release 
Notes?


Again, congrats to Firebird 4. With native replication and others, seems 
like a really cool new major release.


Thanks,
Thomas




Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
> 14.11.2016 21:00, Thomas Steinmaurer wrote:
>
>> But still, IMHO it does not explain why additional connect request with
>> SS while running OLTP emul with 100 users are taking considerable time,
>> although they are almost instant with SC?
>
>This is not SS vs SC. This is absence vs presence of support of file
> system cache. Make SS use fs cache and see the difference :)

I did a run with PageCache = 50K, thus with enabled file system cache.

I'm still around 4sec+ for additional connection requests while running 
the OLTP emul test with 100 concurrent users with 3.0.1 SS 64-bit


Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hi Vlad,

> 14.11.2016 20:27, Thomas Steinmaurer wrote:
> ...
>> So, with 16G RAM and an OLTP emul database with ~ 2,9G, it is still
>> recommended with Firebird 3 SS and the shared page cache, to rather use
>> a smaller number, lets say 50K and keep the FileSystemCacheThreshold at
>> 64K to have the file system cache enabled? Or e.g. increase both
>> DefaultDbCachePages and FileSystemCacheThreshold?
>
>I have no universal answer :) 50K pages for Firebird SS page cache looks
> like good starting point for investigations
>
>> The main question is how to utilize cheap and available RAM best.
>
>It is already utilized by OS : file system cache, temporary files for
> sorting and GTT's, etc. Why people looks at one part of whole system -
> Firebird process - and often forget about all other parts ?
>
> ...
>
>>>>  From my understanding, file system cache is much more important for
>>>> SC/CS than with a large single page cache in SS. Is this assumption wrong?
>>>
>>>SS requires less support from file system cache for reads but still need 
>>> it
>>> for writes, especially in OLTP environment.
>>
>> Why writes in particular?
>
>Without file system caching, on "spinning disk (7200K)" you'll have 100-150
> writes per second - this is upper estimation for transactions per second as 
> every
> tx start requires header page write and every commit requires TIP page write.
>
>Firebird page cache will amortize many (or most) reads, but every write 
> without
> file system cache is long and hard physical write. Careful write not allows 
> us to
> avoid random IO, unfortunately. Large shared page cache (in SS) helps to avoid
> most writes up to commit time but commit iself will be slow. BTW, SSD could 
> help
> in such scenario.

OK.

But still, IMHO it does not explain why additional connect request with 
SS while running OLTP emul with 100 users are taking considerable time, 
although they are almost instant with SC?


Thanks,
Thomas


--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hello Vlad,

> 14.11.2016 16:09, Thomas Steinmaurer wrote:
>> Hello Simon,
>>
>>> Thomas Steinmaurer <t...@iblogmanager.com> wrote Mon, 14 Nov 2016 15:03:41
>>> +0300:
>>>
>>>> Hello,
>>>>
>>>> using Firebird-3.0.1.32609-0_x64_pdb.zip SuperServer on Windows 10 Prof.
>>>> with 16G RAM, spinning disk (7200K) and Xeon 1230 CPU (4 physical cores)
>>>>
>>>> Performance related changes in firebird.conf are:
>>>>
>>>> DB Page Size = 8K
>>>> DefaultDbCachePages = 128K (DB specific page buffers = 0)
>
>Here you disabled file system cache (as Denis already said)

Ok.

So, with 16G RAM and an OLTP emul database with ~ 2,9G, it is still 
recommended with Firebird 3 SS and the shared page cache, to rather use 
a smaller number, lets say 50K and keep the FileSystemCacheThreshold at 
64K to have the file system cache enabled? Or e.g. increase both 
DefaultDbCachePages and FileSystemCacheThreshold?

The main question is how to utilize cheap and available RAM best.

>>>> TempCacheLimit = 1024M
>>>> LockHashSlots = 22111
>>>>
>>>> anything else is default (except TCP port).
>>>>
>>>
>>> Try to install FileSystemCacheThreshold > DefaultDbCachePages.
>>> If FileSystemCacheThreshold < DefaultDbCachePages file cache is disabled,
>>> which may reduce performance ability to make some cases.
>>
>>  From my understanding, file system cache is much more important for
>> SC/CS than with a large single page cache in SS. Is this assumption wrong?
>
>SS requires less support from file system cache for reads but still need it
> for writes, especially in OLTP environment.

Why writes in particular?

Regards,
Thomas

>
> The best case when current Firebird could work better without support of file
> system cache is when:
> - mostly read load
> - working set fits into page cache
> - database page cache is preloaded (using "select count(*)" for example)
>
> Regards,
> Vlad
>
> --
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel
>



--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hello Simon,

> Thomas Steinmaurer <t...@iblogmanager.com> wrote Mon, 14 Nov 2016 15:03:41
> +0300:
>
>> Hello,
>>
>> using Firebird-3.0.1.32609-0_x64_pdb.zip SuperServer on Windows 10 Prof.
>> with 16G RAM, spinning disk (7200K) and Xeon 1230 CPU (4 physical cores)
>>
>> Performance related changes in firebird.conf are:
>>
>> DB Page Size = 8K
>> DefaultDbCachePages = 128K (DB specific page buffers = 0)
>> TempCacheLimit = 1024M
>> LockHashSlots = 22111
>>
>> anything else is default (except TCP port).
>>
>
> Try to install FileSystemCacheThreshold > DefaultDbCachePages.
> If FileSystemCacheThreshold < DefaultDbCachePages file cache is disabled,
> which may reduce performance ability to make some cases.

 From my understanding, file system cache is much more important for 
SC/CS than with a large single page cache in SS. Is this assumption wrong?


Thomas

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hi,

> Hi,
>
>> using Firebird-3.0.1.32609-0_x64_pdb.zip SuperServer on Windows 10 Prof.
>> with 16G RAM, spinning disk (7200K) and Xeon 1230 CPU (4 physical cores)
>>
>> Performance related changes in firebird.conf are:
>>
>> DB Page Size = 8K
>> DefaultDbCachePages = 128K (DB specific page buffers = 0)
>> TempCacheLimit = 1024M
>> LockHashSlots = 22111
>>
>> anything else is default (except TCP port).
>>
>> When running oltp-emul with 100 concurrent users (only) by:
>>
>> 1run_oltp_emul.bat 30 100
>>
>> I see Firebird server CPU usage < 4% only and IO < 3MB/s all the time,
>> thus mainly random I/O bound, I guess, without having a proof, thus
>> could also be code related.
>>
>> What's weird is that e.g. additional attachment requests, e.g. via isql
>> may take > 10s then. This does not make sense and makes SS entirely
>> unusable.
>>
>> I haven't tried SC or CS under that scenario yet.
>
> Re-run:
>
> 1run_oltp_emul.bat 30 100
>
> with SuperClassic and firebird.conf changes:
>
> DefaultDbCachePages = 1024
> TempCacheLimit = 8M
>
> An entirely different picture now. Although CPU usage is still < 5%,
> disk I/O (read+write) throughput (according to Process Explorer) is
> 20MB/s or even more

Could be related to the shared page cache in SS, thus massive less reads 
in the SS scenario (without having a proof *g*), but below attachment 
request blocking still remains.

Thanks,
Thomas

> and more importantly, additional attachment requests
> are instant.
>
> Looks to me like a serious lock contention bug/regression in SuperServer.
>
>
> Thomas
>
> --
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today. http://sdm.link/xeonphi
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel
>



--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hi,

> using Firebird-3.0.1.32609-0_x64_pdb.zip SuperServer on Windows 10 Prof.
> with 16G RAM, spinning disk (7200K) and Xeon 1230 CPU (4 physical cores)
>
> Performance related changes in firebird.conf are:
>
> DB Page Size = 8K
> DefaultDbCachePages = 128K (DB specific page buffers = 0)
> TempCacheLimit = 1024M
> LockHashSlots = 22111
>
> anything else is default (except TCP port).
>
> When running oltp-emul with 100 concurrent users (only) by:
>
> 1run_oltp_emul.bat 30 100
>
> I see Firebird server CPU usage < 4% only and IO < 3MB/s all the time,
> thus mainly random I/O bound, I guess, without having a proof, thus
> could also be code related.
>
> What's weird is that e.g. additional attachment requests, e.g. via isql
> may take > 10s then. This does not make sense and makes SS entirely
> unusable.
>
> I haven't tried SC or CS under that scenario yet.

Re-run:

1run_oltp_emul.bat 30 100

with SuperClassic and firebird.conf changes:

DefaultDbCachePages = 1024
TempCacheLimit = 8M

An entirely different picture now. Although CPU usage is still < 5%, 
disk I/O (read+write) throughput (according to Process Explorer) is 
20MB/s or even more and more importantly, additional attachment requests 
are instant.

Looks to me like a serious lock contention bug/regression in SuperServer.


Thomas

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 3.0.1 - SuperServer - Scalability

2016-11-14 Thread Thomas Steinmaurer
Hello,

using Firebird-3.0.1.32609-0_x64_pdb.zip SuperServer on Windows 10 Prof. 
with 16G RAM, spinning disk (7200K) and Xeon 1230 CPU (4 physical cores)

Performance related changes in firebird.conf are:

DB Page Size = 8K
DefaultDbCachePages = 128K (DB specific page buffers = 0)
TempCacheLimit = 1024M
LockHashSlots = 22111

anything else is default (except TCP port).

When running oltp-emul with 100 concurrent users (only) by:

1run_oltp_emul.bat 30 100

I see Firebird server CPU usage < 4% only and IO < 3MB/s all the time, 
thus mainly random I/O bound, I guess, without having a proof, thus 
could also be code related.

What's weird is that e.g. additional attachment requests, e.g. via isql 
may take > 10s then. This does not make sense and makes SS entirely 
unusable.

I haven't tried SC or CS under that scenario yet.

Anything known in that area?


Thanks,
Thomas

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Profiling Windows native process?

2016-11-14 Thread Thomas Steinmaurer
Roman, Marius thanks.

The following seems rather easy/light-weight:
http://www.codersnotes.com/sleepy/

Regards,
Thomas


> I wonder if you can use it under Visual Studio Diagnostic Tools
>
> https://blogs.msdn.microsoft.com/visualstudioalm/2015/01/16/diagnostic-tools-debugger-window-in-visual-studio-2015/
>
> On Mon, Nov 14, 2016 at 9:21 AM, Thomas Steinmaurer <t...@iblogmanager.com
> <mailto:t...@iblogmanager.com>> wrote:
>
> Hello,
>
> do you have any recommendations what toolset to use when it comes to
> profiling a Windows native process resp. Firebird 3.0.1 in particular?
>
> Basically I intend to see where time is spent (or perhaps it is a sync
> contention) when running a loadtest against Firebird 3.0.1 SS 64-bit on
> Windows resulting in lock-ups, not utilizing available resources etc.
>
> Any guidance is much appreciated. Thanks!
>
>
> Thomas
>
> 
> --
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today. http://sdm.link/xeonphi
> Firebird-Devel mailing list, web interface at
> https://lists.sourceforge.net/lists/listinfo/firebird-devel
> <https://lists.sourceforge.net/lists/listinfo/firebird-devel>
>
>
>
>
> --
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today. http://sdm.link/xeonphi
>
>
>
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel
>


--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Profiling Windows native process?

2016-11-13 Thread Thomas Steinmaurer
Hello,

do you have any recommendations what toolset to use when it comes to 
profiling a Windows native process resp. Firebird 3.0.1 in particular?

Basically I intend to see where time is spent (or perhaps it is a sync 
contention) when running a loadtest against Firebird 3.0.1 SS 64-bit on 
Windows resulting in lock-ups, not utilizing available resources etc.

Any guidance is much appreciated. Thanks!


Thomas

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Foreign key error even there should not be one (maybe, Weird problem in one database)

2016-09-15 Thread Thomas Steinmaurer
> Whole story here :
> 
> https://plus.google.com/105626236962310493174/posts/3UZB71NjUhA
> 
> Copy of message
> - - - - - - - -  - - - - - - -  -
> Is there a tool (or way) to debug database step by step.
> 
> Now we have weird situation where delete from one database fails, on
> foreign key error, which sounds like it would be trivial thing, but seems
> so far it is not.
> 
> I was just thinking that if it would be our application code I would be
> able to debug through all of the related code and see if there is the
> culprit or not.
> 
> We suspect it has somethign to do with specific data on the rows. because
> some of them delete perfectly fine. This happens in this one database only.
> I've done backup restore for it, I ran gfix stuff on it. I even pumped the
> data in empty DB.
> 
> it should be problem of database structure (trickers and such), data or the
> Firebird. and most likely it problem of first two.
> 
> I was just thinking that is there an tool I could see step by step all the
> operations in the DB before the foreigh key error is raised. So I could
> step by step see the order the trickers and so fires and what they do.
> 
> Or if someone at Firebird project could check if it is indeed the Firebird
> bug. I think we could send the DB, if it he/she keeps it safe and keeps it
> secret :) 

If you re-create the FK constraint - which re-creates an index behind the scene 
- solves the problem, then some sort of data/index corruption might be an 
explanation.


Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Usage of COLLATION specific attribute 'DISABLE-EXPANSIONS'

2016-08-31 Thread Thomas Steinmaurer
Hello Adriano,

> Adriano,
>
>> On 21/07/2016 05:42, Thomas Steinmaurer wrote:
>>> Any further ideas?
>>>
>>>
>> What the DE_DE collation expands, and you don't need to add parameter,
>> are these chars:
>>
>> static const ExpandChar ExpansionTbl[NUM_EXPAND_CHARS + 1] = {
>> {230, 97, 101},/* æ -> ae */
>> {198, 65, 69},/* Æ -> AE */
>> {223, 115, 115},/* ß -> ss */
>> {254, 116, 104},/* þ -> th */
>> {222, 84, 72},/* Þ -> TH */
>> {0, 0, 0}/* END OF TABLE */
>> };
>>
>> Looks like the one you want is not there.
>
> Thanks! Two more questions ...
>
> * Is the list above based on some standard/norm or is this Firebird
> specific?
>
> * I guess the single source of truth regarding expansions per collation
> is located in the Firebird source. ;-) Can you please point me where to
> find that?

Any further ideas?


Thanks,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2016-08-31 Thread Thomas Steinmaurer
> 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 for's with would
>> benefit from "auto".
>>
>> It seems we already had some discussion of usage of some of these
>> features, but builds are not adjusted.
>>
>> The obsolete language standard we're using is so boring and so outdated.
>> We need to move on.
>
> Basically, I agree. IIRC, a showstopper is MSVC10 support which I'd
> prefer to keep for a while. But if others don't consider it really
> important, I'm not going to stop the progress ;-)

Do we know that the new language features are stable enough?

I know, you are talking about C++ ... but e.g. we had serious troubles 
with new fency language stuff in JDK8 like lambdas, streams (under high 
concurrency) with the JIT compiler etc., thus new is not always better 
(especially under load) although more convenient for the developer.


Thomas



--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Usage of COLLATION specific attribute 'DISABLE-EXPANSIONS'

2016-07-21 Thread Thomas Steinmaurer
Adriano,

> On 21/07/2016 05:42, Thomas Steinmaurer wrote:
>> Any further ideas?
>>
>>
> What the DE_DE collation expands, and you don't need to add parameter,
> are these chars:
>
> static const ExpandChar ExpansionTbl[NUM_EXPAND_CHARS + 1] = {
> {230, 97, 101},/* æ -> ae */
> {198, 65, 69},/* Æ -> AE */
> {223, 115, 115},/* ß -> ss */
> {254, 116, 104},/* þ -> th */
> {222, 84, 72},/* Þ -> TH */
> {0, 0, 0}/* END OF TABLE */
> };
>
> Looks like the one you want is not there.

Thanks! Two more questions ...

* Is the list above based on some standard/norm or is this Firebird 
specific?

* I guess the single source of truth regarding expansions per collation 
is located in the Firebird source. ;-) Can you please point me where to 
find that?


Thanks,
Thomas

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Usage of COLLATION specific attribute 'DISABLE-EXPANSIONS'

2016-07-21 Thread Thomas Steinmaurer
On 20.07.2016 13:19, Thomas Steinmaurer wrote:
> Hello Adriano,
>
>> On 20/07/2016 04:35, Thomas Steinmaurer wrote:
>>> Hello,
>>>
>>> I need to sort umlauts in its expanded expression (ae, oe, ue), thus I 
>>> thought
>>> to define my own collation based on DE_DE, but this does not seem to work.
>>> Perhaps it is not supported anyway that way.
>>>
>>> Test case:
>>>
>>> create collation de_de_expansion for iso8859_1 from de_de
>>> 'DISABLE-EXPANSIONS=0';
>>>
>>>
>> This is the default, if you want to change, use =1
>
> Doesn't change anything.
>
> Wouldn't it setting to 1 implies that expansion is turned off? At least from 
> the name of the attribute.

Any further ideas?

Thanks,
Thomas

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Usage of COLLATION specific attribute 'DISABLE-EXPANSIONS'

2016-07-20 Thread Thomas Steinmaurer
Hello Adriano,

> On 20/07/2016 04:35, Thomas Steinmaurer wrote:
>> Hello,
>>
>> I need to sort umlauts in its expanded expression (ae, oe, ue), thus I 
>> thought
>> to define my own collation based on DE_DE, but this does not seem to work.
>> Perhaps it is not supported anyway that way.
>>
>> Test case:
>>
>> create collation de_de_expansion for iso8859_1 from de_de
>> 'DISABLE-EXPANSIONS=0';
>>
>>
> This is the default, if you want to change, use =1

Doesn't change anything.

Wouldn't it setting to 1 implies that expansion is turned off? At least from 
the name of the attribute.

Thanks,
Thomas

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Usage of COLLATION specific attribute 'DISABLE-EXPANSIONS'

2016-07-20 Thread Thomas Steinmaurer
Hello,

I need to sort umlauts in its expanded expression (ae, oe, ue), thus I thought 
to define my own collation based on DE_DE, but this does not seem to work. 
Perhaps it is not supported anyway that way.

Test case:

create collation de_de_expansion for iso8859_1 from de_de 
'DISABLE-EXPANSIONS=0';

CREATE TABLE T1 
(
  VC1_DE_DEVARCHAR(20) NOT NULL COLLATE DE_DE,
  VC2_DE_DE_EXPANSION  VARCHAR(20) NOT NULL COLLATE 
DE_DE_EXPANSION,
 CONSTRAINT PK_T1 PRIMARY KEY (VC1_DE_DE)
);
SET TERM ^^ ;
CREATE TRIGGER T1_DUPLICATE FOR T1 ACTIVE BEFORE INSERT OR UPDATE POSITION 0 AS
begin
  NEW.VC2_DE_DE_EXPANSION = NEW.VC1_DE_DE;
end ^^
SET TERM ; ^^


commit;


/*
  T1
  --
  Exporting all rows
*/
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('a', 'a');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('ä', 'ä');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aa', 'aa');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('ab', 'ab');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('ac', 'ac');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('ad', 'ad');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aea', 'aea');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aeb', 'aeb');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aec', 'aec');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aed', 'aed');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aee', 'aee');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('aef', 'aef');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('af', 'af');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('ag', 'ag');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('b', 'b');
INSERT INTO T1 (VC1_DE_DE, VC2_DE_DE_EXPANSION) VALUES ('z', 'z');
/* 16 row(s) exported */

commit;


If I query:

select VC2_DE_DE_EXPANSION from t1 order by VC2_DE_DE_EXPANSION;


I get 'ä' directly after 'a' instead of before 'aea':

VC2_DE_DE_EXPANSION 

a   
ä   
aa  
ab  
ac  
ad  
aea 
aeb 
aec 
aed 
aee 
aef 
af  
ag  
b   
z   


Am I doing something wrong or is this not supported?

I'm using Firebird 3 but perhaps this also applies to V2.


Thanks,
Thomas

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-22 Thread Thomas Steinmaurer
>> I could simply use the entire snapshot build and sync the moving parts like
>> security database, conf files, UDFs etc. or perhaps I could simply replace a
>> single (executable) file (firebird.exe?) taken from the snapshot ZIP file?
>>
> 
> Not firebird.exe but engine12.dll.

Thanks!

Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-22 Thread Thomas Steinmaurer
>> 21.04.2016 13:35, Thomas Steinmaurer wrote:
>> ...
>>>> As you already found that fbtracemgr is OK, i guess something is not
>>>> fully
>>>> correct (or stepped on some another issue) at FB Trace Manager. Could you
>>>> show
>>>> how do you work with trace service ?
>>>
>>> The usage of the trace services in FBTM hasn't changed for years and worked
>>> up to Beta2. ;-)
>>
>> :)
>>
>> Alex committed patch today, hope it helps. BTW, it is probably easy to
>> work with
>> isc_info_svc_line but it is very inefficient.
> 
> I can confirm that the fix helps with todays snapshot build.

Perhaps another question is regarding deployment to production on top of a 3.0 
final installation (Windows).

I could simply use the entire snapshot build and sync the moving parts like 
security database, conf files, UDFs etc. or perhaps I could simply replace a 
single (executable) file (firebird.exe?) taken from the snapshot ZIP file?

Thanks again,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-22 Thread Thomas Steinmaurer
> 21.04.2016 13:35, Thomas Steinmaurer wrote:
> ...
>>> As you already found that fbtracemgr is OK, i guess something is not 
>>> fully
>>> correct (or stepped on some another issue) at FB Trace Manager. Could you 
>>> show
>>> how do you work with trace service ?
>>
>> The usage of the trace services in FBTM hasn't changed for years and worked 
>> up to Beta2. ;-)
>
> :)
>
> Alex committed patch today, hope it helps. BTW, it is probably easy to 
> work with
> isc_info_svc_line but it is very inefficient.

I can confirm that the fix helps with todays snapshot build.


Thanks,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
> 21.04.2016 13:35, Thomas Steinmaurer wrote:
> ...
>>> As you already found that fbtracemgr is OK, i guess something is not 
>>> fully
>>> correct (or stepped on some another issue) at FB Trace Manager. Could you 
>>> show
>>> how do you work with trace service ?
>>
>> The usage of the trace services in FBTM hasn't changed for years and worked 
>> up to Beta2. ;-)
>
> :)
>
> Alex committed patch today, hope it helps.

Thanks a lot. Saw the commit. Will give it a try, once a new snapshot 
build is available.

A pity that I didn't notice it earlier (RC stage), because unfortunately 
I now have to convince customers to use a snapshot build in case of 
Firebird 3 until 3.0.1 is out.

Switching to isc_info_svc_to_eof doesn't look that easy at first glance 
(see below), although it makes a lot of sense from a throughput perspective.

> BTW, it is probably easy to work with
> isc_info_svc_line but it is very inefficient. Especially in case of Trace 
> Services,
> where we have a lot of data to read. isc_info_svc_to_eof with buffer of 
> maximum
> allowed size should be much better. Just FYI ;)

Yep, thanks. I now remember that my first tries ages ago were 
isc_info_svc_to_eof based, but the trace data parser is a lot easier 
when working with fixed lines instead of buffers of raw data.

IBDAC supports both, reading one line at a time or in chunks, AFAIK with 
a pre-defined size of 32K. I guess I could split the textual (larger) 
chunks into lines by a new line terminator (does that differ in trace 
data when running Firebird on different platforms, e.g. Windows vs. 
Linux?), but then the big question is how far the last line in the chunk 
goes. Is it again a complete line or may it cut-off somewhere arbitrary 
between a line of trace data, thus I have to temporary keep that in 
memory and follow-up at that position when I receive the next chunk?

What is the chunk size in fbtracemgr?

Thanks,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
> On 04/21/2016 12:47 PM, Thomas Steinmaurer wrote:
>> Hi Alex,
>>
>>>>> Hello Vlad,
>>>>>
>>>>>>> 20.04.2016 0:47, Thomas Steinmaurer wrote:
>>>>>>> ...
>>>>>>>> What else could I provide so that you can investigate the offending
>>>>>>>> thread?
>>>>>>>  Full memory dump, please.
>>>>> Have you had time to look at it?
>>>>>
>>>>> Unfortunately this now also has happened in a production environment at
>>>>> a customer site.
>>>>>
>>>>> We did quite some testing in the trace area at Firebird 3 Alpha stage
>>>>> and I can't remember any troubles there (in hope my memory serves me
>>>>> well). So I will move back from Final to Alpha2 in a test environment
>>>>> and see what happens.
>>>> Seems to be something introduced with RC1 or possibly some sort of
>>>> incompatibility with (Delphi) client components using the Trace API?
>>>>
>>>> Beta2 (Firebird-3.0.0.31896-0_Win32_Beta2) seems to be fine and does not
>>>> show
>>>> the symptom of fully utilizing a single core.
>>>>
>>> Looks like I've found a reason. Thomas, are you using isc_info_svc_line
>>> or isc_info_svc_to_eof when reading service output?
>> I'm pretty sure the used third-party Delphi component does, but that's the
>> common way to read service output, right?
> 
> Certainly, but what particular of this two SPB parameters is used?

I don't have the source of IBDAC here at the moment, but I remember calling a 
GetNextLine method of their trace service implementation, thus I guess it is 
isc_info_svc_line.

Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
Hello Vlad,

>>> Have you had time to look at it?
> 
>   Looking now, but seems you already on the way ;)
> 
>>> Unfortunately this now also has happened in a production environment at
>>> a customer site.
>>>
>>> We did quite some testing in the trace area at Firebird 3 Alpha stage
>>> and I can't remember any troubles there (in hope my memory serves me
>>> well). So I will move back from Final to Alpha2 in a test environment
>>> and see what happens.
>>
>> Seems to be something introduced with RC1 or possibly some sort of
>> incompatibility with (Delphi) client components using the Trace API?
>>
>> Beta2 (Firebird-3.0.0.31896-0_Win32_Beta2) seems to be fine and does not show
>> the symptom of fully utilizing a single core.
> 
>   RC1 have this bug fixed: http://tracker.firebirdsql.org/browse/CORE-4897
> probably it is related.
> 
>   As you already found that fbtracemgr is OK, i guess something is not fully
> correct (or stepped on some another issue) at FB Trace Manager. Could you show
> how do you work with trace service ?

The usage of the trace services in FBTM hasn't changed for years and worked up 
to Beta2. ;-)

I don't have the source code available here at the moment. I can come back with 
an example in the evening.

Thanks,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
Hi Alex,

>>> Hello Vlad,
>>>
>>>>> 20.04.2016 0:47, Thomas Steinmaurer wrote:
>>>>> ...
>>>>>> What else could I provide so that you can investigate the offending
>>>>>> thread?
>>>>> Full memory dump, please.
>>> Have you had time to look at it?
>>>
>>> Unfortunately this now also has happened in a production environment at
>>> a customer site.
>>>
>>> We did quite some testing in the trace area at Firebird 3 Alpha stage
>>> and I can't remember any troubles there (in hope my memory serves me
>>> well). So I will move back from Final to Alpha2 in a test environment
>>> and see what happens.
>> Seems to be something introduced with RC1 or possibly some sort of
>> incompatibility with (Delphi) client components using the Trace API?
>>
>> Beta2 (Firebird-3.0.0.31896-0_Win32_Beta2) seems to be fine and does not show
>> the symptom of fully utilizing a single core.
>>
> 
> Looks like I've found a reason. Thomas, are you using isc_info_svc_line 
> or isc_info_svc_to_eof when reading service output?

I'm pretty sure the used third-party Delphi component does, but that's the 
common way to read service output, right?


Thanks,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
Hi again,

> Hello Vlad,
> 
>>> 20.04.2016 0:47, Thomas Steinmaurer wrote:
>>> ...
>>>> What else could I provide so that you can investigate the offending
>>>> thread?
>>>
>>>Full memory dump, please.
> 
> Have you had time to look at it?
> 
> Unfortunately this now also has happened in a production environment at 
> a customer site.
> 
> We did quite some testing in the trace area at Firebird 3 Alpha stage 
> and I can't remember any troubles there (in hope my memory serves me 
> well). So I will move back from Final to Alpha2 in a test environment 
> and see what happens.

Seems to be something introduced with RC1 or possibly some sort of 
incompatibility with (Delphi) client components using the Trace API?

Beta2 (Firebird-3.0.0.31896-0_Win32_Beta2) seems to be fine and does not show 
the symptom of fully utilizing a single core.

Hope this helps.

Thanks,
Thomas




> Thanks,
> Thomas
> 
>> I'm not that familiar with WinDbg and played around with it.
>>
>> The stack trace of the high CPU thread is, I think:
>>
>>   # ChildEBP RetAddr  Args to Child
>> 00 0114ed24 0f5de49d 0114ed48 5a7b97e1 017a3b20 msvcr100!_time64+0x17
>> [f:\dd\vctools\crt_bld\self_x86\crt\src\time64.c @ 62]
>> 01 0114ed84 0f5e20fa 01760023 03ff78fc 0001
>> engine12!Jrd::Service::get+0x14d
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
>> 02 0114f1a8 0f55ca5e 0114f26c  
>> engine12!Jrd::Service::query2+0xbaa
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 1400]
>> 03 0114f320 0f55ee72 0114f354  
>> engine12!Jrd::JService::query+0x10e
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\jrd.cpp @ 3879]
>> 04 0114f37c 625403e2 007de854 0114f40c 
>> engine12!Firebird::IServiceBaseImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit
>> > > > >::cloopqueryDispatcher+0x82
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>> @ 8901]
>> 05 0114f3d4 625406a2 0114f408  
>> fbclient!Why::YService::query+0x82
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\yvalve\why.cpp @ 5564]
>> 06 0114f430 00410e5c 003839cc 0114f4b0 
>> fbclient!Firebird::IServiceBaseImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit
>> > > > >::cloopqueryDispatcher+0x82
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>> @ 8901]
>> 07 0114f45c 0041d310 0114f4ac  
>> firebird!Firebird::IService::query+0x4c
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>> @ 1986]
>> 08 0114fd9c 004253dc 0054 01768dd0 017688ac firebird!rem_port::info+0x5b0
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @
>> 3853]
>> 09 0114fe74 00425aba 017688ac 0114fed8 55c7dac0 firebird!process_packet+0x33c
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @
>> 4343]
>> 0a 0114fef0 0043773b 0008 55c7db30 6318c724 firebird!loopThread+0x18a
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @
>> 5817]
>> 0b 0114ff3c 6318c6de 003a1d00 36916949 6318c724 firebird!threadStart+0x5b
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\common\threadstart.cpp @ 94]
>> 0c 0114ff74 6318c788 6318c724 0114ff94 76257c04
>> msvcr100!_callthreadstartex+0x1b
>> [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 314]
>> 0d 0114ff80 76257c04 007e0fd0 76257be0 23baef21 msvcr100!_threadstartex+0x64
>> [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 292]
>> 0e 0114ff94 77d4ad1f 007e0fd0 2251dbd4 
>> kernel32!BaseThreadInitThunk+0x24
>> 0f 0114ffdc 77d4acea  77d30214 
>> ntdll!__RtlUserThreadStart+0x2f
>> 10 0114ffec  6318c724 007e0fd0  
>> ntdll!_RtlUserThreadStart+0x1b
>>
>>
>> With the following detailed data for the second line (01) from the stack
>> trace.
>>
>> 01 0114ed84 0f5e20fa engine12!Jrd::Service::get+0x14d
>> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
>> @ecx  class Jrd::Service * this = 0x01d19acd
>> 0114ed8c  unsigned char * b

Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-21 Thread Thomas Steinmaurer
Hello Vlad,

>> 20.04.2016 0:47, Thomas Steinmaurer wrote:
>> ...
>>> What else could I provide so that you can investigate the offending
>>> thread?
>>
>>Full memory dump, please.

Have you had time to look at it?

Unfortunately this now also has happened in a production environment at 
a customer site.

We did quite some testing in the trace area at Firebird 3 Alpha stage 
and I can't remember any troubles there (in hope my memory serves me 
well). So I will move back from Final to Alpha2 in a test environment 
and see what happens.

Thanks,
Thomas

> I'm not that familiar with WinDbg and played around with it.
>
> The stack trace of the high CPU thread is, I think:
>
>   # ChildEBP RetAddr  Args to Child
> 00 0114ed24 0f5de49d 0114ed48 5a7b97e1 017a3b20 msvcr100!_time64+0x17 
> [f:\dd\vctools\crt_bld\self_x86\crt\src\time64.c @ 62]
> 01 0114ed84 0f5e20fa 01760023 03ff78fc 0001 
> engine12!Jrd::Service::get+0x14d 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
> 02 0114f1a8 0f55ca5e 0114f26c   
> engine12!Jrd::Service::query2+0xbaa 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 1400]
> 03 0114f320 0f55ee72 0114f354   
> engine12!Jrd::JService::query+0x10e 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\jrd.cpp @ 3879]
> 04 0114f37c 625403e2 007de854 0114f40c  
> engine12!Firebird::IServiceBaseImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit
>  > > > >::cloopqueryDispatcher+0x82 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>  @ 8901]
> 05 0114f3d4 625406a2 0114f408   
> fbclient!Why::YService::query+0x82 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\yvalve\why.cpp @ 5564]
> 06 0114f430 00410e5c 003839cc 0114f4b0  
> fbclient!Firebird::IServiceBaseImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit
>  > > > >::cloopqueryDispatcher+0x82 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>  @ 8901]
> 07 0114f45c 0041d310 0114f4ac   
> firebird!Firebird::IService::query+0x4c 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
>  @ 1986]
> 08 0114fd9c 004253dc 0054 01768dd0 017688ac firebird!rem_port::info+0x5b0 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 
> 3853]
> 09 0114fe74 00425aba 017688ac 0114fed8 55c7dac0 firebird!process_packet+0x33c 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 
> 4343]
> 0a 0114fef0 0043773b 0008 55c7db30 6318c724 firebird!loopThread+0x18a 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 
> 5817]
> 0b 0114ff3c 6318c6de 003a1d00 36916949 6318c724 firebird!threadStart+0x5b 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\common\threadstart.cpp @ 94]
> 0c 0114ff74 6318c788 6318c724 0114ff94 76257c04 
> msvcr100!_callthreadstartex+0x1b 
> [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 314]
> 0d 0114ff80 76257c04 007e0fd0 76257be0 23baef21 msvcr100!_threadstartex+0x64 
> [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 292]
> 0e 0114ff94 77d4ad1f 007e0fd0 2251dbd4  
> kernel32!BaseThreadInitThunk+0x24
> 0f 0114ffdc 77d4acea  77d30214  
> ntdll!__RtlUserThreadStart+0x2f
> 10 0114ffec  6318c724 007e0fd0  ntdll!_RtlUserThreadStart+0x1b
>
>
> With the following detailed data for the second line (01) from the stack 
> trace.
>
> 01 0114ed84 0f5e20fa engine12!Jrd::Service::get+0x14d 
> [c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
> @ecx  class Jrd::Service * this = 0x01d19acd
> 0114ed8c  unsigned char * buffer = 0x01760023 "select a.*, 
> cast(cast(a.mon$memory_used as double precision) / 1024 as numeric (18,2)) as 
> memory_used_kb, cast(cast(a.mon$memory_used as double precision) / (1024 * 
> 1024) as numeric (18,2)) as memory_used_mb, cast(cast(a.mon$memory_allocated 
> as double precision) / 1024 as numeric (18,2)) as memory_allocated_kb, 
> cast(cast(a.mon$memory_allocated as double precision) / (1024 * 1024) as 
> numeric (18,2)) as memory_allocated_mb, cast(cast(a.mon$max_memory_used as 
> double precision) / 1024 as numeric (18,2)) as max_memory_used_kb, 
> cast(cast(a.mon$m

Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-20 Thread Thomas Steinmaurer
Vlad,

> 20.04.2016 0:47, Thomas Steinmaurer wrote:
> ...
>> What else could I provide so that you can investigate the offending
>> thread?
> 
>   Full memory dump, please.

I'm not that familiar with WinDbg and played around with it.

The stack trace of the high CPU thread is, I think:

 # ChildEBP RetAddr  Args to Child  
00 0114ed24 0f5de49d 0114ed48 5a7b97e1 017a3b20 msvcr100!_time64+0x17 
[f:\dd\vctools\crt_bld\self_x86\crt\src\time64.c @ 62]
01 0114ed84 0f5e20fa 01760023 03ff78fc 0001 
engine12!Jrd::Service::get+0x14d 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
02 0114f1a8 0f55ca5e 0114f26c   
engine12!Jrd::Service::query2+0xbaa 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 1400]
03 0114f320 0f55ee72 0114f354   
engine12!Jrd::JService::query+0x10e 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\jrd.cpp @ 3879]
04 0114f37c 625403e2 007de854 0114f40c  
engine12!Firebird::IServiceBaseImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Jrd::JService,Firebird::CheckStatusWrapper,Firebird::Inherit
 > > > >::cloopqueryDispatcher+0x82 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
 @ 8901]
05 0114f3d4 625406a2 0114f408   
fbclient!Why::YService::query+0x82 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\yvalve\why.cpp @ 5564]
06 0114f430 00410e5c 003839cc 0114f4b0  
fbclient!Firebird::IServiceBaseImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::IReferenceCountedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit<Firebird::IVersionedImpl<Why::YService,Firebird::CheckStatusWrapper,Firebird::Inherit
 > > > >::cloopqueryDispatcher+0x82 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
 @ 8901]
07 0114f45c 0041d310 0114f4ac   
firebird!Firebird::IService::query+0x4c 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\include\firebird\idlfbinterfaces.h
 @ 1986]
08 0114fd9c 004253dc 0054 01768dd0 017688ac firebird!rem_port::info+0x5b0 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 3853]
09 0114fe74 00425aba 017688ac 0114fed8 55c7dac0 firebird!process_packet+0x33c 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 4343]
0a 0114fef0 0043773b 0008 55c7db30 6318c724 firebird!loopThread+0x18a 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\remote\server\server.cpp @ 5817]
0b 0114ff3c 6318c6de 003a1d00 36916949 6318c724 firebird!threadStart+0x5b 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\common\threadstart.cpp @ 94]
0c 0114ff74 6318c788 6318c724 0114ff94 76257c04 
msvcr100!_callthreadstartex+0x1b 
[f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 314]
0d 0114ff80 76257c04 007e0fd0 76257be0 23baef21 msvcr100!_threadstartex+0x64 
[f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 292]
0e 0114ff94 77d4ad1f 007e0fd0 2251dbd4  
kernel32!BaseThreadInitThunk+0x24
0f 0114ffdc 77d4acea  77d30214  ntdll!__RtlUserThreadStart+0x2f
10 0114ffec  6318c724 007e0fd0  ntdll!_RtlUserThreadStart+0x1b


With the following detailed data for the second line (01) from the stack trace.

01 0114ed84 0f5e20fa engine12!Jrd::Service::get+0x14d 
[c:\fb30\b3_0_release\prod_r3_0_0\firebird3\src\jrd\svc.cpp @ 2303]
@ecx  class Jrd::Service * this = 0x01d19acd
0114ed8c  unsigned char * buffer = 0x01760023 "select a.*, 
cast(cast(a.mon$memory_used as double precision) / 1024 as numeric (18,2)) as 
memory_used_kb, cast(cast(a.mon$memory_used as double precision) / (1024 * 
1024) as numeric (18,2)) as memory_used_mb, cast(cast(a.mon$memory_allocated as 
double precision) / 1024 as numeric (18,2)) as memory_allocated_kb, 
cast(cast(a.mon$memory_allocated as double precision) / (1024 * 1024) as 
numeric (18,2)) as memory_allocated_mb, cast(cast(a.mon$max_memory_used as 
double precision) / 1024 as numeric (18,2)) as max_memory_used_kb, 
cast(cast(a.mon$max_memory_used as double precision) / (1024 * 1024) as numeric 
(18,2)) as max_memory_used_mb, cast(cast(a.mon$max_memory_allocated as double 
precision) / 1024 as numeric (18,2)) as max_memory_allocated_kb, 
cast(cast(a.mon$max_memory_allocated as double precision) / (1024 * 1024) as 
numeric (18,2)) as max_memory_allocated_mb from mon$memory_usage a where not 
a.mon$stat_id in ( select mon$stat_id 
 from mon$attachments where mon$attachment_id = current_connection union all 
sele"
0114ed90  unsigned short length = 0x78fc
0114ed94  unsigned short flags = 1
0114ed98  unsigned short timeout = 0
0114ed9c  unsigned short * return_length = 0x0114ee01
0114ed48  int64 end_time = 0n1461133670
0114ed9c

Re: [Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-20 Thread Thomas Steinmaurer
Hello Vlad,

> 20.04.2016 0:47, Thomas Steinmaurer wrote:
> ...
>> What else could I provide so that you can investigate the offending
>> thread?
> 
>   Full memory dump, please.

I have been using sysinternals procdump for that with:

procdump -ma 

Is this what you are looking for?

It is available here:
http://www.iblogmanager.com/download/misc/firebird.exe_160420_082750.dmp.7z

Although in my initial email I said I was using SuperServer, the dump is when 
using Classic. The issue happens with both architectures.

Thanks for your time!

Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 3 - Single CPU core fully utilized with Trace session

2016-04-19 Thread Thomas Steinmaurer
Hello,

first of all, congratulations to Firebird 3.

I'm basically seeking for assistance pin-pointing an issue here with 
Firebird 3 SuperServer 32-bit on Windows 10 Prof., as it seems, in the 
context of the Trace API. This all is not an issue with Firebird 2.5.

Unfortunately, it is only reproducible in FB TraceManager at the moment. 
I haven't been able to reproduce it with e.g. a mix of isql and 
fbtracemgr.exe for example.

When starting a trace session with e.g. the following configuration:

database = employee
{
   enabled = true
   log_statement_prepare = true
   log_statement_free = true
   log_statement_finish = true
   log_procedure_finish = true
   log_trigger_finish = true
   print_plan = true
   print_perf = true
   log_function_finish = true
   exclude_filter = %RDB$%
   time_threshold = 0
   max_sql_length = 2048
}
services
{
}

and triggering a few monitoring table queries behind the scene in a 
particular area of our product, a single thread in firebird.exe starts 
to fully utilize a single CPU core. When I start the trace session with 
an additional exclude_filter part %MON$%, the problem disappears.

I guess not very helpful, but this is the stack trace of the high CPU 
offending thread in firebird.exe according to SysInternals process explorer.

ntoskrnl.exe!KeSynchronizeExecution+0x3de6
ntoskrnl.exe!KeWaitForMultipleObjects+0x1320
ntoskrnl.exe!KeWaitForMultipleObjects+0xd38
ntoskrnl.exe!KeWaitForSingleObject+0x385
ntoskrnl.exe!KeTestAlertThread+0x1103
ntoskrnl.exe!KeSetCoalescableTimer+0x800
ntoskrnl.exe!KeSynchronizeExecution+0x2543
Engine12.DLL!firebird_plugin+0x6f7c5
Engine12.DLL!firebird_plugin+0xf9133


I'm afraid, not very helpful. :-(

What else could I provide so that you can investigate the offending 
thread? I'm better in diagnosing JVM stuff than native.

I'm aware, this all is vague and I would prefer a simple isql based test 
case as well, but I failed so far.


Thanks,
Thomas

--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2016-04-05 Thread Thomas Steinmaurer
> 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 further and wipe out the named pipes (aka WNET) protocol
> too. I don't see any sense in it nowadays.

+1

Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3 - Embedded deployment - Secure database login

2015-10-20 Thread Thomas Steinmaurer
Hello Dmitry,

> 20.10.2015 00:18, Thomas Steinmaurer wrote:
>>
>> with Firebird 3, what are the capabilities to disallow unwanted users to
>> open my database?
>>
>> I thought perhaps preparing a database pointing to itself as security
>> database might be an option (MON$DATABASE.MON$SEC_DATABASE=Self), but
>> this database then still can be opened by an embedded connection without
>> troubles.
> 
> Embedded connections do not authenticate users, this is by design.

I know for pre V3, but I thought this might have changed in case of users 
embedded in the database, so when the database itself is also acting as 
security database.

The 
> only protection for distributed databases is a database encryption.

Ok. Any plans that V3 final comes with an encrypt plugin implementation 
out-of-the box, which can be used for production?


Thanks a lot.

Thomas


--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 2.5.4 - Trace API - CREATE TRIGGER not captured including RDB$GET_CONTEXT

2015-10-20 Thread Thomas Steinmaurer
Alexander,

>> Hello,
>>
>> I'm using Firebird 2.5.4 x86 on Windows 7.
>>
>> A simple table:
>>
>> CREATE TABLE T1
>> (
>> ID INTEGER NOT NULL,
>> CONSTRAINT PK_T1 PRIMARY KEY (ID)
>> );
>>
>>
>> The following trace configuration:
>>
>> 
>>  enabled true
>>  log_connections true
>>  log_transactions true
>>  log_statement_finish true
>>  print_plan true
>>  print_perf true
>>  exclude_filter %RDB$%
>>  time_threshold 0
>>  max_sql_length 2048
>> 
>> 
>> 
>>
>> Starting a trace session with the above configuration via
>> fbtracemgr.exe, e.g.:
>>
>> fbtracemgr.exe -se localhost/3050:service_mgr -start -name tourism_cmd
>> -config tourism_trace.conf -user tourism -password tourism
>>
>> When I run the following CREATE TRIGGER DDL statement:
>>
>> CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
>> BEGIN
>> -- EXECUTE PROCEDURE P_1 (RDB$GET_CONTEXT('SYSTEM', 'ISOLATION_LEVEL'));
>> END;
>>
>>
>> The statement isn't captured from the trace session.
>>
>> If I remove the RDB$GET_CONTEXT part, e.g.:
>>
>> CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
>> BEGIN
>> -- EXECUTE PROCEDURE P_1 ();
>> END;
>>
>> or remove the commented line entirely:
>>
>> CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
>> BEGIN
>> END;
>>
>>
>> Then both cases are captured from the trace session.
>>
>> Doesn't look right to me. Is this a known issue?
>
> Just to make sure - does removing line
>  exclude_filter %RDB$%
> from trace configuration also make statement be captured?

Excellent catch Alexander!

Now it gets captured. The intention of the exclude filter was to reduce 
the noise due to system table queries by third-party components, 
development tools etc ...

Thanks,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 3 - Embedded deployment - Secure database login

2015-10-19 Thread Thomas Steinmaurer
Hello,

with Firebird 3, what are the capabilities to disallow unwanted users to 
open my database?

I thought perhaps preparing a database pointing to itself as security 
database might be an option (MON$DATABASE.MON$SEC_DATABASE=Self), but 
this database then still can be opened by an embedded connection without 
troubles.


Thanks,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 2.5.4 - Trace API - CREATE TRIGGER not captured including RDB$GET_CONTEXT

2015-10-19 Thread Thomas Steinmaurer
Hello,

I'm using Firebird 2.5.4 x86 on Windows 7.

A simple table:

CREATE TABLE T1
(
ID INTEGER NOT NULL,
CONSTRAINT PK_T1 PRIMARY KEY (ID)
);


The following trace configuration:


   enabled true
   log_connections true
   log_transactions true
   log_statement_finish true
   print_plan true
   print_perf true
   exclude_filter %RDB$%
   time_threshold 0
   max_sql_length 2048




Starting a trace session with the above configuration via 
fbtracemgr.exe, e.g.:

fbtracemgr.exe -se localhost/3050:service_mgr -start -name tourism_cmd 
-config tourism_trace.conf -user tourism -password tourism

When I run the following CREATE TRIGGER DDL statement:

CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
BEGIN
-- EXECUTE PROCEDURE P_1 (RDB$GET_CONTEXT('SYSTEM', 'ISOLATION_LEVEL'));
END;


The statement isn't captured from the trace session.

If I remove the RDB$GET_CONTEXT part, e.g.:

CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
BEGIN
-- EXECUTE PROCEDURE P_1 ();
END;

or remove the commented line entirely:

CREATE TRIGGER TRI_T1 FOR T1 BEFORE DELETE position 32767 AS
BEGIN
END;


Then both cases are captured from the trace session.

Doesn't look right to me. Is this a known issue?

Thanks,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 3 - Trace API - Single CPU core fully occupied when stopping trace session

2015-10-16 Thread Thomas Steinmaurer
Hello,

I'm using a Firebird 3 x86 Windows snapshot (SuperServer) from October 
15, 2015 using Pavel's OLTP emulator to put load on Firebird, the trace 
functionality and our FB TraceManager.

I'm using the following trace configuration:

database = oltpemul.fdb
{
   enabled = true
   log_statement_prepare = true
   log_statement_free = true
   log_statement_finish = true
   log_procedure_finish = true
   log_trigger_finish = true
   print_plan = true
   print_perf = true
   log_function_finish = true
   exclude_filter = %RDB$%
   time_threshold = 0
   max_sql_length = 2048
}
services
{
}


While the trace session is running everything looks ok, but when I'm 
trying to stop the trace session (doesn't matter while the OLTP test is 
still running or not) via a regular Services API call within FBTM, FBTM 
locks up and a single thread in the firebird.exe process occupies a 
single CPU core entirely.

The stack trace (not really helpful perhaps) of the offending thread 
copied from ProcessExplorer is:

ntoskrnl.exe!KeWaitForMultipleObjects+0xc0a
ntoskrnl.exe!ExfReleasePushLockShared+0x91e
ntoskrnl.exe!KeWaitForSingleObject+0x19f
ntoskrnl.exe!PoStartNextPowerIrp+0xba0
ntoskrnl.exe!PoStartNextPowerIrp+0x1821
ntoskrnl.exe!PoStartNextPowerIrp+0x1a97
MSVCR100.dll!_time64+0x30
firebird.exe+0x797f8
MSVCR100.dll!_time64+0x30
Engine12.DLL!firebird_plugin+0x6f25d
firebird.exe+0x58d37
firebird.exe+0x5f011
firebird.exe+0x55fbb
firebird.exe+0x16390
firebird.exe+0x163ef
ntdll.dll!RtlAnsiCharToUnicodeChar+0xdf


Only a restart of fbserver.exe helps.


Running the same test scenario with Firebird 2.5.4 does not show the 
same issue.


If you need any further information, please let me know.


Regards,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] The Power of C++11 in CUDA 7

2015-03-22 Thread Thomas Steinmaurer
Vlad,

 I can't exactly recall concrete numbers from the past, but I wonder if
 Firebird can currently go beyond  10MB/s disk I/O utilization. And this
 is not about being limited by spinning disk and seek time (random I/O).

 You'll be wonder if reevaluate concrete numbers...

Firebird 3 or even 2.5?


Thanks,
Thomas

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] The Power of C++11 in CUDA 7

2015-03-22 Thread Thomas Steinmaurer
 On Saturday, March 21, 2015, Thomas Steinmaurer t...@iblogmanager.com
 mailto:t...@iblogmanager.com wrote:

  

 IMHO 99% of the Firebird customer-base isn't in the distributed system
 business, thus state-of-the art scale up (instead of scale out)
 capabilities on a single server will be excellent.


 Scale up is a very bad strategy for any number of reasons.  First,
 the only way to increase capacity is to shut down the system and
 replace the hardware with something faster.  Second, there is no
 economy of scale to speed:  To get a machine that is 20% faster you
 can expect to pay twice as much.  Third, with only one processor,
 the entire system is down when that processor is down.


 An elastic scale out solution lets you add capacity by adding cheap
 commodity processors.  If designed inteligently, it can offer 100%
 up time with complete redundancy and rolling upgrades.  It can be
 geographically disperse.  And, utilizing commodity hardware, it can
 be hosted in a cloud, multiple clouds, public clouds, private
 clouds, or any combination of the above.

I know. Ideally such systems like NuoDB, Cassandra etc. will provide 
linear scalability by scaling out with commodity hardware. Lovely.

 Scale up is just dumb.

Absolutely, if you design a new system for large scale in mind, but not 
for a legacy system like Firebird. From a Firebird perspective, taking 
the existing small/mid-sized customer base into account (do they really 
want to run a distributed database just because Firebird can't better 
(fully) utilize single server resources?), Firebird's 
lightweight/low-footprint capabilities, lack of human resources in the 
Firebird project etc., short/mid-term or even long-term the only viable 
route is to fully utilize a single server.

I can't exactly recall concrete numbers from the past, but I wonder if 
Firebird can currently go beyond  10MB/s disk I/O utilization. And this 
is not about being limited by spinning disk and seek time (random I/O).

 The only reason to even consider it is if
 you can't think of anything better.


Regards,
Thomas

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] The Power of C++11 in CUDA 7

2015-03-22 Thread Thomas Steinmaurer
 I can't exactly recall concrete numbers from the past, but I wonder if
 Firebird can currently go beyond  10MB/s disk I/O utilization. And this
 is not about being limited by spinning disk and seek time (random I/O).

   You'll be wonder if reevaluate concrete numbers...

 Firebird 3 or even 2.5?

 Even 1.5 ;)

I'm confused. ;-)

With FB 2.5.2 SC 64-bit on Windows 7 Prof.

While copying a 18GB database from folder A to B on the same spinning 
physical disk at ~33MB/s read + ~33MB/s write, thus 66MB/s total, doing 
a select count(*) on that database (8K page size) for a table with ~6Mio 
records at a physical disk read rate (according to perfmon) of only 
~7,8MB/s.

The system has been freshly rebooted, thus the database is not in the 
file system cache nor in the FB connection page cache.

A very naive test, but as I would expect a COUNT(*) with cold caches to 
be purely I/O bound, with max. ~7,8MB/s we are far away from nearly 
fully utilizing disk I/O.


Regards,
Thomas


--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] NoSQL, Transactions, and Minor Flames

2015-02-20 Thread Thomas Steinmaurer
 On Thursday, February 19, 2015, Thomas Steinmaurer t...@iblogmanager.com
 mailto:t...@iblogmanager.com wrote:

 Jim,

  
 
 http://www.cio.co.uk/insight/data-management/jim-starkeys-nosql-low-down-it-wont-solve-big-data-3598479/

 What do you think about tunable consistency instead of eventual
 consistency?

 
 http://www.datastax.com/documentation/cassandra/2.0/cassandra/dml/dml_config_consistency_c.html


 I stand by my statement that any adjective used to modify consistency
 ie equivalent to not.

 The Cassandra page seriously confuses the concepts of consistency and
 durability.  How can you have any form of consistency without
 durability?

Are you using the durability term strictly in the area of transactions 
or in a sense that a successful write survives a system crash?

If later, Cassandra has durable writes by first persisting a write 
operation into a commit log on disk before acknowledging a write 
operation as successful to the client.


 It's completely legitimate to have settable durability
 (NuoDB has more options than you can shake a stick at), but at the end
 of the day, a transaction is either committed or it must appear that it
 never existed.

 For me, consistency is dirt simple: A transaction sees a stable view of
 the database but can't update a version of a record it could not see as
 well as enforcement of any declared consistency constraints.  A
 corollary is that any and all reduced consistency modes are for the
 birds and exist solely because record locking database systems cannot
 perform without them.

 I invented MVCC to bring transactions to the masses; to make
 transactions easier to use than not.  All of the other crap are bandaids
 on systems that essentially don't work.

 I learned at DEC that most options are the product of bad design where
 the designer didn't have a right answer so gave the users a choice
 between two bad answers.  Bah!

Why has NuoDB more durability options than you can shake a stick at it 
then? ;-)

Na, seriously, thanks for your insights.

Regards,
Thomas

--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=190641631iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] NoSQL, Transactions, and Minor Flames

2015-02-20 Thread Thomas Steinmaurer
 Are you using the durability term strictly in the area of transactions
 or in a sense that a successful write survives a system crash?

 Durability has all sorts of interesting characteristics.  In general, it 
 means that after something bad, committed transactions persist.  The 
 questions are around how bad bad is.

 At the minimum, durability requires that writes be written to persistent 
 storage.  A more rigorous approach requires that a write be safe from any 
 single point of failure.  Note that simply forcing writes to disk, even with 
 a non-buffered log, provides no immunity from a disk crash.  That plus RAID, 
 probably, depending on whether the RAID implementation can be persuaded to 
 write a block on at least two devices before reporting success.

 Another approach is to ensure that writes are transmitted two multiple 
 systems.  This opens more options.  Does it require confirmation of receipt?

Interesting question. I would say it depends on tunable (I'm sorry 
*g*) consistency for writes in a distributed system. I must admit, I'm 
in a Cassandra business for more than 2 years now, but interesting to 
here thoughts on that in general. ;-)

Imagine a replication factor (RF) of 3, which basically means, each 
row/replica lives on 3 physical/regional separated nodes.

A write request from a client perspective at a consistency level of e.g. 
ONE will succeed if a single node acknowledge a successful write, where 
successful means writing the data change at least into a commit log 
persisted on disk. A consistency level of ALL would mean all 
nodes/replicas have to acknowledge success from a client perspective. 
And there is QUORUM requests defined as:

(RF / 2 + 1)

in our example = 2, thus 2 nodes need to respond.

While = RF nodes need to respond for a successful write from a client 
perspective depending on the chosen consistency level, a write is 
asynchronously forwarded to all replicas/nodes not from the client, but 
from the coordinator for that single request.

 Is each recipient itself required to write the data to persistent storage?

 From a client perspective, it depends on the requested consistency level.

 Or if the distributed system has a mechanism to recover and flood all systems 
 with messages sent from a crashed system, does that count?

 From the write example above, an alive node may store/record missed 
replica transmissions to other nodes for a finite time period, which 
gets replayed within that time period if the other node(s) comes alive 
again.


 When you introduce regions (or coteries), things get even more complication.  
 To survive a network partition, a commit has to be broadcast to at least one 
 node in every region/coterie.

Right. Replica placement must be data-center/rack-aware. E.g. in a 
AWS-based cloud deployment with 3 availability zones (AVZ) per region 
and a replication factor of 3, the ideal replica placement would be 1 
per availability zone, to fulfill QUORUM requests even if an entire AVZ 
is down/not-reachable for some reason. The next step would be to 
replicate across several data-centers or in AWS terms, regions, e.g. 
from us-east to eu-west, but network traffic might get pricy and replica 
latency is another topic here.

 NuoDB has basically all of the above (though I'm not sure which are 
 completely documented and shipping).  You can configuration how many storage 
 managers have to receive an update and whether those storage managers have to 
 flush the updates to a log before transmitted the acknowledgement.

 Interbase V1 reported commit after all updates had been written to disk.  As 
 an option, a journal server could be configured, in which case all data would 
 be written twice (on different devices) before a transaction could be 
 considered committed.

 Borland didn't understand the concept of single point of failure when they 
 tried to turn the journal code into a write ahead log and ended up with 
 neither.  This was part of the V5 (?) disaster.


 If later, Cassandra has durable writes by first persisting a write
 operation into a commit log on disk before acknowledging a write
 operation as successful to the client.

 If you want immunity from a single point of failure, this doesn't in general 
 hack it.

 For open source, probably good enough -- I don't know of anyone who does 
 better.  For a commercial system, probably a non-starter.

Right, for a single node environment, but who wants to run a distributed 
environment on a single node?

And even in a distributed environment, there must not be a single-point 
of failure due to an architecture e.g. with some sort of master concept. 
Each node must be equated.

Thanks,
Thomas






 It's completely legitimate to have settable durability
 (NuoDB has more options than you can shake a stick at), but at the end
 of the day, a transaction is either committed or it must appear that it
 never existed.

 For me, consistency is dirt simple: A transaction sees a stable view of
 

Re: [Firebird-devel] NoSQL, Transactions, and Minor Flames

2015-02-19 Thread Thomas Steinmaurer
Jim,

 http://www.cio.co.uk/insight/data-management/jim-starkeys-nosql-low-down-it-wont-solve-big-data-3598479/

What do you think about tunable consistency instead of eventual 
consistency?

http://www.datastax.com/documentation/cassandra/2.0/cassandra/dml/dml_config_consistency_c.html


Thanks,
Thomas

--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=190641631iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Wire compression and zlib on Windows

2014-11-28 Thread Thomas Steinmaurer
 Recently wire compression was implemented by Alex. It uses well known zlib
 library.

Have you guys considered LZ4? https://code.google.com/p/lz4/

It is getting very popular in the big-data / NoSQL area for both, 
compressing data on disk and over-the-wire.

Regards,
Thomas



On Linux zlib could be installed as a standalone package and there
 is no problems with its presence nor for Firebird users, nor for those who
 going to build Firebird. But on Windows i found no common way to install zlib.

 Official site (www.zlib.net) offers for download full source package:

   http://zlib.net/zlib128.zip

 and compiled DLL:

   http://zlib.net/zlib128-dll.zip

 but, unfortunately, they offer just 32-bit DLL.

 So, i have a couple of questions:

 a) should we put whole zlib source package into our extern folder ?

 Note, to build Firebird with WIRE_COMPRESS_SUPPORT we need just header 
 files.

 b) should we supply compiled zlib dll's (both 32 and 64 bit) with Firebird
 installer\zip package ?

 Note, zlib depends in MSVCRXXX.DLL, so it will be good (but not 
 necessary) if
 we supply dll built by the same MSVC version as Firebird.

 c) should we add zlib into our Windows build process ?

 d) what zlib dll should Firebid try to load on Windows:
 - there was zlib.dll before version 1.1.14
 - since v1.1.14 zlib renamed its dll into zlib1.dll
 - zlib package offers also zlibwapi.dll which is built using stdcall 
 calling
   conventions (to please VB and other users who can't work with cdecl)

 Note, native make produced zlib1.dll while contrib sub-folder have VS 
 solution
 which produced zlibwapi.dll.

 I'm confused - so small library have so many questions about its usage...

 Regards,
 Vlad

 PS option, not listed above - link against zlib statically.

 --
 Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
 from Actuate! Instantly Supercharge Your Business Reports and Dashboards
 with Interactivity, Sharing, Native Excel Exports, App Integration  more
 Get technology previously reserved for billion-dollar corporations, FREE
 http://pubads.g.doubleclick.net/gampad/clk?id=157005751iu=/4140/ostg.clktrk
 Firebird-Devel mailing list, web interface at 
 https://lists.sourceforge.net/lists/listinfo/firebird-devel


--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Adding/removing NOT NULL from column in one DDL

2014-11-06 Thread Thomas Steinmaurer
Hi,

 Is there a way to add/remove NOT NULL to a column using single DDL command in
 Firebird (2.5 for the start)? I'm tuning support for Entity Framework
 Migrations in .NET provider and this is one case.

This will be available in Firebird 3.

Regards,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-27 Thread Thomas Steinmaurer
 Obviously it is possible to add support for multiple installs, although it
 does add complexity to the installer and we don't really have a way at the
 moment to deal with uninstallation because we don't have a mechanism in place
 to track what instances of firebird are running on which ports. I recall
 discussing some of this with Dmitry a while back and we started going in
 circles and failed to find an exit point.

 Another issue with multiple installs is that we would need to update the gui
 to maintain the installs. The cpl applet is currently only designed to
 support a single installation. It needs some work to make it compatible with
 v3 and I want to do that between now and Beta2. And I'd like to at least
 evaluate the possibility of it supporting multiple installs, even if not in
 the short term. However, something like that could probably be slipped in
 during RC stage, or in a maintenance release as long as it didn't impact on
 server functionality.

 There is also the fact that we can't easily track Firebird running as an app.
 And neither the task bar icons nor the dialogue indicates anything about the
 port or the architecture the fb app is using. So work would be needed there,
 too.

 Add to that issues such as environment variables and the fact that firebird
 previously had trouble locating itself (its rules meant it sometimes either
 can't find firebird.msg for example, or finds the wrong one.)

 None of this is impossible to fix but it has never bubbled to the top of
 the 'must do' list and as you can see, adding support in the installer is
 only a part of the problem. Thankfully a lot of the work in Fb 3 will make
 multiple and shared installs easier but I suspect that a proper solution must
 wait till v4. (Which doesn't mean to say that progress cannot be made in the
 meantime.)

IMHO the Firebird project should keep it as it is now and in case of 
multiple instances, make a clear case for the ZIP distribution in the 
download area on the website in that case. I'm talking about Windows, 
but installing through the ZIP distribution is easy and gives the full 
flexibility.


Regards,
Thomas


--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-27 Thread Thomas Steinmaurer
Hello,

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


Thanks,
Thomas

--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-27 Thread Thomas Steinmaurer
 When we decided not to validate constraints on declaration, our
 reasoning was that computations and database access were expensive and
 any decent application programmer or DBA would always validate
 constraints before declaring them and control access to the constrained
 items until the constraint was successfully committed.

 That was then.  Now, well, cycles are a lot easier to come by than good
 developers.
 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
 the data complies with the constraint.  I'd also be tempted to add a
 database configuration option that makes validation the default.

+1. Now while constraints are under discussion, if we could put deferred 
constraints into the nice to have pot ... ;-)


Thomas



--
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Prague

2014-10-20 Thread Thomas Steinmaurer
 Ann and I are settled at the hotel in Prague.  Looking forward to seeing
 everyone.

Unfortunately I can't attend, but make sure to spoil the bar and session 
recording works (if there is any). ;-)

Good luck and have fun.

Thomas

--
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.0.31348 - string truncation error

2014-10-03 Thread Thomas Steinmaurer
 RELATION_NAME
 =
 Statement failed, SQLSTATE = 22001
 arithmetic exception, numeric overflow, or string truncation
 -string right truncation
 -expected length 10, actual 21
 SQL
 Seems to be a problem with using the TYPE OF clause for the data type.
 When I replace that with e.g. VARCHAR(50) the string truncation error
 message is gone.

 See http://tracker.firebirdsql.org/browse/CORE-4566
 Working on it

Thanks for letting me know!

Thomas


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-03 Thread Thomas Steinmaurer
 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 indicator) could be affected by this change. Something
 working just fine does not mean it working correctly.

 P.S. This discussion is purely theoretical as compatibility has already
 been restored in the meantime.

Thanks!

We are all spending time to give Firebird 3 a test-drive and simply 
communicate when something weird/unknown happens to get some sort of 
confirmation if end-users (developers) are doing something wrong or if 
there might be a problem in Firebird. Nobody is perfect. ;-)

Thanks again,
Thomas


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-03 Thread Thomas Steinmaurer
Martijn,

 P.S. This discussion is purely theoretical as compatibility has already
 been restored in the meantime.

 I never said a properly written application could be affected, I said
 something
 has clearly changed as existing applications suddenly return the wrong
 result.

 A change that only affects poorly written applications, which could not
 work correctly in the first place, is not an appropriate straw man for
 any argument.

 Exactly why do current applications work then? What is different now?

 I've just checked the IBX components source, for example, and it explicitly
 checks
 for null before asking for data.

 Doesn't isql do the same? Thomas' first e-mail showed the isql prompt with
 SHOW DOMAIN command

The isql session created only the domains. There was no SHOW DOMAIN 
command there.

Thomas


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-03 Thread Thomas Steinmaurer
 P.S. This discussion is purely theoretical as compatibility has already
 been restored in the meantime.

 I never said a properly written application could be affected, I said
 something
 has clearly changed as existing applications suddenly return the wrong
 result.

 A change that only affects poorly written applications, which could not
 work correctly in the first place, is not an appropriate straw man for
 any argument.

 Exactly why do current applications work then? What is different now?

 I've just checked the IBX components source, for example, and it
 explicitly
 checks
 for null before asking for data.

 Doesn't isql do the same? Thomas' first e-mail showed the isql prompt with
 SHOW DOMAIN command

 The isql session created only the domains. There was no SHOW DOMAIN
 command there.

 There was in your e-mail to the dbw-beta test list.

 (reading it again)

 Oh wait, that showed something different, my bad.

 I wonder then, Thomas, can you reproduce this issue with the IBX components?

Ehm, why do we care about IBX? ;-)

T.

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


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

2014-10-02 Thread Thomas Steinmaurer
Hello,

I'm using the build mentioned in the subject, 32-bit, on Windows 7 64-bit.

I have the following sequence of created domains in isql:

SQL create domain d_mydomain bigint;
SQL commit;
SQL create domain d_mydomain_1 bigint;
SQL commit;
SQL create domain d_mydomain_2 bigint;
SQL create domain d_mydomain_3 bigint;
SQL commit;
SQL

The following query:

select f.rdb$field_name, rdb$default_source, rdb$validation_source
from rdb$fields f left outer join rdb$field_dimensions fd on 
f.rdb$field_name = fd.rdb$field_name
where (f.rdb$system_flag = 0 or f.rdb$system_flag is null) and 
f.rdb$field_name not like 'RDB$%'
order by f.rdb$field_name, fd.rdb$dimension

returns:

RDB$FIELD_NAME  RDB$DEFAULT_SOURCE RDB$VALIDATION_SOURCE

D_ACCOMMODATIONCATEGORY DEFAULT 0  CHECK (VALUE BETWEEN 
0 AND 5)
D_BOOLEAN
D_BOOLEAN_FALSE DEFAULT FALSE  CHECK (VALUE BETWEEN 
0 AND 5)
D_BOOLEAN_NULL
D_BOOLEAN_TRUE  DEFAULT TRUE   CHECK (VALUE BETWEEN 
0 AND 5)
D_ID
D_IDREF DEFAULT TRUE   CHECK (VALUE BETWEEN 
0 AND 5)
D_MYDOMAIN
D_MYDOMAIN_1DEFAULT TRUE   CHECK (VALUE BETWEEN 
0 AND 5)
D_MYDOMAIN_2
D_MYDOMAIN_3DEFAULT TRUE   CHECK (VALUE BETWEEN 
0 AND 5)


Mind default source and validation_source for domains that have been 
created without a default etc.


Thanks,
Thomas

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 3.0.0.31348 - string truncation error

2014-10-02 Thread Thomas Steinmaurer
Hello,

I'm using the build mentioned in the subject, 32-bit, on Windows 7 64-bit.

In a UTF8 database, I have a table with the following name:

A_VERY_LONG_TABLENAME


And a package with a single selectable SP, basically querying the table 
names:

SET TERM ^^ ;
CREATE OR ALTER PACKAGE PKG_SCHEMA_1 AS
begin
   procedure s_user_tables returns (relation_name type of column 
rdb$relations.rdb$relation_name);
end
  ^^
SET TERM ; ^^
SET TERM ^^ ;
RECREATE PACKAGE BODY PKG_SCHEMA_1 AS
begin
   procedure s_user_tables returns (relation_name type of column 
rdb$relations.rdb$relation_name)
   as
   begin
 for
   select rdb$relation_name from rdb$relations
   where
 (rdb$system_flag = 0 or rdb$system_flag is null)
 and (rdb$view_blr is null)
   order by
 rdb$relation_name asc
   into
 :relation_name
 do
 begin
   suspend;
 end
   end
end
  ^^
SET TERM ; ^^


In isql:

SQL set names UTF8;
SQL connect localhost/5050:fb3demo.fdb user sysdba password masterkey;
Commit current transaction (y/n)?y
Committing.
Database:  localhost/5050:fb3demo.fdb, User: sysdba
SQL select * from pkg_schema_1.s_user_tables;

RELATION_NAME
=
Statement failed, SQLSTATE = 22001
arithmetic exception, numeric overflow, or string truncation
-string right truncation
-expected length 10, actual 21
SQL



Any ideas?


Thanks,
Thomas


--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0.0.31348 - string truncation error

2014-10-02 Thread Thomas Steinmaurer
Hello,

 I'm using the build mentioned in the subject, 32-bit, on Windows 7 64-bit.

 In a UTF8 database, I have a table with the following name:

 A_VERY_LONG_TABLENAME


 And a package with a single selectable SP, basically querying the table
 names:

 SET TERM ^^ ;
 CREATE OR ALTER PACKAGE PKG_SCHEMA_1 AS
 begin
 procedure s_user_tables returns (relation_name type of column
 rdb$relations.rdb$relation_name);
 end
^^
 SET TERM ; ^^
 SET TERM ^^ ;
 RECREATE PACKAGE BODY PKG_SCHEMA_1 AS
 begin
 procedure s_user_tables returns (relation_name type of column
 rdb$relations.rdb$relation_name)
 as
 begin
   for
 select rdb$relation_name from rdb$relations
 where
   (rdb$system_flag = 0 or rdb$system_flag is null)
   and (rdb$view_blr is null)
 order by
   rdb$relation_name asc
 into
   :relation_name
   do
   begin
 suspend;
   end
 end
 end
^^
 SET TERM ; ^^


 In isql:

 SQL set names UTF8;
 SQL connect localhost/5050:fb3demo.fdb user sysdba password masterkey;
 Commit current transaction (y/n)?y
 Committing.
 Database:  localhost/5050:fb3demo.fdb, User: sysdba
 SQL select * from pkg_schema_1.s_user_tables;

 RELATION_NAME
 =
 Statement failed, SQLSTATE = 22001
 arithmetic exception, numeric overflow, or string truncation
 -string right truncation
 -expected length 10, actual 21
 SQL

Seems to be a problem with using the TYPE OF clause for the data type. 
When I replace that with e.g. VARCHAR(50) the string truncation error 
message is gone.


Regards,
Thomas

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Questions on External Sort logic

2014-05-04 Thread Thomas Steinmaurer
Sean,

   1. A query's operations (the reading of the data and sorting) execute
  in a single thread/process, correct?

 Correct.

   2. Is Internal sorting performed by the ExecuteWriteTempSortBlock()
 step?

 Internal buffer is sorted as soon as filled up to its limit and then written 
 into
 the temp space. More or less what you describe, AFAIU.
 Although in fact, runs (sorted buffers) may still reside in memory in other
 (larger) buffers. And the temp space manager does its own caching as well.

 Based on your answers to 1 and 2, this means that all read IO to load more 
 data is paused while the internal buffer is sorted and then written to disk?

 Is there a reason (in today's age of multi-core CPUs and hyper-threading) why 
 helper threads could not be created to perform the buffer sorting and temp 
 disk IO?

 Personally, I find it frustrating to what Firebird disk IO profile when 
 performing large select/sorts, on systems which have IO to burn (RAM Disk, 
 SSD or PCIe SSD).

I fully agree with that.

IMHO, post V3, better utilization of modern I/O environments capable of 
handling random I/O sufficiently, should be priority #1 for Firebird.


Regards,
Thomas

--
Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.  Get 
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free.
http://p.sf.net/sfu/SauceLabs
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Questions on External Sort logic

2014-05-04 Thread Thomas Steinmaurer
Claudio,

 -Original Message-
 From: Thomas Steinmaurer [mailto:t...@iblogmanager.com]
 Sent: Domingo, 04 de Mayo de 2014 5:43

 Personally, I find it frustrating to what Firebird disk IO
 profile when performing large select/sorts, on systems which
 have IO to burn (RAM Disk, SSD or PCIe SSD).

 I fully agree with that.

 IMHO, post V3, better utilization of modern I/O environments
 capable of
 handling random I/O sufficiently, should be priority #1 for Firebird.

 Thomas, given that the team is not growing (in fact, we lost Arno 2+ years
 ago) and many people have different maximum priority items, I think the
 committee or the sponsors or the user base will have to agree on the
 definitive list of features.

Yes, of course!

Sorry for not being clear, this is my *personal* opinion without being 
backed by a sponsoring budget or a new human resource intending to work 
on that. ;-)


Regards,
Thomas

--
Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.  Get 
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free.
http://p.sf.net/sfu/SauceLabs
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace API - Stored Function support?

2014-02-22 Thread Thomas Steinmaurer
Hello Vlad,

 When I execute a stored procedure (with or without package, doesn't
 matter), e.g.:

 select * from pkg_schema.s_user_tables;

 I also see appropriate PREPARE_STATEMENT etc. events for the SELECT
 statement. Whereas when I execute a stored function with e.g.:

 select foo(2) from rdb$database;

 I only see the EXECUTE_FUNCTION_* events, but none related to the SELECT
 statement.

 Is this as designed?

  Of course, not. I see all statement related events:

 2014-02-22T17:46:27.4320 (2292:02DB3EE0) PREPARE_STATEMENT
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)
  (TRA_70, READ_COMMITTED | NO_REC_VERSION | WAIT | READ_WRITE)

 Statement 41:
 ---
 select f1(1) from rdb$database
0 ms

 2014-02-22T17:46:27.4320 (2292:02DB3EE0) EXECUTE_STATEMENT_START
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)
  (TRA_69, CONCURRENCY | WAIT | READ_WRITE)

 Statement 41:
 ---
 select f1(1) from rdb$database

 2014-02-22T17:46:27.4320 (2292:02DB3EE0) EXECUTE_FUNCTION_START
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)
  (TRA_69, CONCURRENCY | WAIT | READ_WRITE)

 Function F1:
 param0 = integer, 1


 2014-02-22T17:46:27.4320 (2292:02DB3EE0) EXECUTE_FUNCTION_FINISH
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)
  (TRA_69, CONCURRENCY | WAIT | READ_WRITE)

 Function F1:
 param0 = integer, 1

 returns:
 param0 = integer, 2

0 ms

 2014-02-22T17:46:27.4320 (2292:02DB3EE0) EXECUTE_STATEMENT_FINISH
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)
  (TRA_69, CONCURRENCY | WAIT | READ_WRITE)

 Statement 41:
 ---
 select f1(1) from rdb$database
 1 records fetched
0 ms, 5 fetch(es)

 Table Natural IndexUpdateInsert
 Delete   Backout Purge   Expunge
 ***
 RDB$DATABASE1


 2014-02-22T17:46:27.4320 (2292:02DB3EE0) CLOSE_CURSOR
  A.FDB (ATT_53, SYSDBA:NONE, NONE, internal)

 Statement 41:
 ---
 select f1(1) from rdb$database



  Could you show me how to reproduce the issue ?

I'm really sorry for wasting your time. I had an exclude filter defined 
with '%RDB$%', thus it makes sense now that I don't see the expected 
trace output.

Sorry again.

Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace API - Stored Function support?

2014-02-21 Thread Thomas Steinmaurer
 will there be or is there already support for stored function execution
 in the Trace API similar to stored procedures?

Sure, it is under development.

 Thanks for the information.

   Done, happy testing ;)

 Lovely. ;-) Thanks a lot!

 Will give it a go in the forthcoming days. As well for the
 package/procedure naming output issue.

The naming output issue is fixed. Stored function tracing works very 
nicely. Thanks for designing the trace output similar/equal to 
procedures. ;-)

One question though ...

When I execute a stored procedure (with or without package, doesn't 
matter), e.g.:

select * from pkg_schema.s_user_tables;

I also see appropriate PREPARE_STATEMENT etc. events for the SELECT 
statement. Whereas when I execute a stored function with e.g.:

select foo(2) from rdb$database;

I only see the EXECUTE_FUNCTION_* events, but none related to the SELECT 
statement.

Is this as designed?

Thanks,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace Output - Execution of package-based stored procedure

2014-02-19 Thread Thomas Steinmaurer
 Tried todays snapshot build (Win 32-bit). The output looks like a bit
 weird regarding package/procedure name:

 2014-02-18T21:59:55.1080 (456:00C32D20) EXECUTE_PROCEDURE_FINISH
   tourism.fdb (ATT_332, TOURISM:NONE, UNICODE_FSS, TCPv4:127.0.0.1)
   C:\Program Files (x86)\Upscene Productions\Database Workbench 4
 Pro\DBW4.exe:4928
   (TRA_574, READ_COMMITTED | REC_VERSION | NOWAIT | READ_WRITE)
 Procedure PKG_SCHE´õŸ:
 0 ms

  Yes, i know. I and already fixed it at my private tree. Will be 
 committed soon with
 tracing of functions.

Good news. Thanks. ;-)

Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace API - Stored Function support?

2014-02-19 Thread Thomas Steinmaurer
 will there be or is there already support for stored function execution
 in the Trace API similar to stored procedures?

   Sure, it is under development.

 Thanks for the information.

  Done, happy testing ;)

Lovely. ;-) Thanks a lot!

Will give it a go in the forthcoming days. As well for the 
package/procedure naming output issue.

Thanks again and sleep well.

Thomas


--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace Output - Execution of package-based stored procedure

2014-02-18 Thread Thomas Steinmaurer
Hello Vlad,

 14.02.2014 22:50, Thomas Steinmaurer wrote:

 Would like to do so, but the latest snapshot build for Windows available
 is from 2 days ago. Just letting you know.

 Windows builds are broken at the moment, please wait a bit.

  It works now

Tried todays snapshot build (Win 32-bit). The output looks like a bit 
weird regarding package/procedure name:

2014-02-18T21:59:55.1080 (456:00C32D20) EXECUTE_PROCEDURE_FINISH
 tourism.fdb (ATT_332, TOURISM:NONE, UNICODE_FSS, TCPv4:127.0.0.1)
 C:\Program Files (x86)\Upscene Productions\Database Workbench 4 
Pro\DBW4.exe:4928
 (TRA_574, READ_COMMITTED | REC_VERSION | NOWAIT | READ_WRITE)
Procedure PKG_SCHE´õŸ:
   0 ms


Thanks for your time.

Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace API - Stored Function support?

2014-02-17 Thread Thomas Steinmaurer
Vlad,

 will there be or is there already support for stored function execution
 in the Trace API similar to stored procedures?

  Sure, it is under development.

Thanks for the information.

Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121054471iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace Output - Execution ofpackage-based stored procedure

2014-02-14 Thread Thomas Steinmaurer
 Good point. I think it makes sense. I'll look at it (a bit later). Would 
 you like to
 see procedure name prefixed with package name (PACKAGE.PROCEDURE)

 This would be consistent with the rest of the codebase, so IMHO it
 should be done this way.
 Sounds good.

  Check next snapshot build, please

Would like to do so, but the latest snapshot build for Windows available 
is from 2 days ago. Just letting you know.

Regards,
Thomas

--
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Alpha 2 - Trace API - Stored Function support?

2014-02-14 Thread Thomas Steinmaurer
Hello,

will there be or is there already support for stored function execution 
in the Trace API similar to stored procedures?

I don't see that anywhere mentioned. At least the fbtrace.conf template 
file doesn't offer e.g. log_function_start, log_function_finish trace 
configuration parameters.

Thank you.

Regards,
Thomas

--
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - Trace Output - Execution ofpackage-based stored procedure

2014-02-13 Thread Thomas Steinmaurer
 Good point. I think it makes sense. I'll look at it (a bit later). Would you 
 like to
 see procedure name prefixed with package name (PACKAGE.PROCEDURE)

 This would be consistent with the rest of the codebase, so IMHO it
 should be done this way.
Sounds good.

Thank you,
Thomas










--
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Alpha 2 - Trace Output - Execution of package-based stored procedure

2014-02-12 Thread Thomas Steinmaurer
Hello,

when I execute a stored procedure which is part of a package with e.g.:

select * from pkg_schema.s_user_tables;

I guess, it would make sense to also have the package name somewhere in 
the trace output for the EXECUTE_PROCEDURE_* event. Does this make sense?


For the above call, currently we get:

2014-02-12T23:29:31.8020 (1732:010B43E0) EXECUTE_PROCEDURE_START
 tourism.fdb (ATT_291, TOURISM:NONE, UNICODE_FSS, TCPv4:127.0.0.1)
 C:\Program Files (x86)\Upscene Productions\Database Workbench 4 
Pro\DBW4.exe:3348
 (TRA_411, READ_COMMITTED | REC_VERSION | NOWAIT | READ_WRITE)
Procedure S_USER_TABLES:


So, without any package name information.


Thanks,
Thomas

--
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] pyfirebirdsql can't authenticate with Firebird 3.0 (SRP issues)

2014-02-06 Thread Thomas Steinmaurer
 http://permalink.gmane.org/gmane.comp.db.firebird.python/360

At least with the ZIP distribution of Firebird 3 Alpha 2, you need to 
create a Firebird user via gsec first.

Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Firebird 3.0 Alpha 2 release is available for testing

2014-02-03 Thread Thomas Steinmaurer
 sorry seems that was loading the old fbclient from
 /usr/lib/x86_64-linux-gnu/
 ldd /opt/flamerobin/bin/flamerobin  | grep libfb
 libfbclient.so.2 = /usr/lib/x86_64-linux-gnu/libfbclient.so.2
 (0x7f1e8dfec000)

 cat /etc/ld.so.conf.d/x86_64-linux-gnu.conf
 /lib/x86_64-linux-gnu
 /usr/lib/x86_64-linux-gnu

 now is fixed and is loading the lib from /opt/firebird (symlinked)
 ldd /opt/flamerobin/bin/flamerobin  | grep libfb
 libfbclient.so.2 = /usr/lib/libfbclient.so.2 (0x7fdba0a4e000)
 ls -lah /usr/lib/libfbclient.so.2
 lrwxrwxrwx 1 root root 32 Feb  3 19:09 /usr/lib/libfbclient.so.2 -
 /opt/firebird/lib/libfbclient.so


 Now i get another issue seems that fb 3.0 can't open old on-disk
 structure from 2.5.x

 Engine Code: 335544379
 Engine Message :
 unsupported on-disk structure for file
 /var/lib/firebird/2.5/data/django_postman.fdb; found 11.2, support
 12.0

That's expected and documented in the release notes, AFAIR.


Regards,
Thomas

--
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API withEmbeddedandUnicodeinitializationproblem

2014-02-02 Thread Thomas Steinmaurer
Hello Vlad,

 PS If you provide me with reproducible sample i'll try to investigate it

 The only thing I could provide is a 32-bit Delphi application which
 points to an Embedded library. The executable must not be in the same
 directory. Would this be useful?

  At least, we can try :)

Please download:
http://www.iblogmanager.com/download/misc/FBEmbeddedTrace.zip

This includes FB Embedded 2.5.2 Update 1 x86, trace plugin and 
fbtracemgr.exe from a regular x86 Server ZIP. In an 'application' 
sub-directory you will find a 32-bit Delphi application and a test 
database. The embedded library has been renamed to fbclient.dll. Please 
make sure that no other fbclient.dll is available through PATH etc.

Then, please try:
* Run _start_trace.bat
* Run _start_isql.bat

This should show trace output just fine.

Now:
* Run application/FBEmbeddedTest.exe
* The pre-configured client library in the edit box should be fine
* Click the Connect button

You now should see the UNICODE initialization problem in the trace output.


Thanks for investigating.

Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Embedded distribution and trace plugin, fbtracemgr.exe

2014-02-02 Thread Thomas Steinmaurer
Hello,

is there any particular reason (except probable ZIP size) why the trace 
plugin and fbtracemgr.exe is not included in the embedded distribution?

Thanks,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Alpha 2 - SuperServer - Can't connect with multiple isql sessions

2014-02-02 Thread Thomas Steinmaurer
Hello,

I'm sure I'm doing something wrong here ...

Testing Alpha 2 x86 on Windows using the ZIP distribution. From a 
configuration side, I only changed the port in firebird.conf to 4050, so 
I'm running SuperServer.

A first isql session with:
isql 'localhost/4050:tourism.fdb' -user tourism -password x

With TCPView, I see isql being connected through port 4050.

A second isql session with the same call as above fails with:

Statement failed, SQLSTATE = 08001
I/O error during CreateFile (open) operation for file tourism.fdb
-Error while trying to open file
-The process cannot access the file because it is being used by another 
process.


Am I doing something wrong?


Thanks,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace APIwithEmbeddedandUnicodeinitializationproblem

2014-02-02 Thread Thomas Steinmaurer
Hello Vlad,

 PS If you provide me with reproducible sample i'll try to investigate it

 The only thing I could provide is a 32-bit Delphi application which
 points to an Embedded library. The executable must not be in the same
 directory. Would this be useful?

   At least, we can try :)

 Please download:
 http://www.iblogmanager.com/download/misc/FBEmbeddedTrace.zip

 This includes FB Embedded 2.5.2 Update 1 x86, trace plugin and
 fbtracemgr.exe from a regular x86 Server ZIP. In an 'application'
 sub-directory you will find a 32-bit Delphi application and a test
 database. The embedded library has been renamed to fbclient.dll. Please
 make sure that no other fbclient.dll is available through PATH etc.

  I've set PATH to empty value

 Then, please try:
 * Run _start_trace.bat
 * Run _start_isql.bat

 This should show trace output just fine.

  Yes, it shows trace output

 Now:
 * Run application/FBEmbeddedTest.exe
 * The pre-configured client library in the edit box should be fine
 * Click the Connect button

 You now should see the UNICODE initialization problem in the trace output.

  No, i see ATTACH_DATABASE event by this application.

That's a pity. ;-)

Do you have the FIREBIRD environment variable set?


 Regards,
 Vlad

 PS does you tried LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH ?

Doesn't help.


Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Alpha 2 - SuperServer - Can't connect with multiple isql sessions

2014-02-02 Thread Thomas Steinmaurer
 02.02.2014 11:23, Thomas Steinmaurer wrote:
  From a configuration side, I only changed the port in firebird.conf to 
 4050, so
 I'm running SuperServer.

 No, to run Super-anything, you must run/install firebird.exe with -m 
 switch.

Thanks, that did the trick, although I do not see any reason to make -m 
mandatory for SuperServer. The release notes also only mention -m as a 
distinction between CS/SC and doesn't take SS into account.

Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] TraceAPI with Embedded and Unicode initialization problem

2014-02-02 Thread Thomas Steinmaurer
 You now should see the UNICODE initialization problem in the trace output.

No, i see ATTACH_DATABASE event by this application.

 That's a pity. ;-)

 Do you have the FIREBIRD environment variable set?

   No.

 PS does you tried LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH ?

 Doesn't help.

   That's a pity. ;-)

 Regards,
 Vlad

 PS You could also try to use FileMon\ProcMon to trace application activity

 I see that icuin30.dll is tried to be loaded from various places
 (although excluding the embedded root path), but this fails.

 icuin30.dll is available in the embedded root directory. When I put the
 dll into the application sub-folder, then the trace output works.

 Can you please check from where icuin30.dll is loaded when running my
 test application?

Btw, I now found: http://tracker.firebirdsql.org/browse/CORE-3183


Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API with Embedded andUnicodeinitializationproblem

2014-02-01 Thread Thomas Steinmaurer
 It is interesting now, that the trace works for an isql based client
 session, even when using UTF8 as character set, but fails with e.g.
 Database Workbench. The only difference is that isql is in the same
 directory as embedded, but DBW isn't, although pointing to the same
 embedded library. I guess that is the main and important difference.

I guess that embedded, loaded by DBW, can't find and load 
 fbintl.dll or ICU dll's.
 Could you check this (using Process Explorer or FileMon) ? If yes, you can 
 try to
 load fbembed.dll using LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH
 flags.

 Unfortunately, according to ProcessExplorer, DBW has all embedded
 related libraries loaded from the Embedded directory. E.g.:

 fb_lock_1faa8dc00100331f
 fb_lock_1faa8dc00100331f
 fb_trace
 fbclient.dll Firebird SQL Server Firebird Project 2.5.2.26540
 fbintl.DLL Firebird SQL Server Firebird Project 2.5.2.26540
 fbtrace.dll Firebird SQL Server Firebird Project 2.5.2.26540
 ib_util.dll Firebird SQL Server Firebird Project 2.5.2.26540
 ibdac120.bpl Devart 3.60.0.24
 icudt30.dll ICU Data DLL IBM Corporation and others 3.0.0.0
 icuuc30.dll IBM ICU Common DLL IBM Corporation and others 3.0.0.0

   I see no folders above, so i can't know from what folder each dll was 
 loaded.

 All coming from the same, embedded folder.

 I have also tried to explicitly set the root directory in firebird.conf
 as stated in the 2.5.2 release notes p. 96 regarding changes in the
 embedded deployment structure, when the executable is not in the same
 directory as the embedded library. From my understanding, that change in
 2.5.2 was even necessary to have a dedicated embedded
 directory/installation shared by several applications.

   I never tried to change RootDirectory and consider it dangerous. If 
 you want
 to change something - change LoadLibrary call (or FIREBIRD env. variable, but
 do it before attempt to load embedded library) ;)

 Regards,
 Vlad

 PS I assume fbclient.dll above is just renamed fbembed.dll, correct ?
 Yes.

Any further ideas?

Thanks,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API with EmbeddedandUnicodeinitializationproblem

2014-02-01 Thread Thomas Steinmaurer
 Any further ideas?

  Not at me.

 Regards,
 Vlad

 PS If you provide me with reproducible sample i'll try to investigate it

The only thing I could provide is a 32-bit Delphi application which 
points to an Embedded library. The executable must not be in the same 
directory. Would this be useful?

Thanks for your time.

Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Trace API with Embedded and Unicode initialization problem

2014-01-30 Thread Thomas Steinmaurer
Hello,

the following is with: Firebird-2.5.2.26540-0_Win32 Embedded

What can be the reason for the following error:

cannot initialize UNICODE collation to use in trace plugin

when a trace session is attempted to be started with Firebird Embedded?

As usual, Firebird Embedded is extracted into its own dedicated 
directory. I then have pulled the plugins directory including 
fbtrace.dll from the regular 32-bit server ZIP distribution and copied 
that into the Embedded folder. Any reason why fbtrace.dll isn't included 
in embedded out-of-the box. The intl sub-folder is present in the 
embedded directory as well.

The 32-bit client application and fbtracemgr.exe is pointing and using 
the same embedded DLL. Verified via SysInternals process explorer. 
Still, I get the error message above.

There is http://tracker.firebirdsql.org/browse/CORE-3281, but it seems 
to be a Linux/ICU issue.

Any ideas?

Thanks!

Thomas


--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API with Embedded and Unicode initializationproblem

2014-01-30 Thread Thomas Steinmaurer
Hello Vlad,

 the following is with: Firebird-2.5.2.26540-0_Win32 Embedded

 What can be the reason for the following error:

 cannot initialize UNICODE collation to use in trace plugin

  Adriano could know, i hope

 when a trace session is attempted to be started with Firebird Embedded?

  At the same moment as for non-embedded server - when database\service
 attachment is started (and trace session already exists) or detects new trace
 session.

 As usual, Firebird Embedded is extracted into its own dedicated
 directory. I then have pulled the plugins directory including
 fbtrace.dll from the regular 32-bit server ZIP distribution and copied
 that into the Embedded folder. Any reason why fbtrace.dll isn't included
 in embedded out-of-the box.

  I think it is a kind of bug with packaging and it should be registered 
 at tracker

 The intl sub-folder is present in the embedded directory as well.

 The 32-bit client application and fbtracemgr.exe is pointing and using
 the same embedded DLL. Verified via SysInternals process explorer.
 Still, I get the error message above.

 There is http://tracker.firebirdsql.org/browse/CORE-3281, but it seems
 to be a Linux/ICU issue.

 Any ideas?

  Could you try to make attachment with client charset UTF8 using embedded
 and without any attempt to trace sometnig ? Do you have any messages in 
 firebird.log ?

No problem with connecting with UTF8. There is also nothing suspicious 
in firebird.log of embedded.

It is interesting now, that the trace works for an isql based client 
session, even when using UTF8 as character set, but fails with e.g. 
Database Workbench. The only difference is that isql is in the same 
directory as embedded, but DBW isn't, although pointing to the same 
embedded library. I guess that is the main and important difference.

Btw, the original trace/Unicode problem was reported by a customer, who 
is using embedded with .NET.

Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API with Embedded and Unicodeinitializationproblem

2014-01-30 Thread Thomas Steinmaurer
 It is interesting now, that the trace works for an isql based client
 session, even when using UTF8 as character set, but fails with e.g.
 Database Workbench. The only difference is that isql is in the same
 directory as embedded, but DBW isn't, although pointing to the same
 embedded library. I guess that is the main and important difference.

  I guess that embedded, loaded by DBW, can't find and load fbintl.dll or 
 ICU dll's.
 Could you check this (using Process Explorer or FileMon) ? If yes, you can 
 try to
 load fbembed.dll using LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH
 flags.

Unfortunately, according to ProcessExplorer, DBW has all embedded 
related libraries loaded from the Embedded directory. E.g.:

fb_lock_1faa8dc00100331f
fb_lock_1faa8dc00100331f
fb_trace
fbclient.dllFirebird SQL Server Firebird Project2.5.2.26540
fbintl.DLL  Firebird SQL Server Firebird Project2.5.2.26540
fbtrace.dll Firebird SQL Server Firebird Project2.5.2.26540
ib_util.dll Firebird SQL Server Firebird Project2.5.2.26540
ibdac120.bplDevart  3.60.0.24
icudt30.dll ICU Data DLLIBM Corporation and others  3.0.0.0
icuuc30.dll IBM ICU Common DLL  IBM Corporation and others  3.0.0.0


I have also tried to explicitly set the root directory in firebird.conf 
as stated in the 2.5.2 release notes p. 96 regarding changes in the 
embedded deployment structure, when the executable is not in the same 
directory as the embedded library. From my understanding, that change in 
2.5.2 was even necessary to have a dedicated embedded 
directory/installation shared by several applications.


Regards,
Thomas

--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Trace API with Embedded andUnicodeinitializationproblem

2014-01-30 Thread Thomas Steinmaurer
 It is interesting now, that the trace works for an isql based client
 session, even when using UTF8 as character set, but fails with e.g.
 Database Workbench. The only difference is that isql is in the same
 directory as embedded, but DBW isn't, although pointing to the same
 embedded library. I guess that is the main and important difference.

   I guess that embedded, loaded by DBW, can't find and load fbintl.dll 
 or ICU dll's.
 Could you check this (using Process Explorer or FileMon) ? If yes, you can 
 try to
 load fbembed.dll using LoadLibraryEx with LOAD_WITH_ALTERED_SEARCH_PATH
 flags.

 Unfortunately, according to ProcessExplorer, DBW has all embedded
 related libraries loaded from the Embedded directory. E.g.:

 fb_lock_1faa8dc00100331f
 fb_lock_1faa8dc00100331f
 fb_trace
 fbclient.dll Firebird SQL Server Firebird Project 2.5.2.26540
 fbintl.DLL Firebird SQL Server Firebird Project 2.5.2.26540
 fbtrace.dll Firebird SQL Server Firebird Project 2.5.2.26540
 ib_util.dll Firebird SQL Server Firebird Project 2.5.2.26540
 ibdac120.bpl Devart 3.60.0.24
 icudt30.dll ICU Data DLL IBM Corporation and others 3.0.0.0
 icuuc30.dll IBM ICU Common DLL IBM Corporation and others 3.0.0.0

  I see no folders above, so i can't know from what folder each dll was 
 loaded.

All coming from the same, embedded folder.

 I have also tried to explicitly set the root directory in firebird.conf
 as stated in the 2.5.2 release notes p. 96 regarding changes in the
 embedded deployment structure, when the executable is not in the same
 directory as the embedded library. From my understanding, that change in
 2.5.2 was even necessary to have a dedicated embedded
 directory/installation shared by several applications.

  I never tried to change RootDirectory and consider it dangerous. If you 
 want
 to change something - change LoadLibrary call (or FIREBIRD env. variable, but
 do it before attempt to load embedded library) ;)

 Regards,
 Vlad

 PS I assume fbclient.dll above is just renamed fbembed.dll, correct ?
Yes.

Regards,
Thomas








--
WatchGuard Dimension instantly turns raw network data into actionable 
security intelligence. It gives you real-time visual feedback on key
security issues and trends.  Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] RES: Firebird Alpha 1 GBAK bug

2013-09-04 Thread Thomas Steinmaurer
 Dmitry, I tried again with FB3 today's version and it a little bit
 different. It stops restoring backup with this:
 (...)
 gbak:restoring parameter BDSEQCTA for stored procedure
 gbak:restoring parameter BDCODCENTROS for stored procedure
 gbak:restoring parameter BDCODTPCC for stored procedure
 gbak:restoring parameter BDNOMTPCC for stored procedure
 gbak:restoring parameter BDSALANT for stored procedure
 gbak:restoring parameter BDSALMOV for stored procedure
 gbak:restoring parameter BDSALATU for stored procedure
 gbak:restoring parameter BDANAVER for stored procedure
 gbak:restoring parameter BDFORMULA for stored procedure
 gbak:restoring parameter BDGRPCTA for stored procedure
 gbak:restoring parameter BDAPECTA for stored procedure
 gbak:restoring exception EX_DATE
 gbak:restoring exception NAO_EXCLUIR_TITULO
 gbak:restoring exception ODSERROR
 gbak:restoring exception SALDO
 gbak:restoring exception EX_BLOQLAN
 gbak:restoring exception EX_GETCHAVELAN
 gbak:restoring exception EX_TAMANHOCHAVE
 gbak:committing metadata

 and error:
 gbak: ERROR:Access to UDF/BLOV-filter module
 C:\Arquiv~1\Firebird\Firebird_2_0\UDF\sciudf.dll is denied by server
 administrator
 gbak:Exiting before completion due to errors

Looks a bit like your UDF library isn't accessible for Firebird 3. Or 
perhaps you did declare your UDF with a full-qualified path (the one 
above) to the UDF library dll?



-- 
With regards,
Thomas Steinmaurer
http://www.upscene.com/

Professional Tools and Services for Firebird
FB TraceManager, IB LogManager, Database Health Check, Tuning etc.

--
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] FB 3.0 Alpha 1 - Initialize security database - Reference to quick start guide

2013-08-06 Thread Thomas Steinmaurer
 On 08/05/13 22:13, Thomas Steinmaurer wrote:
 Hello,

 upon first usage/connect, the user is prompted with an -Install
 incomplete, please read chapter Initializing security database in
 Quick Start Guide message.

 Obviously there is no QSG (or I haven't found it), so that's a bit
 confusing for people being new to 3.0 (Alpha1).


 Yes.
 When adding that message I've hoped we will have QSG.

 But one question - what OS/install type did you use? Both linux and
 windows installers ask for SYSDBA passwd and add appropiate record to
 sec db.

64-bit ZIP non-debug distribution for Windows.

Regards,
Thomas

--
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with 2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] FB 3.0 Alpha 1 - Initialize security database - Reference to quick start guide

2013-08-05 Thread Thomas Steinmaurer
Hello,

upon first usage/connect, the user is prompted with an -Install 
incomplete, please read chapter Initializing security database in 
Quick Start Guide message.

Obviously there is no QSG (or I haven't found it), so that's a bit 
confusing for people being new to 3.0 (Alpha1).

Regards,
Thomas

--
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] RFC: non-expandable fields

2013-04-04 Thread Thomas Steinmaurer
 i wrote this RFC by request of one local company which have (as many others)
 wrote own replicator and got some issues which could be resolved very easy
 with a little support from the Firebird engine side. I think we could discuss 
 it and
 determine if requested feature could add some value to the engine for wider
 audience.

Their software (replicator) add's some service field(s) to the customer 
 tables
 to track changes. In most cases it doesn't harm and customer software works
 as expected, i.e. ignores unknown for it new fields. But there are two cases
 when such service fields could change application's logic and even broke it. I
 mean queries where list of fields is not set explicitly by a programmer but
 expanded by the engine in run-time:
 a) select * from table
 b) insert into table values (...)

So, the proposition is simple: add ability for engine to distinguish such 
 service
 fields and not include it into auto expanded list of fields for table or view 
 at the
 queries above. I.e. service fields is fully accessible if present in query 
 text explicitly
 and hidden otherwise.

I prefer to discuss implementation details after (if) we agreed on 
 feasibility of
 such feature.

 Comments, ideas are welcome ;)

IMHO a hack, which shouldn't go into a public release. But that's just 
my personal opinion. ;-)

Regards,
Thomas


--
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Covering index?

2013-01-28 Thread Thomas Steinmaurer
 On Sun, Jan 27, 2013 at 3:23 PM, Dimitry Sibiryakov s...@ibphoenix.com
 mailto:s...@ibphoenix.com wrote:

 27.01.2013 21:17, Thomas Steinmaurer wrote:
   Is Firebird able here to serve the result here out of the index
 or does
   it need to lookup data by following the index key to the row data?

 There is no data in index. And no information about transaction
 created an index entry.
 So, yes, Firebird has to look at real data.


 Just to amplify Dimitry's answer, without transaction information,
 there's no way to tell whether an index entry points to a record version
 that's appropriate to your transaction.  So even if you find an index
 entry that exactly matches the data you want, you still have to read the
 record.

Makes sense. How does the engine know when to garbage collect an index 
entry?


Thanks,
Thomas

--
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Covering index?

2013-01-28 Thread Thomas Steinmaurer
 28.01.2013 17:27, Thomas Steinmaurer wrote:
 How does the engine know when to garbage collect an index
 entry?

 When list of record references in it is empty.

Thanks.

Regards,
Thomas

--
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Covering index?

2013-01-27 Thread Thomas Steinmaurer
Hello,

SQL Server supports something called covering index, which basically 
means, that additional columns can be added to the index definiton, 
which aren't in the index key then, but at index lead level only.

I know Firebird doesn't support something like that, but I wonder if 
Firebird can serve result fields directly out of an index without going 
to the underlaying table data?

For example (name is an indexed field):

select name from t1 where name like 'Hugo%'


Is Firebird able here to serve the result here out of the index or does 
it need to lookup data by following the index key to the row data?


Thanks,
Thomas

--
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] [firebird-support] Re: Sweep process too many writes to disc

2013-01-08 Thread Thomas Steinmaurer
 i move info from support list what i provide there
 1. I use Super Server 64 bit

 Certainly super does not write pages to disk as active as classic, but...

 2. DB Page Size is 16k and DefaultDBPageCache is 65536 (i disable system
 cache in fbconfig)

 that's just 1Gb cache. We GC pages during sweep in relation order, but
 if indices of some relation(s) do not fit in the cache, pages will be
 swapped in/out very active.

 I do not know if this is important info but:
 l have ~4 indexes per table – but tables have not any constraints like pk,
 uk –
 and some indexes have depth 3, all others have depth 2
 In database all records are small max 100 bytes - no blobs

 So the question is - does your DB have relations with size of indices 
 1Gb?

 Yes, some of indexes are bigger then 1GB
 biggest have 4GB

 but why index must fit into cache?
 and the bigger question why is written back to disc?
 I understand that i can get more reads becouse of small cache but why
 writes?

I haven't followed the entire thread, but if you are using Firebird 
2.5.2 you could use the Trace API with log_sweep enabled to see I/O 
stats per table.


Regards,
Thomas

--
Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS
and more. Get SQL Server skills now (including 2012) with LearnDevNow -
200+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
SALE $99.99 this month only - learn more at:
http://p.sf.net/sfu/learnmore_122512
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Database dialect and BIGINT in metadata

2012-10-31 Thread Thomas Steinmaurer
 On Wed, 31 Oct 2012 08:41:39 +0100, Paul Beach pbe...@ibphoenix.com
 wrote:
 I have no idea what to do (well, actually I have a very easy and good
 one, you know, it's to wipe dialect 1/2). I'd hate to split a single
 field in two to support something which should be removed +10 years
 ago.

 Dialect 1/2 logic was for supporting migration of interbase 5 to
 firebird 1.0
 I hope that clients had the time to migrate

 They haven't

 Don't you mean: they didn't use that time ;)

 IMHO: Dropping dialect 1 and 2 should be done with Firebird 3. People
 still depending on dialect 1 will then be stuck on Firebird 2.5 until they
 migrate to dialect 3. I think that is a better option than keep dragging
 support for legacy compatibility.

+1. Firebird 3 might be a good milestone to ditch dialect  3 support.


Regards,
Thomas

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Database dialect and BIGINT in metadata

2012-10-31 Thread Thomas Steinmaurer
 Over all 12 years of FB development it became clear that *remaining*
 dialect 1 users simply can't switch at all (old legacy app, they
 certainly switch with new app. versions), so giving them another 2 years
 inserting deprecation version before removal will not help them in any
 significant way.


 I hope to be wrong and that changed, but AFAIR, the legacy dialects are
 never removed mainly because BroadView systems are not prepared for it,
 and they are FF sponsors.

Ok, money is involved, but I'm sorry, but this can't be the primarily 
argument to disallow moving forward.

Other sponsors might think differently ...

Yes, I'm PRO moving forward and I'm not a sponsor and yes, I have legacy 
D1 databases out there.


Regards,
Thomas

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Database dialect and BIGINT in metadata

2012-10-31 Thread Thomas Steinmaurer
 31.10.2012 15:32, Thomas Steinmaurer wrote:

 Management = Firebird Admin List?

 Nope, I meant just another part of my responsibilities ;-)

Ah, ok. I guess you have a bunch of hats for different roles in your 
garderobe then. ;-)


Regards,
Thomas

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] CORE-3934 (log_sweep configuration) and Firebird 2.5.2

2012-10-17 Thread Thomas Steinmaurer
 17.10.2012 9:55, Thomas Steinmaurer wrote:

 will the fix for CORE-3934 be available in the final 2.5.2 release?

 Any comments?

 I has been included there.

Great. Thanks.

Regards,
Thomas

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] CORE-3934 (log_sweep configuration) and Firebird 2.5.2

2012-10-16 Thread Thomas Steinmaurer
Hello,

 will the fix for CORE-3934 be available in the final 2.5.2 release?

Any comments?


Thanks,
Thomas

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] ERROR:operating system directive CreateFile failed

2012-10-04 Thread Thomas Steinmaurer
 I agree that sometime more context from intermediate levels could
 help to better understand what happens. For example, when transliterate
 error happens it is good to know assignment destination (field or
 variable) name. I'm not sure it is easy to implement. But in the case
 of CreateFile failed when index is built... - i see nothing to add here, 
 it is
 clear enough as for me...

 The OS message in this case should be helpful enough:
 gbak: ERROR:Das Gerät ist nicht bereit.

 (Device is not ready) suggests it's a problem the administrator has to deal
 with as Firebird doesn't control OS level stuff like file permissions, 
 mounting
 devices, making sufficient temp space available, et al.

 True, but what device?  What path?

 Well, a good question. In this case at a customers server more than one temp 
 path was configured to avoid this situation.

What Firebird version? Might be related to:
http://tracker.firebirdsql.org/browse/CORE-3757


Regards,
Thomas

 And: There was much free space on the device (More than 10 GB for a 2 GB 
 database. The index should have been created on a table of about 3.5 Mio 
 records.)

 So I think my customer has a problem with his raid system.

 The current message is 99% useless without the file path/name.  It 
 effectively reads as:

 You have a problem... somewhere.  Go figure it out.

 Yes and one more:

 There was no hint at the end of restore process that an error occurred. I'd 
 expect a printed message. I don't know wether an exit level was returned or 
 something like that.




 But maybe Bjoern's point has been missed:  why should a temp file be
 needed to restore deactivated indexes?

 I don't think that was his point, but will see what he says.

 No, that's obvious that firebird needs temp space for index creation if there 
 are some more records involved.


 Björn



--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] CORE-3934 (log_sweep configuration) and Firebird 2.5.2

2012-09-29 Thread Thomas Steinmaurer
Hello,

will the fix for CORE-3934 be available in the final 2.5.2 release?

Regards,
Thomas

--
How fast is your code?
3 out of 4 devs don\\\'t know how their code performs in production.
Find out how slow your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219672;13503038;z?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] A script to fix/upgrade security2.fdb

2012-09-18 Thread Thomas Steinmaurer
 18.09.2012 12:47, Tomasz Tyrakowski wrote:

 Any chance the script mentioned here

 http://www.firebirdnews.org/?p=5027

 (which was supposed to be shipped with FB 2.5.1) will be available soon?
 I'm experiencing problems described in this article and the script would
 be most welcome.

 IIRC, all you need is just to alter the view USERS to its new definition
 that you can find here:

 http://firebird.svn.sourceforge.net/viewvc/firebird/firebird/branches/B2_5_Release/src/dbs/security.sql?revision=57144content-type=text%2Fplain

The only difference between the view in 2.1 and 2.5 is the additional 
part in the WHERE clause:

OR CURRENT_ROLE = 'RDB$ADMIN'

which makes sense for Tomasz error message initially described in 
firebird-support.

Tomasz, use ALTER VIEW and not RECREATE VIEW, because ALTER VIEW 
preserves SQL privileges.


Regards,
Thomas

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 2.5.2 RC1 - Trace API - Rock solid

2012-09-17 Thread Thomas Steinmaurer
Hello,

just letting you know, that the Trace API in 2.5.2 RC1 is rock solid so 
far. I'm having a test app simulating 150 client connections inserting 
into a GTT and 7 parallel trace sessions in FB TraceManager with all 
trace configuration options enabled capturing these events. No single 
server crash due to the Trace API so far. While this is not an ultimate 
test covering all possible aspects of the Trace API, it's a good sign 
compared to 2.5.1.

Well done and thanks for your efforts in that area!


Regards,
Thomas

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Firebird 2.5.3?

2012-09-13 Thread Thomas Steinmaurer
Hello,

current snapshot builds are prefixed with 2.5.3, and there is no sign 
regarding 2.5.2. What's the most recent strategy regarding the next 
stable post 2.5.1 release?

Thanks,
Thomas

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


  1   2   >