Claudio,
People, I think that true and yes are enough, the y value is superfluous:
bool Config::asBoolean(const ConfigFile::String value) {
return (atoi(value.data()) != 0) ||
value.equalsNoCase(true) ||
value.equalsNoCase(yes) ||
Vlad,
After more than a year of development, testing, switching on another
tasks and returning back i'm ready to commit shared page cache
implementation into trunk.
Great news!
...
About stability testing of different parts of the engine :
...
- shadow - not tested
I would like
09.05.2011 18:48, Leyne, Sean wrote:
I disagree. Shadow is the only method for synchronous replication
in Firebird now.
Synchronous replication on a single server is not replication.
Don't forget about NFS and iSCSI(?).
Shadow was designed as an early software RAID solution
1 - you are still using a Win98 system and so NTFS isn't supported???
NTFS is not supported on some forms of solaris, linux and other OS's we have
in the office - windows is not the only operating system on the market and
many standalone devices only support the win98/fat32 formats due to
Paul,
I don't know about the engine stats tracking but...
Does anyone know why these inconsistencies exist?
Are you running SuperServer, Classic or SuperClassic?
Have you considered the effect of garbage collection?
Have you considered the cost of indirect (ie. indexes) pages which could be
Dmitry
Ah, that is interesting. I don't think that is documented. I was under
the impression that stat_group 0 was cumulative for all connections
since the start of the server.
Stats don't exist without active connections, as there are no resources kept
inside the engine in the
Marius,
Now inprise.com is owned by someone else
And this is the project's problem, how?
There are likely thousands of documents/files which Inprise released which have
URLs which are now unreachable... that is just a fact of life. It just so
happens that a number of those documents are
All,
We will be making changes to our network infrastructure, which will affect
network connectivity. So, these resources will be unavailable during this time.
Sean
--
Doing More with Less: The Next Generation
All,
We will be making changes to our network infrastructure, which will affect
network connectivity. So, these resources will be unavailable during this time.
Sean
--
BlackBerryreg; DevCon Americas, Oct. 18-20,
I am unable to reach the tracker, does anyone else have this problem?
Seems to be down. I can't connect either.
The system ran out of disk space on the root partition...
Alex Peskoff fixed that problem and the system has been up for the last 6 hours.
Sean
In your example we see 7149 physical reads and 214192 times this
pages was referenced by the engine. To read a record engine needs to
access pointer page and (at least one) data page. You have ~100K records
so we can explain ~200K fetches.
Ok, but is there a way then to tell how
PS Snapshot (concurrency) transaction guarantees that once read
record could be read again and will be the same. So, in theory, we
can just re-read same data page when looking for next record.
Why in theory?
Because i want to be careful and don't want to make too early
Paul,
On Wednesday 16 November 2011 at 06:04 Dmitry Yemanov wrote:
Also, some
Windows versions are suspected in giving the file system cache too
high priority thus possibly swapping out the pages of the process
working set, so a largish internal page cache could prove itself to be
a
Adriano,
select char_length( SUBSTRING(col1 from 1 for 20)) from tbl_test
returns
20 so I was expecting index to work.
workaround
CREATE INDEX IDX1 ON tbl_test COMPUTED BY (CAST(SUBSTRING(col1
from 1
for 20) as varchar(20)))
This issue depends if we're allowed to change
Adriano,
CORE-3073 [1] requires special BLR verb meaning get the default value of a
field. There is request to expose the same functionality in SQL too, but
doesn't matter here.
These cascade triggers are system triggers but are backed-up and restored. If
we use new BLR on them, downgrades
Note that in Windows, we generate UUIDs with a WinAPI function so it
generates correct numbers, but in POSIX we just generate random data.
For Windows users this binary representation is also wrong now, cause
reserved bits is not documented in it.
You wrote that the WinAPI function
Dimitry,
27.12.2011 19:17, Leyne, Sean wrote:
That type of solution is not what I would define as a cluster.
As you wish. But the rest of world consider this kind of system to be
called
a shared-nothing cluster.
You are correct! a shared-nothing cluster is a type of cluster, one
Jesus
Single server without downtime is a myth anyway.
The problem is not downtime is how much downtime. Backup and restore is
so much downtime.
If that is the case, how much downtime is acceptable?
There are a couple of possible solutions which would reduce the downtime;
- a new
All,
In thinking about Yi Lu's imminent problem with the Firebird transaction number
size, I am wondering if as developers we have overlooked the reasonableness
of the situation (actually the lack thereof).
Reality: a simple backup / restore cycle is all that needs to be performed to
resolve
Ann,
- a new backup/restore tool which would use multiple readers/writers
to minimize execution time,
Here we're talking about a logical backup that can be used to restart
transaction numbers. Record numbers are based loosely on record storage
location. Since a logical backup/restore
All,
Microsoft will be introducing a new file system with Windows 8 Server, called
ReFS (Resilient File System), which is built on top of the existing NTFS, but
will deliver new features for scale and prevent data corruption...
Dmitry,
Splitting temp destinations into e.g. RAM disk and if this is
exhausted to regular disk is getting more and more popular, but due to
CORE-2422,
So far nobody has proved that this approach is better than adjusting
TempCacheLimit.
I don't see the TempCacheLimit as being related
Björn,
Executing a query with a little bit longer execution time I get negative
numbers for some values. Execution is done via IBExpert. Firebird ist 2.5.1
CS on Linux 64 bit Client Lib is 2.5.1 Windows 32 bit.
Prepare time = 63ms
Execute time = 43h 53m 31s 63ms
Avg fetch time =
The idea is to have a scheduler for records that on timeout can call a
trigger.
Many existed databases (such as Oracle, MS SQL Server and MySQL) contain
a much wider idea, of task scheduler, while my idea is different.
I do not like your proposal.
First, it would require that the database
-Original Message-
From: Claudio Valderrama C. [mailto:cva...@usa.net]
Sent: Tuesday, March 06, 2012 6:29 AM
-Original Message-
From: Alex Peshkoff [mailto:peshk...@mail.ru]
Sent: Martes, 06 de Marzo de 2012 8:06
Also want to agree, but I remember there were some
I think the solution (not hacks with dialects) to this problem is not
difficult.
Firebird don't need to change the way it does numeric/decimal arithmetics
and introduce another dialect leaving current and previous one for decades.
Firebird is right on the way it does.
So, add a new
06.03.2012 20:54, Adriano dos Santos Fernandes wrote:
It will be 0.333... (up to the maximum NUMBER scale precision).
The thing is that for operations like addition, subtraction, NUMBER
will work like NUMERIC (i.e., it's results are more precise than DOUBLE).
In this case much
Why max momory Allocated is near 30MB more than max memory used?
Looks like fragmentation and losses in memory manager
I have attached everything to CORE-3560, but i have seen is closed.
Thanks, Jesus
I have re-opened the case.
Sean
Michael,
while reviewing Firebird 2.5 packages for OpenSuSE Factory, our legal team
noticed that copyright notice on top of extern/SfIO/include/stdio.h claims
that it contains certain software code or other information proprietary to
ATT Corp.
What is the problem with the FB packages having
I wonder why you don't ask about whether distribution of this file is ok
directly in ATT?..
When ATT had resources which were developing Unix it might have been possible
to reach out to them.
But given that is no longer the case, I think it more likely that we could
raise Dennis
They have a column named TIMESTAMP which is a reserved word in Firebird,
and supposedly in many other RDBMS too (and in the SQL standard as well).
What the hell they are doing?
I have logged a case on the Jira tracker regarding this issue.
https://jira.atlassian.com/browse/JRA-28657
Sean
Actually, I just opened the TIMESTAMP Keyword case with Atlassian
IMHO, you did a little mistake in this ticket - you mentioned Firebird. If
you
simply had written what kind of idiot must be DB developer to choose
reserved word as a field's name, they wouldn't have had chance to
Actually, I just opened the TIMESTAMP Keyword case with Atlassian
IMHO, you did a little mistake in this ticket - you mentioned
Firebird. If you simply had written what kind of idiot must be DB
developer to choose reserved word as a field's name, they wouldn't
have had chance to
The only change is that newly created databases are created with some
meaningful charset, not with raw data. The rest remains as it is
now - those that want to manage it already, will be able to do this.
In this case why to configure the default? Let's hardcode it to UTF-8!
Yes,
I don't say that we don't need true debugger\profiler, no. But don't
limit trace functionality artificially.
Personally, I agree that custom (user generated) trace events could be a
useful addition, as they extend the application specific auditing tasks.
But I'm quite skeptic about the
Thomas,
I am also very skeptical about the need that to add this functionality to
the Trace API, as it falls into the area of PSQL debugging/profiling which is
not
what the current functionality is about*.
I don't propose to extend the Trace API in a way, which goes into debuging a
Claudio,
I think that making everyone pay the cost of the overhead generated by so
many hooks inside the engine is a very bad idea.
This is exactly my point.
It seems that the current approach has a high cost for all usage modes.
Sean
Dmitry,
12.07.2012 19:44, Paul Vinkenoog wrote:
So... have we implemented the DT and CTE features correctly?
I believe it has nothing to do with our implementation of DTs and CTEs.
Create a view with gen_id and and select that field thrice - you will get the
same result. And views are
Mark,
On 12-7-2012 22:14, Leyne, Sean wrote:
Bad example, I should have said that:
SELECT ... FROM ... WHERE ColumnA = COS( ColumnB)
Doesn't use an index when it should be able to, just as the engine is
able to use an index for this query
SELECT ... FROM ... WHERE
Mark,
I can't seem to connect to tracker.firebirdsql.org, does anybody else have
that problem?
I have been able to connect without issues from a client location in India.
Sean
--
Live Security Virtual Conference
On 20-8-2012 20:03, Leyne, Sean wrote:
Mark,
I can't seem to connect to tracker.firebirdsql.org, does anybody else
have that problem?
I have been able to connect without issues from a client location in India.
My traceroute ends somewhere in shawcable.net:
Unfortunately, our
23.08.2012 18:04, Adriano dos Santos Fernandes wrote:
I'm talking about:
create view v as select t1.*, t2.* from t1, t2;
select v.rdb$record_version from v;
IMHO, it should give Column unknown error. I.e. this pseudocolumn must
be defined for real tables only.
I tend to agree,
Hey Thomas,
The test included restoring the same scale 1 TPC-H database with setting
75 and 10 page buffers before running the backup, thus the database
backup had a different page buffers value.
In sum, according to trace: While the 75 page buffers restore took 601030ms,
the 10
Thomas,
The test included restoring the same scale 1 TPC-H database with
setting
75 and 10 page buffers before running the backup, thus the
database backup had a different page buffers value.
In sum, according to trace: While the 75 page buffers restore took
601030ms, the 10
Thomas,
The test included restoring the same scale 1 TPC-H database with
setting
75 and 10 page buffers before running the backup, thus the
database backup had a different page buffers value.
In sum, according to trace: While the 75 page buffers restore took
601030ms, the 10
Carlos,
create table a (
field1 computed by (field2 * 0.5),
field2 numeric (9,2)
);
returns:
Column does not belong to referenced table.
Dynamic SQL Error.
SQL error code = -206.
Column unknown.
FIELD2.
At line 2, column 22.
BUT
create table a (
field2 numeric (9,2),
Step 3 works fine, but when you extract the DDL of the table and try to run
it,
it will crash, since it will be extracted like:
CREATE TABLE A (
FIELD2 NUMERIC(9,2),
FIELD1 COMPUTED BY (field3 * 0.5),
FIELD3 NUMERIC(9,2)
);
Actually, that points out a problem with the
Dimitry,
15.09.2012 20:42, Leyne, Sean wrote:
The DDL extract should be processing computed fields after 'real' fields.
No. In this case recreated database will have different field order in
table.
This will affect select * queries.
Don't most data components bind to results based
On 15-09-2012 16:03, Doug Chamberlin wrote:
Having different order for SELECT * is much better than having
extracted DDL which will not run!
Order of fields can be altered with ALTER POSITION. But this is workaround
for a bug!
For clarity, which bug are you referring to?
Sean
Ng,
-Original Message-
From: ng [mailto:nazimon...@gmail.com]
Sent: Tuesday, September 18, 2012 4:24 PM
To: 'For discussion among Firebird Developers'
Subject: Re: [Firebird-devel] [FB-Tracker] Created: (CORE-3925) Creating self-
referential FK crashes database (bug-check) whether
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
On 31-10-2012 22:23, Leyne, Sean wrote:
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
may be Firebird 3 is the good time frame to rename our binaries ?
for example :
fb_sql, fb_bak, fb_sec, fb_fix, fb_stat, fb_nbackup, fb_qli, fb_pre, fb_split,
fb_qli
I would suggest:
fb_backup, fb_security, fb_fixup, fb_stats and fb_precompile
I realize that the names are longer than
Dmitry,
fb_backup, fb_security, fb_fixup, fb_stats and fb_precompile
I believe gpre stands for preprocess, not precompile.
Ok, fb_preprocess it is! ;-)
I realize that the names are longer than the original, but they are
much more meaningful
Speaking about meanings, I'd suggest
Speaking about meanings, I'd suggest this change:
gbak - fb_dump
nbackup - fb_backup
because IMO it better reflects their goals.
Although I was the one who approached Nikolay about the ideas for
nbackup, and paid for the development, I am not sure that nbackup is the
ideal
I was simply trying to say, that I even with my history with the utility, I
have a nagging feeling that nbackup could be better. So, I am not sure if
nbackup is worthy of the official blessing that fb_backup conveys.
I know that I had problems with Nbackup when I tried it with our
19.11.2012 17:41, Alex Peshkoff wrote:
As far as I remember in hex, but you may try yourself.
Thanks, I'm not so curious. And I didn't say big for nothing: I can't
imagine
SQL statement of size 3-4Gb. Firebird statement is limited to 64k, there is no
way to put big BLOB into it.
Ann,
Sweep work in this way or such different? If yes i should see many reads and
only few writes to disk but this not happend. I see 1TB writes to disc
for db size 52.74GB.
That seems extreme, but leads to several questions.
One is whether your application regularly makes large
Dmitry,
I understand that i can get more reads becouse of small cache but
why writes?
Every read into a cache full of dirty pages (modified by sweep) implies a page
write, because the engine needs to reuse some page buffer for reading.
That is reasonable, but many times more writes are
Ann,
So the number of individual pages read would equal the number pages in
the database, which means that the number of dirty pages writes should
be less than or equal the number db pages.
Not if some pages were forced out because the cache overflowed and then
had to be re-read.
That
Alex,
So the number of individual pages read would equal the number pages in
the database, which means that the number of dirty pages writes should be
less than or equal the number db pages.
Sean, take into account that for each deleted record version which changes
(deletes) index key we
Sean, currently code, calling UDF, looks this way
template typename T
T CALL_UDF(Jrd::Attachment* att, int (*entrypoint)(), UDF_ARG* args) {
Jrd::Attachment::Checkout attCout(att, FB_FUNCTION);
return ((T (*)(UDF_ARG, UDF_ARG, UDF_ARG, UDF_ARG, UDF_ARG,
UDF_ARG, UDF_ARG,
There are customers out there who are very concerned about security
and for them there should also be a note in the release notes.
The trouble of this solution is that many people use snapshot builds, already
named 2.5.3. And it has a number of other bugs fixed.
Anyone using snapshot
On 15/03/2013 07:32, Mark Rotteveel wrote:
But you are assuming that the user actually knows how to configure a
firewall (or even knows what a firewall is). Not all people who
install Firebird are system administrators or are aware for the need
to secure things. Serious users of
No one has said that LO will use the server install of Firebird, it could
just
as easily use the embedded engine which would not have any of the
network security issues which have been described.
Ah. I get the impression from what I read that they're not aware of the
embedded engine
17.03.2013 2:35, Leyne, Sean wrote:
Data and database integrity it one of Firebird best features.
But not in Embedded case. Memory corruption in host application will
corrupt database.
I think you meant to write might corrupt, corruption will not happen in all
cases.
Sean
All,
Very early this morning (2am EDT), the storage cluster which is used to host
these VMs suffered a critical iSCSI network failure of the storage (due to a
compatibility issue with IPv6).
This failure resulted in a loss of connectivity to the storage and thus a
shutdown of the hosts.
The
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.
Isn't
On the other hand: using select * for anything other than ad-hoc
queries is bad. Should we support that?
AFAIK, there's a long legacy, in Delphi components at least, of using SELECT *
as the dataset spec for emulating a table component (TTable and
derivatives). Sure, this goes back to
Back to the question, Vlad asked (we are already discussing how it could be
done and whether one or the other approach would fit): Is this a feature,
Firebird should support?
I'm not familiar enough with the SQL-specification to answer whether it's
standard compliant or not, but if it
Bad idea, IMHO. I predict a lot of support request I see in SHOW TABLE
that
field exists, but select throw me error that it doesn't. Error message must
clearly state its
reason: not enough rights to read this field.
That could be addressed by adding Permission or Accessible column to
similar to does not match x'##'-codes
-
Key: CORE-4114
URL: http://tracker.firebirdsql.org/browse/CORE-4114
Project: Firebird Core
Issue Type: Bug
Components: Engine
Affects
As this example points out, x'##'-codes are not properly matched by
similar
to:
select
iif(' ' similar to '[[:WHITESPACE:]]', 'T', 'F'),
iif(x'20' similar to '[[:WHITESPACE:]]', 'T', 'F'),
iif(x'20' similar to '%', 'T', 'F') from RDB$DATABASE
returns 'T', 'F', 'F'
I
The two links at IBPhoenix for the original license (IPL)
http://www.ibphoenix.com/about/firebird/ipl
and the (IDPL)
http://www.ibphoenix.com/about/firebird/idpl
Are true representatives of both licenses.
The IPL is the original license, that was released along with the original
It is not too late to add multi-level namespace (schema) and expand the
width of sql object names so that utf8 languages can have meaningful names
for their database objects.
AFAIK, changes to the length of objects identifiers are not in scope for 3.0.
Much to my chagrin.
Sean
Pavel
On Aug 22, 2013, at 7:37 AM, Pavel Zotov (JIRA) trac...@firebirdsql.org
wrote:
Wrong value of data pages average fill percent in GSTAT in case of
storing varchars that much longer than page size
---
You seem to be very active in
I think an USING clause would be a great addition:
GENERATED BY DEFAULT AS IDENTITY [USING SEQUENCE name]
What do you think?
What Sequence (name) would be used if the USING was omitted?
Sean
--
Learn the
I think an USING clause would be a great addition:
GENERATED BY DEFAULT AS IDENTITY [USING SEQUENCE name]
What do you think?
What Sequence (name) would be used if the USING was omitted?
A generated one, like now and like happens with constraints and indexes.
Aren't IDENTITY
On 27/08/2013 14:11, Dmitry Yemanov wrote:
27.08.2013 20:03, Adriano dos Santos Fernandes wrote:
I think an USING clause would be a great addition:
GENERATED BY DEFAULT AS IDENTITY [USING SEQUENCE name]
What do you think?
Basically, I don't mind, but the behavior will be different
I think an USING clause would be a great addition:
GENERATED BY DEFAULT AS IDENTITY [USING SEQUENCE name]
What do you think?
What Sequence (name) would be used if the USING was omitted?
A generated one, like now and like happens with constraints and indexes.
Aren't IDENTITY
I also am not sure if a GENERATED BY DEFAULT AS ... makes sense for a
computed column, as it would imply it is a normal column that has a default
(which already has a separate clause) and not a computed one.
That also struck me as odd.
DEFAULT only makes sense for persisted fields, since
In tracker case 4212, Vlad Khorsun wrote:
It is documented since introducing GTT in v2.1 that constraints between
temporary and permanent tables is forbidden. This requirement is per SQL
standard.
I want to be sure that this is correct (sorry Vlad), cus it seems wrong.
I can see that
In tracker case 4212, Vlad Khorsun wrote:
It is documented since introducing GTT in v2.1 that
constraints between temporary and permanent tables is forbidden. This
requirement is per SQL standard.
I want to be sure that this is correct (sorry Vlad), cus it seems wrong.
I will point out that, the specs does allow for GTT to reference GTT,
which is not what your original comment stated (that a GTT could not have
any dependencies/references).
I meant exactly this, sorry if it was not clear.
I have added comments to the 2 related tracker cases,
16.10.2013 14:58, Alex Peshkoff wrote:
Telling true I do not remember it...
But quite possible.
Most likely my memory doesn't serve me well. Google shows me only
thread where Carlos H. Cantu tested it up to current limit and got 3x speed
up, then DE suggested to test it beyond the
Karol,
Please explain why you need to do this.
I’d like to understand the usage which would require such a feature/function.
Sean
From: liviusliv...@poczta.onet.pl [mailto:liviusliv...@poczta.onet.pl]
Sent: Thursday, October 31, 2013 11:22 AM
To: For discussion among Firebird Developers
many times i need to return more then one field from subquery but this is
not possible and then i must do some join and group by or write stored proc
or other trick like concat fields by ||
My question is Is this because of SQL standard or this is not simple to
develop?
sample
Dmitrijs,
I've enabled ARM64 build of firebird2.5 in ubuntu.
I don't have access to arm64 machines and hence i have no idea if it actually
runs =) it does compile though.
While it is good that you worked on the port.
If you don't have an platform to test, why would you bother with the
Treeve,
I regularly run a set scripts to migrate an old Paradox db to Firebird.
The scripts have the following pattern.
1.define original ddl
2.import data
3.alter tables
4.add indexes
5.rearrange data
6.check consistency
7.add views
8.delete old data
Since a few days I get an
-Original Message-
From: Leyne, Sean [mailto:s...@broadviewsoftware.com]
Sent: Tuesday, January 21, 2014 12:35 PM
To: For discussion among Firebird Developers
Subject: Re: [Firebird-devel] recent regression in fb3
Treeve,
This seems to be an item which should really
My last post got munged:
It should have read:
The reality is that there are only 2 set of options::
EngineMode/EngineType = Classic | SuperServer | SuperClassic
DatabaseAccess = Shared | Single
The install options should take their cue from the config settings, and not
require inline
On Wednesday 29 January 2014 17:20:16 Dmitry Yemanov wrote:
29.01.2014 18:37, Paul Reeves wrote:
I guess what we really need is to document in firebird.conf how the
-m switch affects the other two settings. There would seem to be a
total of eight combinations.
Lack of -m switch
29.01.2014 21:10, Leyne, Sean wrote:
EngineMode/EngineType = Classic | SuperServer | SuperClassic
DatabaseAccess = Shared | Single
The install options should take their cue from the config settings, and not
require inline switches.
Config options are database wise, so using
Technically it is possible to make single instance of firebird.exe to
handle
some attachment requests by forking new CS process and another
attachment requests handling by itself (SS\SC). The question - if it is
possible
to let him know desired mode for given database...
This would
Firebird.msg is not installed with client
-
Key: CORE-4336
URL: http://tracker.firebirdsql.org/browse/CORE-4336
Project: Firebird Core
Issue Type: Bug
Components: Installation
12.02.2014 20:17, Leyne, Sean wrote:
I don't think this case is correct.
The msg file is not supposed to go to the system directory.
The msg file is supposed to be one level up from client library. Public
library
is supposed to go to a directory where every application can easily
Can you read? Registry settings MUST NOT being set up if several Firebird
instances/versions are installed at the same time. Otherwise all of them will
use the same config file, etc.
If you have multiple versions, you should not use instclient and should place
FBClient.dll and the
Probably. But it is easy to isolate your application from
customer's environment and make it use your private copy of fbclient.dll +
firebird.msg.
Yes. And as the result to get private environment incompatible with the
rest of system that leads to application failure.
How so,
13.02.2014 0:38, Leyne, Sean wrote:
How so, you create your own install which create a \client folder
underneath your application folder.
You can install:
- your application into the application folder
- firebird.msg into the application folder
- FBCLient.dll into the application
The problemas was UAC. When I turned it off, all works normally.
UAC should not impact services.
Where you running FB as an application or service?
What folder was your application installed in?
What folder was FB installed in?
Sean
1 - 100 of 391 matches
Mail list logo