Falcon Programming supporting Firebird

Posted in Firebird-Devel:

Hello Firebird-Developers/Users,

FalconPL, a new and fast-growing programming language had included FirebirdSQL support as High Priority in their TODOs.

Firebird Database Server module driver for DBI system
Type: Module binding
Difficulty: Intermediate
Required skills: C++ (high), database (basic)
Time frame: 30 days
Mentoring: High
This idea consists of creating a binary native module using the Falcon multi-platform C++ SDK to provide an interface to the Firebird database server through the DBI abstract interface system.
The resulting module shall use the Falcon Service interface to expose methods used by the DBI system to access database resources. Other than that, the applicant shall implement a set of functions interfacing directly the Firebird database API which can be called directly by scripts bypassing the DBI interface.
The applicant will be in charge of designing an interface to the module functionality, implement it in C++, document it through the faldoc integrated module documentation system, provide code samples and automated unit test for evaluation by faltest.
The work will be evaluated based on the elegance of the interface, efficiency in terms of memory footprint and CPU consumption, completeness of the documentation (including samples) and on readability of the produced code. Extra consideration will be granted to work that promotes the uniquely multi-paradigm approach of the Falcon Programming Language in the interface provided to the final users. Top evaluation is given if the final work also provides a Falcon Service exposing the same functionalities provided to scripts via a C++ interface.

Facts Table:
http://www.falconpl.org/index.ftd?page_id=facts

About Falcon:
http://www.falconpl.org/index.ftd?page_id=about

And here’s the newsgroup:
http://groups.google.com/group/falconpl

Maybe somebody is interested to collaborate with the FalconPL creator (Giancarlo Nicolai) in adding and implementing the FirebirdSQL support.

Thanks and best regards,
Mario Sabado

IBSurgeon at FDD

From IBSurgeon blog:

7th Firebird Developers Days: Visit IBSurgeon’s presentations

17th of July, Piracicaba, Brazil: The 7th Firebird Developers Day will take place in the UNIMEP university theatre. This is undoubtedly the biggest worlwide event devoted to Firebird – more that 600 people, dozen of speakers and lot of interest.
As you may knows, Brazil is the N1 country in terms of number of Firebird users (following with Germany, Russia and USA), and Firebird is the number 1 database in Brazil too.
This will be 4th time IBSurgeon sponsors and presents at FDD. This year Dmitry Kuzmenko will speak about big Firebird databases (you may remember that recently we did test with 1Terabyte Firebird database) and about speed of test restores.
Also at this event IBSurgeon will announce some serious changes in licensing policy, intended to encourage people to treat Firebird databases in more careful way.
We will follow the results of conference and post updates here.

New release of Database Master 2.0 for Firebird

Database Master 2.0 for FireBird has been released. The new version  includes new great featureas, enhancements and some bug fixes.  Database Master also supports Oracle, SQLServer, MySQL, PostgreSQL,  SQLite, MongoDB, XML File, ODBC and OleDB connections.

What is new:

  • MongoDB support: Open Source and Document based database system is  supported now.
  • XML File support: You can add an Xml file as a relational database  and execute SQL queries.
  • Search Engine: You can search any data in your database without  writing any SQL query.
  • New reporting system is implemented.
  • XML Import: You can import your xml file into a database table.
  • New Export File Formats: Word 2007, Excel 2007, OpenOffice, PNG,  XPS, RTF, dBase formats are supported now.
  • Code Factory: You can genarate (C#,Java etc.) code from your database.
  • SQL Script Export: You can export View and Procedure structure now.
  • Templates and Snippets: Database Master supports now SQL tempaltes  and snippets.

Avoid using rand() in where clauses

I was working today, building a procedure to populate some tables and do some data updates and deletes, for speed testing for one of my FDD sessions.

I decided to use the built-in rand() function of Firebird 2.x in the where clause of updates and deletes, but found out that the execution time was tooking too long to complete. Looking at statistics, it showed weird numbers for Indexed Reads, like, the updates of 5 records generating 80.000 indexed reads in the Primary Key index.

After some debugging, I just found out that rand() was the guilt! I moved it outside the update/delete statement, storing the result in a variable, and using the variable in the where clause. It worked million times faster!

So, moral of history: Don’t use rand() in the where clause of updates and deletes statements. And yep, I know this is quite unusual use 😉

IDEMA – Are you ready?

SAN JOSE, Calif., June 29, 2010 /PRNewswire via COMTEX/ — IDEMA (The International Disk Drive Equipment and Materials Association) today announced the launch of the “Are You Ready?” campaign, an effort to raise awareness in the computer industry about the advances and advantages of long data sectors. IDEMA is the data-storage industry’s trade association dedicated to driving technology standards that support the advancement of data storage. The campaign focuses on helping the computer industry prepare for the transition of hard disk drive (HDD) processing from the historical sector lengths of 512 to 520 byte increments, to increments of 4,096 bytes per sector using a technology referred to as Advanced Format. IDEMA is joined by major hard disk drive manufacturers in the launch and support of the “Are You Ready?” effort.

Read full history here.

New Firebird tech articles

Morning all,

I’ve uploaded a couple of new documents to the document area. Unfortunately, due to a few problems with VPN timing out over the weekend, I’ve not been able to get the front page updated. I will do soon and the links will be visible.

How the cache works in Firebird:

pdf: http://www.firebirdsql.org/pdfmanual/Firebird-cache.pdf
html: http://www.firebirdsql.org/manual/fbcache.html

That is based on information Ann supplied here on the list a while back. She has permitted me to document it and make a manual out of it.

Firebird Internals:

pdf: http://www.firebirdsql.org/pdfmanual/Firebird-Internals.pdf
html: Not uploaded yet – VPN problems.

A work in progress and as yet fairly incomplete. It will be improved as and when I can. Comments & corrections gratefully received!

Enjoy.

Cheers,
Norman.

Stored Procedures contest winners!

Dear All,

Stored procedures contest is over!
We had 12 submissions for the contest and have chosen 3 winners.

Winners are:

  1. Set of mathematical operations implemented in pure Firebird SQL,
    by pizmon (muirsheendur@gmail.com)
    Download www.mindthebird.com/MathematicOperation.pdf
  2. XML File creation using Firebird in stored procedures, by Fernando
    Medeiros
    Download www.mindthebird.com/ToCreateXML.pdf
  3. SP_ESCAPE and SP_UNESCAPE stored procedures: generate text with
    line feeds, carriage returns, quotes and tabs in Firebird sql scripts,
    by Fabiano Bonin.
    Download www.mindthebird.com/SP_ESCAPE.pdf

Each winner can choose one of the following licenses from MindTheBird  sponsors:

1 33 34 35 36 37 101