BDNradio: 8 Hours of InterBase replay

By: John Kaster

Abstract: Listen to the replay of the BDNradio broadcast of 8 hours on InterBase

Table of Contents

Broadcast Agenda

VIP Lounge

Public chat room

This is the replay and chat room log of 8 hours of InterBase on BDNradio. The listen links provide a streaming WMA replay. The download links are in MP3 format, and can be either downloaded or listened to by click on them directly.

    Broadcast Agenda









Michael Faisst

Listen Download

Introduction, Overview, State of InterBase




Daniel Magin

Listen Download

InterBase usage in Germany/Europe, and cool tools for Delphi and InterBase




Andreano Lanusse and Decio Moreira of Braspress

Listen Download

Braspress case study, log visualization, and Brasilian InterBase partner program




Rob Schieck and Jeff Overcash

Listen Download

Reliability and scalability of InterBase, IBX, case study




Tom Wilk of Logistics Health

Listen Download

InterBase UDFs, Linux, IBX, and DataSnap




Craig Stuntz

Listen Download

Performance Analysis and Tuning in InterBase




Quinn Wildman and Gabe Goldfield

Listen Download

Maintenance, Support, and Installation




Impromptu Break




Sriram Balasubramanian, Charlie Caro, Shaunak Mistry

Listen Download

What's New in InterBase 7.5, future plans for InterBase, JDBC and other driver support




Bill Todd

Listen Download

Understanding InterBase Transactions




Ramesh Theivendran

Listen Download

The InterBase Borland Data Provider (BDP) and dbExpress driver




Michael Faisst

Listen Download


    VIP Lounge

jkaster inserts the following link:
jkaster: QualityCentral URL
jkaster inserts the following link:
jkaster: Agenda (always finalized at the last minute!) has been posted to EventCentral
jkaster: jeff isn’t here yet, but you can submit a question to ask him later
jkaster: sorry, I mean he’s talking later
jkaster: since he’s here in the chat room
jkaster: just call me John ;)
jkaster inserts the following link:

jkaster inserts the following link:
jkaster inserts the following link:

jkaster inserts the following link:
jkaster:MartijnT: "John, thanks for the suggestion - still nothing. My list of "protocols" doesn’t list "MMS" either :-(" - sorry about that. keep trying, and also try the replays if you can’t get anywhere

jkaster inserts the following link:
jkaster: remember to register and click "I am listening" to be eligible for prizes and let us know you’re out there!
jkaster: you can get automatically registered from your Borland USER cookie when you have logged in from BDN

jkaster inserts the following link:
jkaster inserts the following link:
jkaster inserts the following link:
jkaster: New standalone version of IB Performance Monitor

jkaster: Craig just posted a new performance monitor to CodeCentral

jkaster inserts the following link:
jkaster: (for those of you who may have just joined)

jkaster: Anders Melander, congratulations on your prize: "Grant Manager 3 for InterBase"
jkaster inserts the following link:

jkaster: welcome, andreano!
andreano: This is BrasPress
jkaster inserts the following link:

jkaster:quinn: "The InterBase 7.x companion tools CD has a utility to pump data from MSSQL. I’ve never tried it though ..." - thanks Quinn

andreano: no www
jkaster inserts the following link:

jkaster: Congratulations Philippe Menoud for winning eDocEngine + PDFtoolkit Standard VCL Bundle
jkaster inserts the following link:

aohlsson: Jeff Overcash
aohlsson: And Rob Schieck
jkaster: lol. Rob will be talking too
jkaster: agenda is posted here:
jkaster inserts the following link:

jkaster: unixguru, I was just joking. We know how Jeff likes to roam ;)
jkaster: seems Rob has a bit of a connection issue for Skype ...
jkaster: at least I’m guessing that’s the issue
jkaster: are you able to hear him ok?
jkaster: sorry ... we’ll boost him in the replay. he’s also cutting out a bit :(
jkaster: Jeff is loud and clear, so the problem is boosting might distort him

jkaster inserts the following link:
jkaster: Jeff’s CodeCentral author page

jkaster:Melander: "Is cleaning up the IB Console GUI and making it consistent a priority? Do you need help? I’m embarrased to let my customers use IBC." - jeff: The primary thing going on right now is with Galen. We definitely want help.

jkaster:Melander: "Not a Q, but IMO what IB needs is a professional, quality GUI tool in-the-box. This is what the customer will judge IB by (GUI wise), not the quality of 3rd party tools."agreed

jkaster: fuzari, see for links to audio and everything else, including agenda
jkaster inserts the following link:

jkaster:boro: "I would like to test it and compare with our >200GB SQL Server DB... but not sure how to quicly move the existing data from SQL server to interbase" - jeff: There’s a data pump at, and Data Junction ...

jkaster: also the old BDE data pump
jkaster inserts the following link:
jkaster inserts the following link:

jkaster: dmagin: or free tool (ADO/BDE/ODBC sources (such as dBase, Paradox, Access, MSSQL, Sybase, Oracle, DB2 etc) and native Interbase on:
jkaster:Melander: "What is Galen?" - jeff: You’ll find him in the newsgroups. You can email Jeff and contact him about it.

jkaster:jkaster: "What’s going on with the ODBC driver in 7.5.1?" - jeff: licensing ...
jkaster inserts the following link:!default.jspa?categoryID=157&externalID=2411&fromSearchPage=true

jkaster: From Quinn: Regarding BLR which Jeff has talked about, people might find the following interesting
jkaster:albertrs: "Thumbs Up for Jeff !" - agreed!

jkaster:eWolverin: "What type of hardware? HP, Dell, IBM?" - tom: our hardware is Dell mostly. We have 4GB of RAM on our production server, Quad Xeon, Windows 2003

jkaster:eWolverin: "Do you have a disaster recovery plan with IB? How does IB make it easier to recover?" - tom: As everyone knows, IB does have very robust recoverability. To be honest, we don’t see a lot of crashes ... every time we have had a problem, we’ve been able to do an amend and get back to where we were before the crash.

jkaster: eWolverin, will keep your question for Quinn, ok?
jkaster inserts the following link:

jkaster: Craig’s CodeCentral page
jkaster:quinn: "Craig - why don’t you put planalyzer in IBConsole?" - Craig: basically, because I’ve been trying to avoid working on IBConsole too much. (laughs)

jkaster:Melander: "Can something be done, in Planalyzer or IB, to make Planalyzer faster. Sometimes it’s extremely slow on complex queries." - craig: well, I’m changing the client application to not use DataSnap, which isn’t the ideal client for something like PLANalyzer. ...

jkaster:eWolverin: "How well does Planalyzer handle nested subqueries? I don’t use them, bug I have to debug them." - craig: That’s something it will represent. For nested queries, IB returns more than one plan.

jkaster:Melander: "One of the things I miss in IB/Planalyzer, compared to say MSSQL Query Analyzer, is the ability to get statistics on I/O and CPU cost. Also Query Analyzer’s plan graph is quite nice and easy to read." - craig: Let’s take them individually. I/O and CPU cost is something IB does not return. The plan graph does leave a little bit to be desired right now.

aohlsson: 8 seconds flat!
aohlsson: :)
aohlsson: The reason we have to run the streaming machine on batteries is that the power supply somehow feedbacks a whole bunch of noise (as you could hear for about 8 seconds there). Some day we’ll ask an audio expert what that’s all about. We’ve tried just about everything...

jkaster: or ask Dell why the interference happens ...

jkaster:dmagin: "to craig: can we have in future plan tool wich runs all sql statemts wich are stored in a txt file and write the plan. that’s good to analyse coplete application when we can export all sql’s." - craig: Any feature request for performance monitor should be put in for IB Console on QualityCentral.

jkaster: sorry, for PLANalyzer email craig directly
aohlsson inserts the following link:

aohlsson: Craig’s blog above
jkaster: PLANalyzer will be added to QC today
jkaster:Melander: "Snapshot: Like a gbak backup..." - craig: gbak runs in a snapshot transaction because it has to get the entire database in a consistent state. if a future version of IB does partial or incremental backup, this could become a much smaller issue.

jkaster: dpalley, use /ask to ask questions, or the ask link at the bottom of the browser window
jkaster:jkaster: "from dpalley: Regarding performance monitor, are there any plans to add server-wide monitoring instead of database-wide?" - craig: I have heard this might be coming available from the InterBase team, and I would love to do it once it’s possible.

jkaster inserts the following link:
jkaster inserts the following link:
jkaster: Agenda is posted on EventCentral

jkaster:Kalle: "I can’t find the schedule for this broadcast. Does anyone know when it’ll be appropriate to ask licensing questions?" - when Michael Faisst is back on, or perhaps R&D

jkaster:Melander: "How come maintenance and support can’t be purchased online? You could at least list the prices." - quinn: software assurance is available online with the product purchase. with the premium and advantage support, those require a purchase order and a minimum or percentage.

jkaster:dmagin: "to gabe and also for var partners a complete silent install with registration (also for info)" - gabe: that’s for vars, they’ll have to contact Borland. You’ll get a superkey that overrides registration.

aohlsson:Kalle: "Please adjust the volume up a little for the two chaps." - They’re up as far as it can go without significant noise. We’ll adjust levels on the edited version when we post it.

jkaster:dmagin: "only for info: a lot of linux useres do no know there is also a text based install (if i rememeber)" - thanks for prompting the discussion, Daniel :D

jkaster inserts the following link:

jkaster:rcmagno: "ibx would like to know if the components irao to exist in proximas versions of delphi ?" - please clarify or restate this question. We don’t understand it, sorry.
jkaster: thanks andreano
jkaster: agenda has been extended and updated to bring Ramesh in
jkaster inserts the following link:
jkaster: sorry for the mix-up ... my fault!

jkaster wonders what Craig has done to ParamStr ...

jkaster: Craig, I’ve always been impressed by you ;)

jkaster:Melander: "I’m seeing 100,000 context switches/S on a busy 4 way HT system with both v7.1 and 7.5.1. Is this normal, can anything be done about it (at my end) and does it matter?" - sri: What do you observe if you turn off hypethreading?

jkaster:eWolverin: "As Interbase becomes SMP aware, what about NUMA awareness?" - charlie: He’s talking about Non-Uniform Memory Access machines, and we don’t have anything in the plans to directly address this.

jkaster:dmagin: "for cahrlie caro later: can we have a debug switch in ibconfig to write in a txt file or temp table all sql. statments from clients fired up to the server?" - charlie: I can’t tell you how many times I have heard that, and there’s a lot of different ways to do that.

jkaster:eWolverin: "Sorry, I meant disaster recovery as in rebuild at another location. Quick install and restoration." - shaunak: we do have plans to facilitate this.

jkaster:eWolverin: "Did someone ask about simulating virtual instances, like in SQL Server?" - shaunak: When I looked at this question, I googled, and it looks more like a clustering kind of situation.

jkaster:Melander: "We discussed earlier that in order for Planalyzer to report optimization relevant information like I/O and CPU cost, IB needs to record and publish these statistics per statement. Any chance of this in the near future? Thoughts?" - sri: We have defiintely seen this request before. First we’re going to address scalability and performance of the server itself. We’ll look into this.

jkaster:RobJLove: "Any plans to support SQL Enhancements like SELECT * FROM (SELECT A,B FROM TBL) , or IF/CASE WHEN ?" - charlie: I have done some research on that, but it’s not something that’s real high on our customer agenda.

jkaster:overcash: "Any more thoughts on haveing insert statments return the RDB$DB_KEY generated by the insert?" - charlie: That kinda led into what I just explained. Rather than having new syntax, I think it would be pretty simple to use SQL to get the value back from that.

jkaster:overcash: "Any plans on a .NET manged gds32 client?" - shaunak: Ramesh and I have discussed this in the past. It’s something on the list. It might make sense to have something like this with an embedded version of IB.

jkaster:overcash: "Any chance of getting the ability to impersonate a user on a connection. IOW in a conncetion pool the conenctions are established with a user, but from a trigger standpoint I’d want the USER variable to return the impersonated user." - shaunak: We haven’t really thought about this so we don’t really have a plan for something along these lines, but we can see the need. Good request.

jkaster:overcash: "Can we please get direct update of blob fields with strings without the need to go through paramters?" - charlie: That is one of the things that was on our original laundry list to do for 7.5

jkaster:overcash: "Charlie als once talked about insert into .. returning values <cols>" - charlie: again, I don’t see a need to come up with a syntax like that. I would use a virtual table

aohlsson thinks that smoking is like COM. Don’t do it. ;)

jkaste thinks Lino says that, too! :P

aohlsson: I just had to paraphrase Lino Tadros... :)

jkaster: .. "haven’t started ..."
jkaster: Rudy should add it to his signatures

jkaster inserts the following link:
jkaster: a link for a free (but old) book on concurrency control theory from MS.

jkaster inserts the following link:
jkaster: Quinn says: Note that a few fields in tmp$ tables didn’t make it into the docs. They are documented in the knowledgebase. See the above URL.

jkaster: is there a QC # for this?

jkaster inserts the following link:
jkaster: This InterBase BDNradio broadcast links and agenda

jkaster inserts the following link:
jkaster: BDNradio broadcast listener application

jkaster inserts the following link:
jkaster: BDNradio broadcast prize winners

jkaster: we’ve got a 2-3 minute delay on the stream folks, just so you know. things might appear on the chat faster than the audio
jkaster: Melander, :D

jkaster:Kalle: "How do I submit a quite long question to Michael Faisst?" - You can email him at michael dot faisst at

jkaster: bedtime for me, too!
jkaster:Kalle: "Ok, will he be able to answer it in this broadcast?" - if you email him NOW, he may see it in time. cc me and Anders. same email pattern, or just use "johnk" at for me

jkaster: Michael Faisst is one of the 2 product managers for InterBase
jkaster: Joe Overton is the other one, and he is on the road today

jkaster: how about managed code stored procedures and functions?
jkaster: like JDS has?
jkaster: .NET and Java
jkaster: Should
jkaster: NDataStore prototype supports .NET on full and CF
jkaster: PlanAnalyzer is now available in QC under Graphical tools IBConsole
jkaster: new QC node isn’t showing up on QC web client yet, so I’ll have to inject the URL later

jkaster inserts the following link:

jkaster: At BorCon last year, we demonstrated (me, even) debugging Delphi stored procs with NDataStore

jkaster: MTonies, use /ask to ask questions or make suggestions for feedback from Ramesh

jkaster inserts the following link:,1410,32714,00.html
jkaster: BDNtv on Data Remoting

jkaster inserts the following link:,1410,32917,00.html
jkaster: BDNradio with Ramesh on Data Remoting

jkaster inserts the following link:,1410,32718,00.html
jkaster: In depth article on Data Remoting by Jason Vokes

jkaster:MTonies: "Ramesh, will a future version of dbExpress have a way to pass custom parameters to the driver? Eg TSQLConnection.Parameter strings not recognized by the components?" - ramesh: There is an option for this in (probably) the next release with a key/value pair

jkaster:MTonies: "Ramesh, will there be complete documentation on writing a driver? eg: what should each function do exactly? How does the transaction management work? Etc?" - ramesh: This is a common request we get quite often. We haven’t been able to spend time getting these specifications out. There are several 3P drivers out for DBExpress, and an article is already on BDN.

jkaster inserts the following link:,1944,32121,00.html
jkaster: Technical Overview of InterBase 7.5, by Charlie Caro

jkaster inserts the following link:,1944,32102,00.html
jkaster: Enhancements to InterBase from 5.6 to 7.5, by Sriram Balasubramanian

jkaster:overcash: "What is the pricing plan for dual-core cpu’s. Hyper threaded is 1 CPU license for the 1 physical and 1 logical, but with dual core there are actualyl 2 physical." - michael: We’re not 100% final on this decision.

jkaster: look at slides on those sessions
jkaster:MTonies: "In addition to Stored procedures, will we finally get Stored Functions?" - michael: We have not explicitly called it out for the next release. It’s not high enough on the radar based on information from customers so far. Please let us know through QualityCentral what your enhancement requests are.

jkaster inserts the following link:
jkaster: QualityCentral home page

aohlsson: Oops... We’ll make him write the paper now... :)
jkaster: or at least provide the slides!

aohlsson screams into the mike in an effort to wake up the other Anders...

aohlsson: Thanks guys. Over and out.
jkaster: good night to some of you!
aohlsson: Closing the room, so I’ll kick remaining users in a sec... :)

    Public chat room

Welcome to the moderated Borland Community Chat!

You are allowed to speak freely with everyone in this lower window. In the upper window you'll find all messages written by moderators and invited speakers. To submit a question, click on the ASK Button.

dmagin: hi all
RobJLove: hi
dmagin: do you have a connection to the live stream? is live stream (music) is still running?
dmagin: i have no connection
RobJLove: I just connected to the live stream and it is not playing anything yet.
RobJLove: But it is up!
dmagin: yes it works (hello wa clear) but music is running verly low
dmagin: more volume
dmagin: perfect
dmagin: gone
dmagin: interbase rocks!!!!!!!!!
RobJLove: ah some music yes... All two of us listening ;-)
dmagin: LOL
dmagin: party, dance
albertrs: at least somebody here :-)
dmagin:germany say hello
albertrs:catalonia also
dmagin: 1st was ok other to low
albertrs: Great !
RobJLove: nothing yet.
RobJLove: lol
RobJLove: I think I must have a proxy problem.
ibexpet: here in germany sound i very good :-)
NickB: Good here in New Zealand too
dmagin: hi holger :-)
RobJLove: Finally fixed.
albertrs: Sorry... may I Ask when is Jeff Overcasch talking ?
dmagin: jeff PDT: 0900 or GMT 1600
albertrs: Thank you very much.
albertrs: Jeff may I ask you a question.. ?
dmagin: .
albertrs: Thanks Mr. Kaster :-)
albertrs: :-)
dmagin: little confused the brasilian guys :-)
albertrs: I really must say I am in Love with Interbase... honestly. :-)
albertrs: It is robust... and "simple"
albertrs: "simple" not meaning easy :-)
dmagin: and is running running running
albertrs: that’s it !!!
albertrs: strong as a Monolith...
boro: huh, maybe sending <Ask> my comment to the wrong place...
boro: I would like to test interbase and compare it with SQL Server 2000/2005
boro: but not sure how to move >200GB easily from Sql Server to interbase...
albertrs: I never tested 200GB Databases..
albertrs: but I have 100MB and 200MB databases working great
albertrs: for years...
dmagin: 200gb no prob
boro: I suppose (from specs) it does support GB DBs
albertrs: for me the point is the control I have with the data...
albertrs: with IBX I feel like working with Paradox...
albertrs: all under control.
albertrs: great
albertrs: I have developed many apps without a problem...
CraigStun: Journey?
boro: I have to concentrate on 1000s of users so transactions balancing / SMP is of very importance for us
boro: how does IntB play with?
boro: I read IntB vs MSSQL docs and it seems transaction support on IntB is superior then MSSQL one... (which easily locks the whole tables)
boro: (which infact is on of our greatest problems)
albertrs: That’s what happened to me when I had to decide between MSSQL and IB
albertrs: I had to devide between MSSQL 6.5 and IB
albertrs: at those times I found IB superior with the transaction support..
albertrs: also Delphi Native components where superior
albertrs: to work with IB.
albertrs: IBX in this case.
albertrs: but my profile is quite different than yours..
albertrs: I haven’t as many users as you...
boro: yep... we have 4 Proc servers with 16GB RAM supporting whole regions with towsends of users on SQL server
albertrs: uau.... :-)
albertrs: that is billions of light years beyond my scopes :-)
boro: but is enough a whole table scan (millions of rows) to drag the whole DB down
boro: in IB this should not be the case as it should be using different kind of tranactions
albertrs: yes..
albertrs: but..
albertrs: I have done some tests...
albertrs: as recursive SQL test
albertrs: I mean a select that select’s record from the same table..
albertrs: select * from employee where EMP_ID = (SELECT *) ...
IBExpert: for which kind of operation do you need a whole table scan?
albertrs: and IB took ours to get something out...
albertrs: (It is not for criticize)
DaveN: hey bill
BillT: Hi Dave
IBExpert: when you do select .... where xx=(select ....) you will always get slow answers because subquery is started for each record in main select
albertrs: yes... I know..
boro: whole table scan can be due to requesting ‘all items where updatedtime >= ... ) and this table has about 200M rows
albertrs: I don’t want to compare as I am a IB Lover...
dmagin: )
albertrs: but in MSSQL the same job tooks 30s
albertrs: only that..
albertrs: but there are rare cases where I had to use this.
boro: so if there are other users hitting the DB they will be waiting for this transaction to be done ...
boro: it can lead to our customers having DB timeout errors on web site...
boro: which is a real problem
IBExpert: is the 200m records the result because of a very old startdate as a param or is there just an index missing?
IBExpert: Interbase gives you a very nice hint with the fetches value (shown in isql with set stats on or for example in ibexpert)
boro: it is because dates within this field are so similar so index does not help at all and sql server starts with full table scan on it
IBExpert: in such a case it sometimes helps to write parts of the datetime fields to redunant fields by triggers (for example extract fields for year, month, day and use the where clause on this field(s)
IBExpert: we also made the experience on a 80M records table, that a second table with just the most used fields for the where clause helps a lot to speed up typical selects. we redesigned a table in this way, so that it was divided into 4 different tables and an updatable view was responsible for beeing compatible to the old structure. One table for pk and the most important fields, another table with pk and all other non blob fields, one more table with blobs for fulltextsearch and one more table with data from the original documents in rtf and txt format.
IBExpert: ja, moin daniel
DaveN: welcome back to funky town, Robert
dmagin: lol
albertrs: ganz gut gesprochen :-)
RobJLove: Thanks. ;-)
DaveN: An Australian band did an excellent cover of that song
CraigStun: Skynyrd?
venks: When is the session starting?
DaveN: same to you :-P
DaveN: soon venks
Melander: When it’s ready... ?
DaveN: hehe
Melander: How do I see a log of previous traffic? The "transcript" doesn’t seem to be working.
RobJLove: You really don’t want to see it ;-)
Melander: Now I *really* want to see it
RobJLove: It might be posted later with the audio but I am unsure if it will be.
RobJLove: Most of the time it has been just rambles of the listeners here <G>
Melander: Nah, you’ve probably been badmouthing me.
RobJLove: I would have to know more about you to do that.
RobJLove: DaveN on the other hand ;-)
Melander: Can’t you invent something? That’s what I usually do when I badmouth you :-)
RobJLove: Nah false statments instead of random ones are much better.
DaveN: eh?
RobJLove: volume of speaker could be a bit higher? Since my audio has been bad what to others think?
RobJLove: ah... loud!
RobJLove: great
Melander: It’s OK now
CraigStun: New standalone version of IB Performance Monitor
CraigStun inserts the following link:
albertrs: now. sound is great in here.
CraigStun: I’m running off to lunch now, please email me if it’s broken :)
CraigStun runs off to a restaurant
Melander: Woohoo. Now we just need a new Planalyzer...
albertrs: good apetite
CraigStun: Coming soon, maybe this afternoon Anders
Melander: Y0u da man!
DaveN: mmmmmm food...
dmagin: snap shot in interbase is a great feature
dmagin: jkaster: multo apetito
dmagin: jkaster: that the reason i like my home office (24h food)
dmagin: lol
overcash: Yea, but I’ve eaten at that Denny’s real late at night in the past (after a late night of QC work IIRC :)).
DaveN: it’s 1.12am here and I can’t be bothered getting take-out
albertrs: I should be working...
Melander brb
albertrs: :-)
Melander: Oh... Thanks. Brb 30 minutes
DaveN: I should be sleeping..
NickB: me too :P 3:45am here
DaveN: in fact.. I think I will...
albertrs: your is worst DaveN :-)
albertrs: I am goind to cinema...
albertrs: watch maybe Mr. and Miss Smith.
DaveN: saw that.. loved it
albertrs: :-))))))))))))))
albertrs: She is sooo gorgeus :-)
Fernando: Hi ppalmerio...
ppalmerio: Hi
ppalmerio: which Fernando are you ? :)
Fernando: from Tool
ppalmerio: ohh, excuse me
boro: o.k. thanks!
dmagin: daniel @ home:
albertrs: Sorry... I lost connection... who is talking now ?
albertrs: Thank you.
unixguru: Maybe we can hear from Rob soon?
andreano: about Reliability and scalability of InterBase, IBX, case study
albertrs: please don’t take me wrong
unixguru: Sorry, but Jeff rambles too much -- he did this at his BorCon session too.
albertrs: but I would like to ask to Jeff if the SQL Editor on TIBDataSet will be let’s say better
albertrs: yes :-)
albertrs: great news..
albertrs: I really appreciate your job with IBX..
albertrs: the only annoying think is that the SQL Editor.
albertrs: thanks
unixguru: I’m not a shill, Jeff just has problems staying on topic when he talks.
albertrs: volume is going down...
albertrs: not very well...
albertrs: i am losing sound...
ib4: little more sound?
albertrs: don’t worry...
albertrs: I am just only trying to help :-)
albertrs: For me is a great experiencie, chating, hearing all those borlanders...
albertrs: great
dmagin: country check: me germany
CraigStun: Hello, Dan
NickB: New Zealand
CraigStun: Dans, I guess
albertrs: me catalonia (spain)
CraigStun: :)
ppalmerio: Brazil
albertrs: new Zealand... wow... have you seen Smeagol around ? :-)
Melander is back
NickB: lol...he’s making me a cup of coffee at the moment ..... :)
albertrs: :-)))))
Melander: Yah!
Melander: or rather: Yeah!
dpalley: Hi Craig
albertrs: I visit this page EVERY DAY waiting for patches, new thinks :-)
Fuzari: hello. This chat is only text?
Melander: No, we can hear all you say... Try it
Fuzari: Ok. thanks
Melander: I’m joking...
delphiboy: who was the delphi team simulteanously consulting with? Microsoft?
dmagin: or free tool (ADO/BDE/ODBC sources (such as dBase, Paradox, Access, MSSQL, Sybase, Oracle, DB2 etc) and native Interbase on:
boro: I am looking for a fast way of doing multiple tables data import
dmagin: the tool is really quick
dmagin: try out is free
CraigStun: Galein is active in the IBConsole group
Melander: OK, thanks
dpalley: What’s going on with the ODBC driver in 7.5.1?
Melander: I just had to answer a phone call. Was there a msg for me?
dmagin: who needs ‘old odbc’ ?? (sorry joking) you can find under:
dmagin: odbc install from ib7.1 cd simple: install over splash screen application and the driver is licensed installed
dpalley: No more updates from easysoft, I guess.
dmagin: but odbc is slow and old style
dpalley: I have quite a few Crystal issues with the current driver.
albertrs: "Sorry to be a pest" ...but please Jeff.. let us press [RETURN] at the SQL Editor
albertrs: :-)
dmagin: dpalley: I have quite a few Crystal issues with the current driver: perhaps change to Rave Reports which runs perfect with jeffs IBX
delphiboy: IBExpert does this pretty well
delphiboy: Good idea.. allows kicking the tires before buying... adds value to the product
quinn: People should discuss the developer edition Michael Faisst is on at the end of show
delphiboy: Cross server joins?
quinn: Regarding BLR which Jeff has talked about, people might find the following interesting!default.jspa?categoryID=157&externalID=2411&fromSearchPage=true
CraigStun: IB already works on a (Windows) cluster server. It would be nice to officially support that.
dmagin: great!
delphiboy: rubicon does that well
Melander: Officially. How is that different from the current way it works?
delphiboy: an xml parser?
CraigStun: Anders: Document it, maybe add support to the installer.
CraigStun: Seems to me to be decent return for low effort.
Melander: Document it, OK. Installer, hmmm. I’m not sure that it could be done so it’s actually usable in a production environment. I would prefer to configure it myself.
CraigStun: I think the changes Rob mentions were 7.5 or 7.5.1, probably the latter.
CraigStun: But we see more use of selectivity numbers even in 7.1
CraigStun: I’m OK with just documentation WRT clusters.
Melander: No it can’t.
delphiboy: 64 bit???????????????
delphiboy: when 64 bit????
CraigStun: delphiboy: Ask Charlie Caro when he’s on.
delphiboy: thanks
dmagin: charlie os on air at 12:30 PDT 19:30 GMT
overcash: what InterBase feature needs 64 bits? Even ORacle doesn’t have a 64 bit Windows DB (non Itanium).
CraigStun: Jeff: >4 GB memory use.
delphiboy: windoze??? who cares???
CraigStun: You can do that w/out 64 bits, but it’s better with.
delphiboy: 64 bit X seems to be the order of the day
dpalley: Oracle has a 64-bit AMD64 version (beta)
CraigStun: Also avoiding WOW would be good.
overcash: Order of the day doesn’t mean that it has a real need.
delphiboy: new servers out with 8 opterons and 128gb
andreano: You can use >4GB without 64 bit
delphiboy: dual core
Melander: IMO >4GB ram would kill IB in its current architecture
dpalley: I would settle for a 64-bit client for now
CraigStun: Yes, Andreano, please note that I did say that. :)
Melander: I mean the overhead would kill it
andreano: InterBase 7.5 increase(double) the page size and cache buffer
overcash: I have a dualcore machine right now running IB 7.5.1 just fine.
andreano: Hi Craig, good to see you
delphiboy: does it exploit the 64 bit data path?
dmagin: andreano: you can see crag?? i can only read LOL
CraigStun: Hi! I just released a new standalone IB Performance Monitor (see CC)
albertrs: Jeff... only the last think (I know I am a pest...)
overcash: The limit for 7.5.1 on page buffers is 2GB. This does not include the memory pools for statemetns, stored procedure triggers etc.
andreano: yes, it’s mean read :o)
albertrs: think about to let us press return at the SQL Editor PLS
dmagin: btw: jeff thanx for your great informations
CraigStun inserts the following link:
albertrs: I know It sounds silly but I use the SQL Editor a lot.. :-)
overcash: Unfortunately I do not write the SQL Editor. I use the same one that all the DB compoentn use and that is written by another member of the Delphi team.
overcash: I tend to reuse other peoples work if possible so I can concentrate on IBX itself.
albertrs: Yes... I know.. the same as ADO..
dmagin: hi tom
albertrs: but you said this would be change in DeXter or am I wrong ?
albertrs: :-)
overcash: In DeXter I’m going back from the custom one back to the standard one.
albertrs: Ok...
overcash: IOW, from one I wrote and maintained to one I don’t have to write and maintain.
albertrs: let me say I appreciate your work...
overcash: Thank you.
dpolist: Hi folks!
Melander: Anyone here has numbers on context switching in IB on SMP systems? I’m typically seeing up to 100,000/S on busy 4 way+HT systems and I think it’s a bit excessive.
albertrs: Well I have to leave !
albertrs: Great Job. Thank you Borland for all and have everybody I nice time.
CraigStun: Anders, I don’t have numbers, but is that 7.1 or 7.5?
CraigStun: 7.5 spinlocks on its waits, 7.1 doesn’t. Hence, switching should be lower.
andreano: Hello Melander, we have many customer using IB in SMP Server
Melander: Both, 7.5 is better wrt context switching, but not that much.
CraigStun: In that case I’d also suggest bringing it up when Charlie is on.
Melander: k
andreano: In Brazil we have a big case, using 130 users simultaneous, with 60GB, 7x24 a year
andreano: using InterBase 7.5
Melander: I’m not questioning IB’s ability to run on SMP (all our IB customers do it), I’m just seeing an awfull lot of overhead.
andreano: Ok, what the IB version your customer have been using?
dmagin: cool 8cpus 8-)
eWolverin: That’s excellent hardware.
eWolverin: 8 cpus!!!
eWolverin: 32 bit?
Melander: Right now it’s mainly 7.1, a few 7.5.1. All are being upgraded to 7.5.1.
andreano: This is good, there are some updates in InterBase Server Engine to work better in SMP Server
andreano: The MAX_THREADS in ib_config has important changes, what’s value in MAX_THREADS
eWolverin: This is good info because I’m working with 8 CPU Itaniums.
Melander: Hmmm. The default+1 I think.
andreano: TLC enhances InterBase performance on SMP servers and single CPU servers when the IBCONFIG parameter MAX_THREADS is not equal to 1
dmagin: my words
dmagin: good admin
andreano: That is, when multiple threads are allowed to execute concurrently inside the InterBase engine.
andreano: If MAX_THREADS is equal to 1 then atom synchronization and TLC are both disabled.
dmagin: wich udf?
dmagin: nhok.udf?
Melander: TLC? Also the value is never 1. It’s the default (I forget what it is) plus 1 (to work around the recent bug).
andreano: Thread-private Latch Cache = TLC = this is new feature of IB 7.5.1
andreano: The TLC reduces the number and frequency of atom synchronization locks
Melander: Ah yes. Thanks.
andreano: needed to safely address and pin down resident pages in the database page buffer cache.
eWolverin: Those are some good reasons to stay with Interbase and not go with Firebird.
dmagin: oh yes!
dmagin: interbase -> borland -> quality -> great team!
eWolverin: +quality support
teste: Great tean hahahahahaha
dmagin: and interbase users and interbase developers are ONE family
Melander is getting some chow. Brb...
dmagin: great session: thanx tom
CraigStun: Yes, very good!
andreano: Great
eWolverin: Very informative in a real work perspective.
eWolverin: Good point about laptop deployment.
eWolverin: thanks JK.
CraigStun: I’m hoping for better segue music before my segment. :)
CraigStun: Drat.
dmagin: lol
eWolverin: same here, Craig!
Melander is back
eWolverin: Do you have links to some of the old research? I heard you talk about it in the 24-hrs of Delphi.
eWolverin: Thanks Craig!
eWolverin: Nice way to find out if you need an index or not.
unixguru: IBPlanalyzer Rocks!!!
eWolverin: cool!
overcash: The cancel code is something I’m hoping to find time to also add to the WISQL window of IBConsole.
unixguru: Jeff, that would be awesome!
overcash: Now that the Plananyalizer is availaber in the source forge I can "borrow" instead of writting from scratch :).
overcash: Excuse me, StarTeam, not SourceForge.
unixguru: Jeff, we actually implemented that in our Delphi/IB application, it wasn’t bad.
overcash: One thing I’m looking at is embedding canceling capabilities in IBX itself. What size effort that is going to be is the question.
eWolverin: Good tip.
Melander: Didn’t we try that when the feature was introduced in IB? It’s just a single method with a few lines of code...
overcash: No I wronte wrapper code to test canceling around IBX, but what I’
overcash: I’d do within IBX itself would be just background thread the call to execute_statement, but that would require that both the connection and the IBX component itself to understand that it is in a querying mode
overcash: and not allow other activity until that thread complets or is canceled.
overcash: The introduction os an asynchronous API in addition to the blocking API would be nice, but I don’t see that one happening.
Melander: I think a Cancel method would be sufficient. Leave the threading to the user.
unixguru: Agree with Melander
overcash: But you are only canceling a blocking call. Your main thread is frozen until the call returns. The cancel and the call would be happening in the same thread so you can’t effectively cancel.
andreano: Melander, it’s if Jeff put the execution in thread, the developer will be have more benefits.
unixguru: Just add a Cancel method that hides the ugly API call details -- rely on the programmer to understand that it needs to be in a separate thread.
Melander agree with unixguru
unixguru: if in the future you can handle the threading, great, but just the method would be useful immediately.
overcash: I cancel API is available. But you pass it the statement handle, so I can’t embed it in the query itself becasue when you want to cancel if it was a method that component is in the process of a blockign call.
unixguru: if in the future you can handle the threading, great, but just the method would be useful immediately.
overcash: The problem is that to use a cancel method in TIBCustomDataset, I’d eitehr have to make the whole component 100% thread safe (so you can background thread the call but still call the method from a different thread) or O just background thread the actual long running blocking call and handle when the call is executing.
Melander: Sure you can. Even if the query is busy in one thread. You can access the Handle from another thread. You could even protect it with a spinlock if you’re paranoid.
Melander: oh you beat me to it
overcash: It turns out that just background threading the call is a) less work and b) more efficient (making an IBCustomDataset thread safe at the component level will introduce overhead)
unixguru: ok, get coding then ;-)
overcash: I have looked at tthis enough to determine the general direction I want to go.
overcash: Well for Highlander I’m looking at (in no particular order) Scripting the update SQL, new much improved memory model (yes I’ve talked about this for years), cancelable queries, TIBBatchMove completed, GDSLib (like MIDASLib)
overcash: All some or none can always show up, but I’ve got some interesting things hoped for (and one I need to talk to R&D before I’d even consider talking about).
dmagin: ok
overcash: I’ll add plan analyzer in QC today sometime.
dpalley: Jeff, there’s a QC entry for a bug in TIBQuery when cancelling a query
RobJLove: It saved my back side ;-)
overcash: Canceling from IBX or Canceling from ClientDatasets?
dpalley: QC# 13107
dpalley: I’m fetching data into a CDS via a provider
overcash: I’ve looked at it, but I’m not going to address it in DeXter at this time. Unfortunately I have the fewest regression tests for CDS. Because of that I’m very careful about changes in the CDS code. One of hte reasno there are less new items in DeXter for IBX is I’m spending the time to flush out my unit tests.
overcash: This makes it easier to make sure that changes don’t have adverse effects and I can do ‘bigger’ impact things with less risk.
dpalley: Ok, thanks Jeff
dpalley: Regarding performance monitor, are there any plans to add server-wide monitoring instead of database-wide?
overcash: It doesn’t preclude me issuing a patch after DeXter with it, but right now I don’t think I’ll address this in DeXter proper.
d3valerio: is there someone else here ?
d3valerio: from brazil ?
overcash: Yes, be careful using OnCalcFields on the CDS side of things :). Man does that thing fire a lot.
andreano: Hi d3valerio
d3valerio: hello andreano, i’ve just got into your yahoo group
d3valerio: thank you
d3valerio: andreano, when did this start ?
overcash: The latest IBConsole (and IBScript) now support ‘set statistics on index’ statemetns now.
andreano: 09:00am Brazil hour
dmagin: 20:30 in germany
dmagin: thanx craig for your infos
Melander: Yes thanks Craig. That was great.
d3valerio: let’s take some coffee too
d3valerio: = )
d3valerio: everybory
d3valerio: everybody *
d3valerio: = )
dmagin: i spend the milk
d3valerio: don’t worry
overcash: Tell Gabe to speek up :).
d3valerio: where does this conference take place ?
overcash: It is hosted in San Jose [editor’s note: ScottsValley] at Borland’s campus.
overcash: Speakers are world wide.
d3valerio: thanks
d3valerio: and where are you ?
overcash: Me? AtlantaGa.
overcash: And on occasion the TeamB guys have been known to help you too <vbg>.
d3valerio: how do i speak in private mode ?
dmagin: PDT1430 GMT2130 Michael Faisst
CraigStun: Quinn, Anders Melander has posted some useful info on b.p.i.general
CraigStun: d3valerio, click the "Help" button.
overcash: I don’t hide my email addresso n the newsgroups, but I do not give private help on issues.
eWolverin: interesting...
dmagin: it was not questions it was a info
dmagin: :;-)
dmagin: interbase downlaod:
dmagin: left registered users
dmagin: are the files later available to download as mp3 files??
dmagin: lol
eWolverin: That install and registration feature is great.
eWolverin: ...great.
dmagin: no: give it to other
dmagin: ia am employee by better office and borland se in germany (so i am a partner and also in se team borland germany :-))
Joelson: ...
RobJLove: just waiting for the next session... it will be on soon
RobJLove: At least I think ;-)
Joelson: ????????
RobJLove: Ramesh could not be found for his time slot so we have "dead" air (on music air) until the next session is on.
RobJLove: Yeah!
dmagin: TMP$Tables are great
eWolverin: arrgh, no temp tables.
dmagin: great
andreano: jkaster, the questions of rcmagno is "RCMagno would like to know what’s if there is plan for new components foR ibx in the feature
dmagin: charlie, shaunak and sriram are really the heart of interbase
dmagin: redirect and alias a really great
CraigStun is wondering what the heck is corrupting ParamStr....
CraigStun: I dunno, it’s corrupt on the first line of the initiaization section of system.pas. If I’ve managed to corrupt it there I’m impressed with myself. :)
overcash: Don’t forget you get default roles with EUA. Really nice feature to manage security for a great number of users.
CraigStun: That comparison is out of date, but IB is still cheap. :)
dmagin: IB gives you much more for the money
rschieck: cheap and easy
dmagin: lol
Melander: Turning HT off makes no difference
eWolverin: cool, this helps me target my markets.
andreano: a
eWolverin: I want it because I’m currently working with NUMA architectures.
eWolverin: HP Superdomes.
Melander: OK
RobJLove: It would be nice if it was exposed with Turn on/off switch that dumpped to TMP$ table
RobJLove: that way PerMon and other tools could use it.
overcash: The TMP$Tables, by default, are only readable by SYSDBA. You actualyl have to grant access to other people to see. If you are letting out your SYSDBA information, well I don’t think there is much you can do about security at that point in time.
Melander: No don’t burden the database with it. IMO it should be sent to a trace tool somehow. RobJLove: But a TMP$Table would be secure.
overcash: Something simular to events, were you register that you want to see them and the engine sends it to all registered clients?
Melander: Jeff: Yes.
RobJLove: So as a DBA I could log all sql statements hitting a database.. not just the long onse.
overcash: You’d have to work out some sort of secruity scheme (it could jsut be a callback in hte admin API which has security requirements already), but I like the idea of registering and geting it then.
Melander: For Windows, let Windows handle the security. For me security isn’t important because all our servers are secure and no users can get near anything important.
overcash: The problem with it being in IBConfig (or anything in IBConfig in general) is that the server has to be restarted to take effect and then also restarted when you want to turn it off. It should be implemented more like the EUA through a column in RDB$DATABASE to enable and disable.
RobJLove: One of my clients because of HIPAA could not allow that. RobJLove: Need to have anything that my list patient info it needs to be secure.
Melander: All Windows IPC mechanisms has security built in. Isn’t that enough?
eWolverin: IB installs so fast, a formalized technique would be a great selling point.
eWolverin: Any New Orleans firm that needed to rebuild their app fast...
eWolverin: in another city would be a great advantage.
eWolverin: I did JK.
RobJLove: Embeded IB on laptop for that client so the machines may not be configured secure enough.
eWolverin: Yes, it is can be related to clustering, but not always.
Melander: Rob: If you can secure the database file, you should be able to secure an IPC object.
eWolverin: Virtual Instances in SQL Server allows you to take a server offline while allowing the instance to stay online.
Droopy72: Derived tables?
CraigStun: To be precise, I’d like a machine-parseable (XML!) PLAN, with cost per node, and I’d also like to be able to get the TMP$STATEMENTS info for an individual statement if I happen to have the statement handle (and it hasn’t been freed yet).
andreano: InterBase support CASE, NULLIF, COALESCE
RobJLove: Oracle supports select from (select)
Droopy72: That’s called derived table
RobJLove: ah, its nice feature that makes complex queries easier.
CraigStun: Robert, that’s the problem. :)
Droopy72: Yep, mostly when working with aggregates
CraigStun: INSERT statements can result in *lots* of inserted records!
quinn: how about publishing client api?
overcash: utter silence :)
CraigStun: C++/CLI would make it a lot easier, I think.
MTonies: yes, very!!
MTonies: Did you check the recent QC entry on this?
MTonies: QC #7997
overcash: Hey, I asked for defrault roles and/or strings to blobs. I got the one I realyl wanted so can’t complain too much.
MTonies: this particular QC entry also lists the SQL 2003 standard for direct binary updates...
MTonies: A HEX string ... :)
eWolverin: Thanks.
dmagin: the team make a good job!!!!!!!!
Melander is going for a cup of coffee and a smoke
RobJLove: I remeber it something like: COM is like smoking... If you do it stop, if you have started don’t.
RobJLove: yes oh yes.
CraigStun: When I was on air I said I’d post a link for a free (but old) book on concurrency control theory from MS. Here it is:
CraigStun inserts the following link:

NickB: That was great Bill...I will be sure to download the recording to go over it all again
quinn: Note that a few fields in tmp$ tables didn’t make it into the docs. They are documented in the knowledgebase. See
MTonies: SQL 2005 will get this as well and will probably tout it as "new!"
MTonies: Actually...
MTonies: Are we getting them? :-)
MTonies: IB 8.0 would be nice :)
RobJLove: Yes a function can be used like this: select myfunc(field) from table
RobJLove: Don’t know if they will appear but I would like them too.
MTonies: or "update mytable set field1 = myfunc(field2)
MTonies: true true
Droopy72: and overloading the stored functions
MTonies: hmm... I dislike that :)
MTonies: but functions in general, I would certainly vote for.
andreano: Great job Bill
MTonies: Use them a lot [in Oracle]. And having to SELECT myoutputparam FROM myproc inside another select statement is rather annoying...
MTonies: Yes, thanks Bill
Droopy72: the function ABS for example can be with more datatypes
NickB: woohoo....thanks...that’s great
MTonies: Hmm, true. Perhaps something like "SQL Variant" would be useful then...
MTonies: Or ABS should be moved inside the engine, then it could be solved, correct?
MTonies: Or External Functions should be able to get a descriptor instead of a plain datatype...
Melander: I’m buffering 60 seconds of the feed, so for me the audio will only be 1-2 minutes behind the chat now :-)
MTonies: Hey, is that Anders?
Melander: Oh wait. No It’ll be 3-4 minutes. Oh damned.
Melander: Yep, that’s me.
MTonies: Hello there :)
Melander: Hi there yourself
MTonies: btw, any idea how many people are listening to this?
Melander: Click the Userlist button
MTonies: that’s the chat only :)
Melander: Duh! I guess it’s bedtime for me soon.
MTonies: same here ... pfff ...
MTonies: John, forgive the newby ;) ... who actually is Michael Faisst?
MTonies: aha, thx
MTonies: Any news on what will be new in IB8? Or when it’s scheduled?
quinn: Michael Faisst is a manager in the DPG (Deployment Products Group). One of the products he works on is InterBase.
Melander: I’ve heard it will have a transaction log/point in time recovery... ;-)
MTonies: oh oh ... *g*
quinn: We are proving no specific information on new features or scheduling today. Various things have been talked about which are on the drawing board and may see the light of day in the future.
MTonies: Stored Functions?
MTonies: (push push)
MTonies: I’ll start preparing a GUI for it... ;)
MTonies: .NEt stuff?
MTonies: might be useful... given that MS is doing it *g*
MTonies: Would it work on Linux?
MTonies: With Mono?
overcash: PlanAnalyzer is now availalbe in QC under Graphical tools   IBConsole
MTonies: Have you guys been looking at SQL 2005?
MTonies: To see how .NEt stuff is supported there?
Melander: Hey that’s great! So we’ll be able to write SPs in
Melander ducks
MTonies: lol
MTonies: From what I can see, you register a NET library and register each procedure/function with a normal CREATE PROCEDURE statement.
MTonies: Would you do it the same way? Or anything else on the drawing board?
Melander: Planalyzer: Wooohooo!
overcash: I did test it with the windows GUI and it is now returned. It was actually there already, but not made public.
MTonies: dbExpress should have a way to pass custom parameters to the driver :)
MTonies: Done
MTonies: Now only for some real documentation on the interfaces and their exact purpose ;)
MTonies: (I wrote a driver, it’s pretty tough to do, believe me)
MTonies: yay!
MTonies: Win32, I hope?
MTonies: For dbExpress: it’s still a bit hard to test and see when which method gets called when and all (especially during design time)
MTonies: Better documentation would be very very nice...
MTonies: Good :)
MTonies: Thanks
Droopy72: The link doesn’t contain much data?
Droopy72: I meant those from Charlie Caro and Sriram
MTonies: any new SQL examples?
MTonies: lol
Droopy72: On ",1944,32121,00.html" No Paper Received and No Files received. Am i missing something?
Droopy72: :-D
MTonies: People, thanks!
Melander falls asleep over the keyboard and accidentally hits JiUY5zG%[alt+F4]
MTonies: :-)
Melander: Gotta get some sleep. Good night folks!
MTonies: bye bye Anders
Melander wakes up, falls of the chair and smacks hit head into the power button
MTonies: yeah, and it’s bloody late here ;)
fdweller: Bill is in Az.
Droopy72: Thanks all
quinn: Bill is in Arizona I believe ..
MTonies: Thank you all ... Looking forward to the new version of InterBase
NickB: Thanks guys...really enjoyed this broadcast
MTonies is leaving and going to bed ...
MTonies: right back at ya ;)
andreano: Thank you guys for the invite and let’s go InterBase
NickB: Bye all
Droopy72: Bye

Server Response from: ETNASC02