So for what is listener responsible for? Only for spawning new processes?
Hi guys,
We are using Firebird 2.5 Classic. Today during tests we have noticed that our
application is still writing to the databse after the service has been turned
off. No error has been returned. Is this a by design behaviour?
Thanks for your reply.
Thank you Ann for clarification.
I would have to dig in for example o that behavior, maybe it only seemed to me
that this has occurred.
Best regards.
From: firebird-support@yahoogroups.com
[mailto:firebird-support@yahoogroups.com]
Sent: Thursday, March 24, 2016 4:34 PM
To: firebird-s
Hello,
I have two procedures:
1. PROC_A
2. PROC_B - which is using internally PROC_A.
Now, I've made some changes in PROC_A, do I need to recompile PROC_B as well?
If so, what is the shortest way of doing it?
I am pretty sure I've noticed some bad behaviour of PROC_B if I've left it
without r
Thank you Mark.
For future poor souls that will spend hours trying to fix this, this post was
helpful in configuration xinetd: Firebird News ยป Firebird Classic 2.5.x with
xinetd on Ubuntu/Debian systems
http://www.firebirdnews.org/firebird-classic-2-5-x-with-xinetd-on-ubuntudebian-systems/
@Mark I've tried 127.0.0.1 - the same error.
@Steve I've instaled xinetd (found some suggestions about that on stackoverflow)
I've run such command:
root@john-VirtualBox:/etc/init.d# netstat -an |grep 3050
tcp6 0 0 ::1:3050:::*LISTEN
unix 2
Hello guys,
could you be so kind and help me to diagnose problem with connecting to
Firebird on Ubuntu? I do not have experience with linux (haven't touched it for
years). Today I've installed Ubuntu on VM and installed Firebird classic using
instructions from here: https://help.ubuntu.com/comm
Thank you guys.
You know, sometimes it is just easier to delete everything and recreate it once
gain, from the algorithmic point of view. But if it is better (yes I have
foreign keys and unique keys) to update things than i will make an extra effort
to do it properly.
Hello,
I need to rebuild some records in my database. I have to choices:
1. Firstly I delete set of records and then insert new ones.
2. I update the existing ones.
What solution is preferable? Will scenerio number 1. cause more garbage in
database and decrease its performance?
Thank you.
So, if I change the order of fields in the index I can speed things up. Could
someone explain me why it works like it works? What are the internals behind
this?
Hello guys,
today I've stumbled upon problem with performance. I have such table:
CREATE TABLE DETAILS_DATA
(
ID_MASTER INTEGER NOT NULL,
ID_PARAM INTEGER NOT NULL,
PARAM_VALUE VARCHAR(64) NOT NULL
);
ALTER TABLE DETAILS_DATA ADD CONSTRAINT FK_DETAILS_DATA_ID_MASTER
FOREIGN KEY (ID_MASTER
If you do not notice any performance then do not worry ahead.
In case of any performance degradation you will easily switch to persistent
column with trigger on INSERT/UPDATE.
Thank you guys for your answers.
>> I could understand if you think that tx 2 is still active, but why do you
>> think
>>that tx 3, tx 4 ... tx 491 is also active ??? What make you think so ?
The program which I use for analyzing gstat outputfile says so. But of course
you are right, this
Hello,
here is the output from gstat.
Database header page information:
Flags0
Checksum12345
Generation500
Page size16384
ODS version11.2
Oldest transaction1
Oldest active2
Oldest snapshot2
Next tr
Thanks Karol,
I will make a test case and report it to bugtracker.
Hello guys,
today I've stumbled on some strange (in my opinion) behaviour.
Firstly, create these two structures:
CREATE GLOBAL TEMPORARY TABLE GLB_CS_TEMP
(
ID_MON_OBJECT INTEGER NOT NULL,
ID_PARAM INTEGER NOT NULL,
MEASUREMENT_DATE TIMESTAMP,
PARAM_VALUE VARCHAR(64) DEFAULT '',
CONSTR
If application works very well then don't fix it if it ain't broken ;-)
If you really want to then upgrade to 2.5.4 and make the test by yourself by
executing most time consuming queries.
Thank you Dmitry.
Here are the results of gstat:
FLAT_DATA (290)
Primary pointer page: 5239142, Index root page: 5239147
Average record length: 213.90, total records: 8288203
Average version length: 0.00, total versions: 0, max versions: 0
Data pages: 533746, data page slots: 5337
Really no answers apart from automatic spam message? ;-)
Please, help me to understand this...:)
Hello,
could you please take a look at this table?
CREATE TABLE DETAILS_DATA
(
ID_MASTER INTEGER NOT NULL,
ID_PARAM INTEGER NOT NULL,
PARAM_VALUE VARCHAR(64) NOT NULL
);
ALTER TABLE DETAILS_DATA ADD CONSTRAINT FK_DETAILS_DATA_ID_MASTER
FOREIGN KEY (ID_MASTER) REFERENCES MASTER_DATA (ID
>You might be able to use binary string literals:
>Mark
Perfect, thanks!
---In firebird-support@yahoogroups.com, wrote :
At 07:10 p.m. 4/06/2015, brucedickinson@... mailto:brucedickinson@...
[firebird-support] wrote:
>Hello,
>
>I need to produce delimited text output from my stored procedure, for example:
>
>23;65;some text;
>
>The thing is that semic
Hello,
I need to produce delimited text output from my stored procedure, for example:
23;65;some text;
The thing is that semicolon ";" might appear in one of the delimited fields and
this will cause some bugs on the client side. So I want to change this
character to a less common one. I've dec
Thank you guys for your ideas, I will look onto them.
Hello,
is it possible by using CAST or in any other way to get database error when
casting such number to integer?
SELECT CAST('13.245' AS INTEGER) FROM RDB$DATABASE
This gives 13 but instead I would like to get an error because precision is
lost.
However, I would like to NOT get an error whe
Hi Brian,
I would try to recreate this problem on Windows to check if this is a platform
specific bug. Also, Lazarus forum is very actvite, I am sure that if you ask
your question there, someone will help you.
Good luck.
Thank you all for taking time to explain me this. Now I get it.
Regards :)
Hello,
here is full example:
CREATE TABLE TABLE_1
(
ID INTEGER NOT NULL,
NAME VARCHAR(32),
CONSTRAINT PK_TABLE_1 PRIMARY KEY (ID)
);
GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE
ON TABLE_1 TO SYSDBA WITH GRANT OPTION;
CREATE TABLE TABLE_2
(
ID INTEGER NOT NULL,
TABLE_1_ID
Thank you Alexey.
This is nice tool, however it does not show how much space is taken by given
table and its indices... I am sure this can be deduced by reading gstat output
file but I don't know how...
I've tried to also count leaf buckets * page size but still after summing up
everything I am getting 11 GB instead of 21 GB.
Thank you Mark, I did not know that this is possible.
Hi guys.
I know that I need to use gstat, and I know that I have detailed description
about it here: Gstat Examples And Interpretation
http://www.firebirdsql.org/manual/gstat-example-header.html
http://www.firebirdsql.org/manual/gstat-example-header.html
Gstat Examples And Interpretation
Hi,
I am trying such command:
gstat.exe 10.10.3.2:/Base/2534/2534.FDB -p password -u user -d
But I am getting an error that specified patch could not be find. I am guessing
that I can not run gstat over a network?
Regards.
I think I've found ellegant and simple solution. However, I am afraid it might
be very slow for large amount of data :(
Test data with holes in sequence:
INSERT INTO MYTABLE (ID, DATE_TIME, "TYPE") VALUES ('1', '01.01.2015,
00:00:00.000', 'A');
INSERT INTO MYTABLE (ID, DATE_TIME, "TYPE") VALUES
I've posted my solution but I did not appear so I am reposting it.
I found simple solution.
The test data:
INSERT INTO MYTABLE (ID, DATE_TIME, "TYPE") VALUES ('1', '01.01.2015,
00:00:00.000', 'A');
INSERT INTO MYTABLE (ID, DATE_TIME, "TYPE") VALUES ('5', '01.01.2015,
00:01:00.000', 'A');
INSE
Svein, if you could be so kind and show me solution which includes holes in
sequence that would be great. Once again, thank you :)
Svein,
this is amazingly smart solution. Took me like one hour to understand what is
going on :-) I suggested window functions becausue I thought they would be most
effective in solving this. Yes there can be holes in sequence in my data,but
thank you for your time and proposing this solution!
>By what logic do you arrive at this result?
I don't know if I can explain it any better. I want to find "clusters" of "A",
"B", "C" and so on, group them into one row, get the starting date from first
found row and ending date from the last found row in cluster.
Hi guys.
I am having such data:
ID DATE_TIMETYPE
101.01.2015, 00:00:00.000A
201.01.2015, 00:01:00.000A
301.01.2015, 00:02:00.000A
401.01.2015, 00:10:00.000B
501.01.2015, 00:15:00.000B
601.01.2015, 00:20:00.000A
701.01.201
Hi,
I do not know if this is the correct place to post my question. I am not sure
wheter this is a bug or not so I am not posting it on a bug tracker. Feel free
to point me in right direction here.
I am using Firebird 2.5.2 Classic on Windows. I've tried to cause some
connection error to test
Thank you Vlad!
That worked for me, now I can test my application against this error.
Here I've found the same question but still without answer: IBPP, a C++ API for
Firebird Server / Mailing Lists
http://sourceforge.net/p/ibpp/mailman/message/29303088/
http://sourceforge.net/p/ibpp/mailman/message/29303088/
IBPP, a C++ API for Firebird Server / Mailing Lists
http://sourc
Hello,
My application is handling different kinds of connection errors:
335544721 network_error Unable to complete network request to host "@1".
335544722 net_connect_err Failed to establish a connection.
335544726 net_read_err Error reading data from the connection.
335544727 net_write_err Erro
>>Yes. Text file is faster however there is a overhead of creating a new file
>>before Firebird can you it, so my >>approach is faster, overall. When I
>>finish building first scrip I call a thread that send this to Firebird
>>server. >>While the thread is sengind (waiting) I'm free to co
---In firebird-support@yahoogroups.com, wrote :
>>IMHO what is going on is that Firebird is using the lock file (for Classic
>>installation) to synchronize between >>various connections (threads in this
>>case) to allow one by one to write to FDB file.
I hope that Vlad or Dmitry will tell
Hi Gareth,
check this out: Devrace FIBPlus: Optimization of network traffic in Delphi and
C++ Builder applications http://www.devrace.com/en/fibplus/articles/4287.php
http://www.devrace.com/en/fibplus/articles/4287.php
Devrace FIBPlus: Optimization of network traff...
http://www.devrace.
Hello guys,
Few months ago I've asked you (here:
https://groups.yahoo.com/neo/groups/firebird-support/conversations/topics/125426
) about your experiences regarding multithreaded operations on the database.
Since then, I've implemented my solution, but after testing I see that the
performance
Vlad,
that helped me a lot, thank you. It is good to know what is going under the
hood of Firebird.
Now everything is much clearer for me and I know how to proceed with my problem.
Best regards.
No need to apologize Walter. Thanks for trying to help me out! :)
Regards.
Walter,
I've tested what you've said. But it does not matter which transactions blocks
record first (older or "younger"). When I do it slowly..it works ok. But if I
start to spam those inserts with many inserts per second then I got deadlock.
Thanks Set,
unfortunately my case is exactly like I've described it above.
I like your idea, thanks for sharing it, will have it at the back of my head as
solution for other problems.
Walter,
thank you very much for trying to explain that to me. Unfortunately I've got
lost somewhere in the middle of your response...
>>- If you are updating or deleting just one row, then no conflict can happen
>>with your settings. But if you want >>to update or delete several rows then
Thank you Hugo, I was bit reluctant to use WITH LOCK since documentation
discourages its usage.
I've tried it but it did not help.
Documentation says:
"The main purposes of explicit locks are (1) to prevent expensive handling of
update conflict errors in heavily loaded application"
this is the
I see, thanks for clarification.
Just one more thing: that works as expected (no deadlock exception) when I am
not spamming updates to table. For example:
Transaction 1: Update, no commit.
Transaction 2: Update, (transaction starts waiting).
Transaction 1: Commit;
Transaction 2: (Stops waiting) Commit;
I do not understand when
Hi,
I have a very simple table:
CREATE TABLE PARAMS
(
ID INTEGER NOT NULL,
NAME VARCHAR(32) NOT NULL,
CONSTRAINT PK_PARAMS PRIMARY KEY (ID),
CONSTRAINT UNQ_PARAMS UNIQUE (NAME)
);
I have two threads which constantly and at the same time are writing to this
table:
UPDATE OR INSERT INTO
Thanks,
had no idea about USING clause :)
Hi guys,
in our database I see two naming conventions for foreign key columns:
1.
_ID
2.
ID_
which one do you use and why?
I see that in system tables the first convention is used (f.e.
MON$TRANSACTION_ID, MON$ATTACHMENT_ID)
Thanks for your opinion.
@Dixon It is never to late to join conversation;) Thanks for your suggestions,
I've found some interesting methods in my client's library.
@Doychin: I am using Delphi and FIBPlus. I am not sure if we mean the same
thing by "batch script". Some guys at my company prefer to generate a long
script
Thank you guys for your input! I appreciate it!
I have some doubts.. isn't TCP/IP a bottleneck here? I mean, I am sending for
example 4 times (4 threads) more data to insert via network.
@Doychin I do have like 2-3 indexes per table but the speed in single thread
was sufficient. Thanks, I hope
Judging by the silence.. either noone has tried that because results are
obvious or my question is beloging to the wrong group or...? :)
Hi,
do you have any experience in selecting from / inserting to table from multiple
threads? Is it faster in comparision to one thread which selects / inserts data
in queue?
What is your opinion on this? My gut tells me that it will be always slower in
comparision to single thread. But maybe I
Thank you.
Thanks again Helen:) Now I feel kinda embarassed because I should check it
before creating this topic, but for the other hand..I wouldn't get Dmitry's
attention;) so..I will use the occasion and ask:
Dmitry, few years ago there was a rumour that connecting through TCP/IP was
slower than through
Thanks Helen for the nice explanation.
Out of curiosity I need to check what do you write about connections and these
protocols in your books. :)
The thing is that I am not able to find any information about XNET in the
Internet. I've looked thorougly. Could you point me to any reliable source
Thank you,
so I know that the second connection might be blocked by the Firewall but what
are the internal differences between these two type of connections?
Regards.
Hi guys,
(I've already asked for this but my topic hasn't occured since two hours on the
group so I am trying again.)
I know that I can connect to Firebird (on Windows) by specifying connection
string in two ways:
1. C:\MyDB.FDB
2. localhost:C:\MyFDB.FDB
I am speaking here about local connect
> What OS is the client/customer system?
It is Windows server 64 bit, Firebird is 32 bit.
Thank you Carlos,
I will try to setup those TCP/IP options but something tells me that those
fb_inet_server processes were hanging on client machine way longer than 2
hours...
Hi guys,
We have few applications that are..lets say far from beeing stable;) Those
applications spawn multiple threads and each of them have its own connection to
database. So... there is a lot of fb_inet_server.exe processes and that is
fine. However, as I said, our applications are unstable
Thanks guys.
I haven't thought about scanning all the rows with SELECT after DELETE but it
might be something. Perhaps FB 3.0 will help us with this.
Hi,
1. I've deleted 50 records from TABLE A. I've commited transaction.
2. I made SELECT * FROM TABLE A. Transaction was starting for a very long time.
I just wanted to make sure that there is no way to prevent this behaviour? I
mean, I can not delay somehow clearing of this garbage?
As fa
>Hello, it seems to me that project closed.
>One of the part of Delphi XE5(there is version for XE4 too, but like
>additional pack components) and higher is >FireDac(ex AnyDAC) it's more
>powerful set of components for database access than FibPlus.
Well, not in the case of Firebird. I've made a
73 matches
Mail list logo