Wednesday, November 17, 2021

Firebird 3.0.8 sub-release is available

Firebird Project is happy to announce general availability of Firebird 3.0.8 — the latest point release in the Firebird 3.0 series.

This sub-release offers many bug fixes and also adds a few improvements, please refer to the Release Notes for the full list of changes.

Binary kits for Windows, Linux, Mac OS and Android platforms are immediately available for download.

Tuesday, August 10, 2021

Rust Firebird Client updated to v0.17.0 with a few features and enhancements.

 Rust Firebird Client updated to v0.17.0 with a few features and enhancements.


New Features: 

- create_database() added CreateDatabase with embedded client #112 

- Add support for create_database() method, aka isc_create_database #115


Bug Fixes:

- rsfbclient always recompiled #113 , #114

Wednesday, July 21, 2021

Firebird 4.0 Docker has been released with images for AMD64, ARM64 and ARM/V7

  Firebird 4.0 Docker has been released with images for AMD64,  ARM64 and ARM/V7.

 New arm images can be used natively on Raspberry Pi , Apple Silicon and Amazon Graviton instances (or any docker host that supports arm).

Monday, June 07, 2021

New Flamerobin snapshot available : version 0.9.3.8 with a few fixes and features



New Flamerobin snapshot available : version 0.9.3.8 with a few fixes and features:

New features
  • Indexes, Functions, Packages, Global Temporaries, DB Triggers and DDL Triggers supported
  • New localized grid support, allows to use commas or dots for decimal separator (View->Preferences->General: Use language locale settings

Enhancements and Bug fixes
  • Fix Dependency tab not showing Functions and triggers
  • Fix slow opening of remote database

For more info please read commit history log

Firebird Project is happy to announce general availability of Firebird 4.0

Firebird Project is happy to announce general availability of Firebird 4.0 — the latest major release of the Firebird relational database.

Firebird 4.0 introduces new data types and many improvements without radical changes in architecture or operation, the most important are:
Built-in logical replication;
Extended length of metadata identifiers (up to 63 characters);
New INT128 and DECFLOAT data types, longer precision for NUMERIC/DECIMAL data types;
Support for international time zones;
Configurable time-outs for connections and statements;
Pooling of external connections;
Batch operations in the API;
Built-in cryptographic functions;
New ODS (version 13) with new system and monitoring tables;
Maximum page size increased to 32KB.

Please refer to the Release Notes for the full list of changes. The complete Language Reference is also available.

Binary kits for Windows, Linux and Android platforms (both 32-bit and 64-bit) are immediately available for download.

Friday, March 12, 2021

New Flamerobin snapshot available! 0.9.3.7 with a few fixes and small features

New Flamerobin snapshot available! 0.9.3.7 with a few fixes and small features

https://github.com/mariuz/flamerobin/releases/tag/0.9.3.7

Take a look, test and comment!

Thursday, February 25, 2021

Firebird 3.0 Language Reference (English) Released

The Firebird Documentation Team is proud to announce the first release of the English Firebird 3.0 Language Reference (HTML, PDF). You can also find it on the Documentation page. This new Language Reference covers all SQL syntax of Firebird 3.0.

The new English Firebird 3.0 Language Reference is based in part on the Russian Firebird 3.0 Language Reference, but is not a direct translation (though we thankfully copied parts of it). Work has also been started on the Firebird 4.0 Language Reference.

Saturday, February 20, 2021

New version of RedExpert 2021.02 has been released

New version of RedExpert 2021.02 is available with a few fixes

Thursday, February 18, 2021

Firebird 4.0 RC1 Docker image based on Debian buster is released

You can use and test Firebird 4.0 RC1 Docker image based on Debian buster

Tuesday, February 09, 2021

Interesting discussion on HN : LibreOffice tells businesses: Get off Community version, you are hurting devs

Interesting discussion on HackerNews : LibreOffice tells businesses: Get off Community version, you are hurting devs

https://news.ycombinator.com/item?id=26054160

Jaybird 4.0.2 and 3.0.10 released

Jaybird 4.0.2 and 3.0.10 have been released.

Firebird 4.0 Release Candidate 1 is available for testing


Firebird Project announces the first Release Candidate of Firebird 4.0, the next major version of the Firebird relational database, which is now available for testing on Windows and Linux platforms.

This Release Candidate demonstrates the complete set of features and improvements developed for the new release. Release Candidates are generally considered stable enough and may be recommended for testing in "almost-production" environments. Our users are appreciated giving it a try and providing feedback to the development mailing list. Apparent bugs can be reported directly to the bugtracker.

Please read the Release Notes carefully before installing and testing this Release Candidate.

Wednesday, January 13, 2021

Firebird Embedded in a sandboxed MacOS App

For those who might not be aware, Firebird on MacOS is now relocatable, in that you don't necessarily have to install it as a Framework, this also means that you can create an embedded version out of the current installer.

The rest of article is here on Paul's blog

Wednesday, December 23, 2020

Firebird php driver status for Firebird Advent 2020 ⛄

 Firebird php driver status for Firebird Advent 2020 ⛄

https://qiita.com/advent-calendar/2020/firebird


A new version of the Firebird PHP driver was recently released. This version supports booleans values. Precompiled binaries for PHP 7.3 , 7.4 and 8.0 are available at the download section.

The driver is marked as 1.1.0 stable . Please report any problems to the tracker at https://github.com/FirebirdSQL/php-firebird/issues.

See also:
Firebird PHP driver on Github
Firebird PHP driver download


Monday, December 21, 2020

Firebird LibreOffice status



Firebird LibreOffice status for Firebird Advent 2020 ⛄

https://qiita.com/advent-calendar/2020/firebird

This year Firebird was updated to 3.0.7 in master branch (LibreOffice 7.2),  patches related are in external/firebird , interesting to note is build patch for macOS on arm64.

Firebird driver related changelog with fixes is located in connectivity/source/drivers/firebird

The list of new bugs can be found in bugzilla , usually search the term "NEW firebird".


Saturday, December 19, 2020

Firebird Rust driver status

Firebird rust driver status for Firebird Advent 2020 ⛄

https://qiita.com/advent-calendar/2020/firebird

Last version released is 0.13.0 with a few changes.

Rust firebird github repository is located here 

https://github.com/fernandobatels/rsfbclient

Crates page is here 

https://crates.io/crates/rsfbclient

Docs are located here 

https://docs.rs/rsfbclient/0.13.0/rsfbclient/

More examples in the github repository 

https://github.com/fernandobatels/rsfbclient/tree/master/examples

Cool features : connection to the firebird db can be made in embeeded mode if is on the same machine 

also using the libfbclient to a remote server or using the pure rust implementation 😀 

https://docs.rs/rsfbclient/0.13.0/rsfbclient/builders/struct.NativeConnectionBuilder.html

Another interesting project is  rbfbclient : A new version of Firebird Extension Library for Ruby using Rust instead of C for binding of firebird API.


Thursday, December 17, 2020

Firebird SQLAlchemy support

Firebird SQLAlchemy status for Firebird Advent 2020

https://qiita.com/advent-calendar/2020/firebird

Current SQLAlchemy release 1.3.20 supports firebird out of the box 

https://docs.sqlalchemy.org/en/13/dialects/firebird.html

In the future the driver is moved outside of SQLAlchemy repository in this place 

https://github.com/pauldex/sqlalchemy-firebird

so it will be installed in the future releases with :

pip install sqlalchemy-firebird

After sqlalchemy and driver install you can follow the official tutorial or something similar using the firebird dialect 

https://overiq.com/sqlalchemy-101/installing-sqlalchemy-and-connecting-to-database/



Tuesday, December 15, 2020

django-firebird driver status

Firebird django-firebird driver status for Firebird Advent 2020 

https://qiita.com/advent-calendar/2020/firebird

django-firebird pre released 2.2a1 version with support for Firebird 3 and Django 2.2.x LTS (That will be supported until 2022 according to the roadmap

Thanks to this pull request #111.

The stable version corresponds with django 2.2 and live into stable/2.2.x branch. The current master branch of this repository is being developed under django 3.0.x.

fbd is the legacy official driver with support for python 2.x and python 3.x , 
We need to switch to new python3/firebird3.x only driver in the future firebird-driver

So the recommended way today is Django 2.2.x and fdb driver (for Firebird 3.x)

Alternate experimental driver : djfirebirdsql

DJFirebirdSQL is a Django firebird database backend using pure python driver pyfirebirdsql (Work in progress)

https://github.com/nakagami/djfirebirdsql

Requirements: Django 3.1 and Firebird 4.0 beta1 (Firebird 3.0 minimum version required)

Saturday, December 12, 2020

Firebird python3 driver status

Firebird python3 driver status for Firebird Advent 2020 

https://qiita.com/advent-calendar/2020/firebird

The firebird-driver package provides driver for Python 3.8+ and Firebird 3+. This driver uses new Firebird OO API provided by fbclient library. You can download it or install directly from Python Package Index.

To use the driver you can start with the Getting Started from documentation area 

A few more examples are in Usage Guide from documentation area

Please note, that his new driver requires Firebird 3+ and Python 3.8+.
This “high” base line was chosen deliberately, to use all new features
available from latest Firebird & Python releases without constraints and
limits that backward compatibility would require. Internally, the driver
uses new client API based on interfaces introduced by Firebird 3. This
new API has many limits raised (like statement sizes, blob sizes etc.)
or completely lifted (like number of databases participating in
distributed transaction), and provides access to new Firebird features
(like scrollable cursors).

The 1.0 release supports all key driver features you know
from FDB (passes all tests for FDB features)

New features in comparison to FDB:
– scrollable cursors
– type hints everywhere
– new FB client API instead old one
– enhanced Enums and Flags classes instead isc_* constants
– better and more rich support for Firebird services

The driver has also much cleaner structure and namespaces, and less core
code than FDB, and although it was not measured yet, it should also
perform better. However, the driver API is not 100% backward compatible
(with FDB).

Please note, that FDB driver is now considered as legacy driver, and its development will be discontinued together with 2.5 once Firebird 4.0 will be released later this year.

The driver uses firebird-base package, which is a collection of modules that have general applicability, like extended configuration, context-driven logging and trace/audit, hooks, work with structured binary buffers, extended data structures etc. The driver uses almost all features provided by "base" package, but specifically the use of hook mechanism and context-driven logging and trace/audit are potentially the most valuable improvements.


The firebird-lib package provides extensions to the firebird-driver.
This package provides modules for:
Work with Firebird database schema.
Work with Firebird monitoring tables.
Processing output from gstat Firebird utility.
Processing Firebird server log.
Processing output from Firebird server trace & audit sessions.

You can download this library from PyPI or or install it using pip.

Friday, December 11, 2020

Firebird high-level native client for Node.js / TypeScript status

Firebird high-level native client for Node.js / TypeScript status status for Firebird Advent 2020 

https://qiita.com/advent-calendar/2020/firebird

To use the driver you can start with the readme from npm/github 

https://www.npmjs.com/package/node-firebird-driver-native

A few more examples are in the packages/node-firebird-driver/src/test directory

We have seen several releases with a few features and changes :


2.1.1 (November, 22, 2020)
driver-native
  • Feature #62 - Change value of getDefaultLibraryFilename in MacOS.
  • Feature #63 - Make getMaster return OS error when failing to load the client library.
driver
  • Fix #69 - Subsequent use of Statement::execute* methods may send incorrect value of input parameters.
2.1.0 (December, 29, 2019)
driver
  • Feature #30 - Add methods executeReturningAsObject and fetchAsObject to return records as objects instead of arrays.
  • Feature #43 - Add Statement.columnLabels property.

Thursday, December 10, 2020

node-firebird status for Firebird Advent 2020

node-firebird status for Firebird Advent 2020 

https://qiita.com/advent-calendar/2020/firebird


This year we have seen several releases with a few features and changes :

Version 0.9.3 Changes : 
Fixes Issue #182 - Parameterize the location of firebird.msg

Version 0.9.4 Changes : 
Fix issues #222, #220, #216, #209, #208
Thanks to @jucapablanca

Version 0.9.5 Changes : 
Minor corrections #226

Version 0.9.6 Changes : 
Corrections for reading empty blobs fields and also for empty varchar fields of type charset none returning undefined #228

Version 0.9.7 Changes : 
Adding ServiceManager typescript definitions; and fixing typos and potential bugs. #229

Version 0.9.8 Changes : 
Adding GDSCodes #231

Version 0.9.9 Changes : 
Supports of BOOLEAN type, bug fix, and intellisense experience improvement. #235
Correct issues and new implementations #238

Tuesday, December 08, 2020

FirebirdWebAdmin status for Firebird Advent 2020

FirebirdWebAdmin status for Firebird Advent 2020 

https://qiita.com/advent-calendar/2020/firebird



This year we have seen one release with a few features and small changes in master branch 

Version 3.4.1 (27.02.2020) Changes : 
  • [enhancement:] Adjust "Accessories" page UI.
  • [enhancement:] Remove Crowdin badge from footer.
  • [enhancement:] Update debug_funcs.inc.php
  • [bugfix:] Don't warn if "isql" is "isql-fb" on Linux
  • [typo:] Correct typo: firebirid -> firebird
  • [bugfix] fix sql create database
  • [enhancement:] Add Character Sets
  • [enhancement:] Quiet PHP7.2 deprecation warning …
  • [enhancement:] Further create_function refactor
  • [enhancement:] Remove unused/outdated markableFbwaTable.
  • [enhancement:] cosmetics

Further informations 
See CHANGELOG.md to get the full changelog.

One option to install 3.4.1 is now using a docker image that will pull the requirements (apache/php)


https://hub.docker.com/r/marianaldenhoevel/firebirdwebadmin

Thursday, October 22, 2020

Firebird 3.0.7 sub-release is available



Firebird Project is happy to announce general availability of Firebird 3.0.7 — the latest point release in the Firebird 3.0 series.
This sub-release offers many bug fixes and also adds a few improvements, please refer to the Release Notes for the full list of changes.
Binary kits for Windows, Linux, Mac OS and Android platforms are immediately available for download.

All users of Firebird v3.0.6 are strongly encouraged to upgrade to v3.0.7 as soon as possible due to several serious bugs found in v3.0.6 and fixed in this point release.

Monday, October 19, 2020

Python 3 Firebird-driver & Firebird-lib 1.0.0 released



The firebird-driver package provides official Python Database API 2.0-compliant driver. In addition to the minimal feature set of the standard Python DB API, this driver also exposes the new (interface-based) client API introduced in Firebird 3, and number of additional extensions and enhancements for convenient use of Firebird RDBMS. The driver is written as pure-Python package (requires Python 3.8+) on top of Firebird client library (fbclient.so/dll) using ctypes. Driver supports Firebird version 3.0 and higher.

You can download this driver from PyPI or or install it using pip.

Please note, that FDB driver is now considered as legacy driver, and its development will be discontinued together with 2.5 once Firebird 4.0 will be released later this year.

The driver uses firebird-base package, which is a collection of modules that have general applicability, like extended configuration, context-driven logging and trace/audit, hooks, work with structured binary buffers, extended data structures etc. The driver uses almost all features provided by “base” package, but specifically the use of hook mechanism and context-driven logging and trace/audit are potentially the most valuable improvements.


The firebird-lib package provides extensions to the firebird-driver.
This package provides modules for:
Work with Firebird database schema.
Work with Firebird monitoring tables.
Processing output from gstat Firebird utility.
Processing Firebird server log.
Processing output from Firebird server trace & audit sessions.

You can download this library from PyPI or or install it using pip.

Monday, September 21, 2020

Firebird driver for Python 3– release 0.8.0

The driver is no longer beta, and is now considered as stable for Firebird 3.0 (support for Firebird 4 is still evolving till final release). Documentation is now complete.

ChangeLog:

Documentation, both in code and separate (especially Usage Guide).

Added support for new FB4 data types in ARRAY fields.

Refactoring in driver hooks.

New Cursor.call_procedure() method.

Refactoring and fixes in Server and its services.

New Flamerobin snapshot available! 0.9.3.4 with a few fixes and small features

 New Flamerobin snapshot available! 0.9.3.4 with a few fixes and small features


https://github.com/mariuz/flamerobin/releases/tag/0.9.3.4


Take a look, test and comment!

Wednesday, September 09, 2020

Rust Firebird Client updated with Firebird wire protocol implemented

Rust Firebird Client updated with Firebird wire protocol implemented in pure Rust and ARM support

https://github.com/fernandobatels/rsfbclient/pull/22

https://crates.io/crates/rsfbclient

Saturday, September 05, 2020

New Firebird driver for Python – release 0.7.0



New Firebird driver for Python – release 0.7.0. This version provides support for new Firebird 4 data types: TIME/TIMESTAMP WITH TIMEZONE, DECFLOAT and extended DECIMAL/NUMERIC via internal INT128 storage.

Monday, August 24, 2020

Building Firebird 3.0 Client / Embedded for Android ARM-64

Download and install ndk  unzip in your home (ndk-r17c is the last with gcc support)

install firebird build dependencies
sudo apt-get build-dep firebird3.0
export NDK=$HOME/android-ndk-r17c
echo $NDK

get the Firebird 3.0 source code

git clone https://github.com/FirebirdSQL/firebird.git
cd firebird
git checkout B3_0_Release
./autogen.sh --prefix=/opt/firebird --enable-binreloc --with-cross-build=android.arm64 --without-editline  
make

after that the libfbclient.so is created for arm-64

file  gen/buildroot/opt/firebird/lib/libfbclient.so.3.0.0 
gen/buildroot/opt/firebird/lib/libfbclient.so.3.0.0: ELF 64-bit LSB  shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b6cb7db07fcad2475aa79352fb515cbe3ac44eea, stripped

Soon i will add a download link

ps: fbclient.so in 3.0 can be used as embedded

Tuesday, June 30, 2020

Firebird Project is happy to announce general availability of Firebird 3.0.6

Firebird Project is happy to announce general availability of Firebird 3.0.6 — the 6th point release in the Firebird 3.0 series.

This sub-release offers many bug fixes and also adds a few improvements, please refer to the Release Notes for the full list of changes.
Binary kits for Windows, Linux and Android platforms are immediately available for download, Mac OS packages will follow shortly.

Wednesday, May 27, 2020

Mark Rotteveel and documentation team migrated the first documents to asciidoc



Mark Rotteveel and documentation team migrated the first documents to asciidoc

– Docbuilding Howto
https://www.firebirdsql.org/file/documentation/html/en/firebirddocs/docbuildhowto/firebird-docbuilding-howto.html

– Docwriting Guide
https://www.firebirdsql.org/file/documentation/html/en/firebirddocs/docwritehowto/firebird-docwriting-guide.html

ps: Since May/June 2020, the Firebird documentation project has switched to AsciiDoc for its documentation. This section gives a short overview how AsciiDoc is used by the project.

Tuesday, May 19, 2020

Firebird 4.0 Beta 2 release is available for testing

Firebird Project announces the second (and last) Beta release of Firebird 4.0, the next major version of the Firebird relational database, which is now available for testing on Windows and Linux platforms.

This Beta release arrives with features and improvements already implemented by the Firebird development team, as well as with countless bugfixes. Our users are appreciated giving it a try and providing feedback to the development mailing list. Apparent bugs can be reported directly to the bugtracker.

Beta releases are not encouraged for production usage or any other goals that require a stable system. They are, however, recommended for those users who want to help in identifying issues and bottlenecks thus allowing to progress faster through the Beta/RC stages towards the final release.

Please read the Release Notes carefully before installing and testing this Beta release.

Tuesday, March 31, 2020

Compiling Flamerobin under Mac OS latest version

Updated instructions are now here
https://github.com/mariuz/flamerobin/blob/master/BUILD.txt#L182

Thanks to Tomas Dvorak

We are happy to announce the first release of Jaybird 4.

We are happy to announce the first release of Jaybird 4.

Jaybird 4 is – compared to Jaybird 3 – an incremental release that builds on the foundations of Jaybird 3.
The focus of this release has been on further improving JDBC support and adding support for the new data types and features of Firebird 4.


The main new features are:
  • Wire encryption support (backported to Jaybird 3.0.4)
  • Database encryption support (backported to Jaybird 3.0.4)
  • Wire compression support
  • Authentication plugin improvements
  • Firebird 4 data type bind configuration support (since Jaybird 4.0.0-beta-2)
  • Firebird 4 DECFLOAT support
  • Firebird 4 extended numeric precision support
  • Firebird 4 time zone support
  • Firebird 4 statement timeout support (since Jaybird 4.0.0-beta-2)
  • JDBC RowId support
  • DatabaseMetaData getPseudoColumns implemented
  • DatabaseMetaData getVersionColumns implemented
  • DatabaseMetaData getFunctions implemented (since Jaybird 4.0.0-beta-2)
  • DatabaseMetaData getFunctionColumns implemented (since Jaybird 4.0.0-beta-2)
  • Improved JDBC function escape support
  • New JDBC protocol prefix jdbc:firebird:
  • URL encoding in query part of JDBC URL (backported to Jaybird 3.0.9)
  • Generated keys support improvements
  • Operation monitoring
See also:

Tuesday, January 14, 2020

Firebird 3.0.5 sub-release is available

Firebird Project is happy to announce general availability of Firebird 3.0.5 — the 5th point release in the Firebird 3.0 series.

This sub-release offers many bug fixes and also adds a few improvements, please refer to the Release Notes for the full list of changes.
Binary kits for Windows and Linux platforms are immediately available for download, Android and Mac OS packages will follow shortly.

Friday, January 10, 2020

Firebird high-level native client for Node.js / TypeScript updated to v2.1.0


Firebird high-level native client for Node.js / TypeScript updated to v2.1.0 with a few changes .


Feature #30 - Add methods executeReturningAsObject and fetchAsObject to return records as objects instead of arrays.
Feature #43 - Add Statement.columnLabels property.

Monday, January 06, 2020

Wire encryption plugin using chacha cypher in Firebird master branch

AlexPeshkoff Added wire crypt plugin using ChaCha cipher Co-authored-by: Vlad Khorsun

Here is the pull request #244

SHA-256 in Firebird 3.0.x

Thanks to contributions from Alex Peshkov and Tony Whyman in Firebird 3.0.4

SHA-256 message digest may be used instead of SHA-1 for generating the client proof:

Thursday, December 19, 2019

Firebird driver for PHP 7.4 ready for download

Firebird driver for PHP 7.4 ready for download


Tuesday, December 17, 2019

Firebird high-level native client for Node.js / TypeScript updated to v2.0

Firebird high-level native client for Node.js / TypeScript updated to v2.0 with a few changes :

native-driver

  • Feature #34 - Support for Firebird events.
  • Feature #42 - SQL role name in connection options.

native-api

  • Minimal node version is 10.6.0.
  • Fix #41 - Error: pointer argument must be an instance of Pointer class or null with node v13.

all projects

  • Upgrade TypeScript to v3.7.

Thursday, November 21, 2019

Sourcetrail is now free and open-source

Sourcetrail is very useful when you try to study/navigate large C++ codebases like @firebirdsql / @LibreOffice


Monday, October 28, 2019

Replication in Firebird 4: Configuration and practical examples

Replication is a long-awaited feature that allows the creating of reliable high-performance database replicas without user-defined triggers and with full DDL support. This talk presents the replication subsystem architecture, possible replication modes, their impact on performance and available tuning options. We'll demonstrate how to set up a simple standby configuration and use it in practice.


Download PDF

Firebird on the road from v4 to v5

This talk done at Firebird Conference 2019 describes the current state of the v4 development and reviews its key features (new data types, Batch API, timezones). Dimitry Yemanov spoke about the future of Firebird development, including the updated release plan and expected post-v4 features. Review of upcoming features for Firebird 5


Download PDF



Wednesday, October 02, 2019

Embedded Firebird 3 Framework on MacOSX

Paul Beach has finally managed to get around to preparing a mechanism for creating an embedded Firebird Framework on MacOSX.


If you can’t build Firebird from scratch you can download a copy of the embedded framework (currently Firebird 3.0.4) from IBPhoenix. (Approx 15mb)

32bit Embedded Framework

64bit Embedded Framework

Thursday, September 05, 2019

Understanding High Performance

Understanding High Performance via Michael Abrash's Graphics Programming Black Book

"Before we can create high-performance code, we must understand what high performance is. The objective (not always attained) in creating high-performance software is to make the software able to carry out its appointed tasks so rapidly that it responds instantaneously, as far as the user is concerned. In other words, high-performance code should ideally run so fast that any further improvement in the code would be pointless.
Notice that the above definition most emphatically does not say anything about making the software as fast as possible. It also does not say anything about using assembly language, or an optimizing compiler, or, for that matter, a compiler at all. It also doesn't say anything about how the code was designed and written. What it does say is that high-performance code shouldn't get in the user's way—and that's all.
That's an important distinction, because all too many programmers think that assembly language, or the right compiler, or a particular high-level language, or a certain design approach is the answer to creating high-performance code. They're not, any more than choosing a certain set of tools is the key to building a house. You do indeed need tools to build a house, but any of many sets of tools will do. You also need a blueprint, an understanding of everything that goes into a house, and the ability to use the tools.
Likewise, high-performance programming requires a clear understanding of the purpose of the software being built, an overall program design, algorithms for implementing particular tasks, an understanding of what the computer can do and of what all relevant software is doing—and solid programming skills, preferably using an optimizing compiler or assembly language. The optimization at the end is just the finishing touch, however."

Tuesday, September 03, 2019

ADO.NET provider 7.1.0.0 for Firebird is ready

New version 7.1.0.0 of ADO.NET provider for Firebird is ready for download. The main focus of this release is performance.

Wednesday, August 21, 2019

New version 7.0.0.0 of ADO.NET provider for Firebird is ready for download.

New version 7.0.0.0 of ADO.NET provider for Firebird is ready for download. The main focus of this release is wire encryption.

Monday, August 12, 2019

Firebird high-level native client for Node.js / TypeScript updated to v1.0.0

Firebird high-level native client for Node.js / TypeScript updated to v1.0.0

Thursday, April 18, 2019

Xubuntu 19.04: The Exhaustive Update

Xubuntu 19.04: The Exhaustive Update #Xubuntu #Xfce #DiscoDingo https://bluesabre.org/2019/04/18/xubuntu-19-04-the-exhaustive-update/

Thursday, February 21, 2019

Firebird 4.0 Beta 1 release is available for testing

Firebird Project announces the first Beta release of Firebird 4.0, the next major version of the Firebird relational database, which is now available for testing.

This Beta release arrives with features and improvements already implemented by the Firebird development team, as well as with countless bugfixes. Our users are appreciated giving it a try and providing feedback to the development mailing list. Apparent bugs can be reported directly to the bugtracker.

Beta releases are not encouraged for production usage or any other goals that require a stable system. They are, however, recommended for those users who want to help in identifying issues and bottlenecks thus allowing to progress faster through the Beta/RC stages towards the final release.

Please read the Release Notes carefully before installing and testing this Beta release.

Saturday, February 09, 2019

Pure Elixir database driver for Firebird

Pure Elixir database driver for Firebird

Firebird 4.0 Built-in logical replication

Firebird 4.0 implemented Built-in logical replication is now merged

Here is the pull request

https://github.com/FirebirdSQL/firebird/pull/182


We know that is a long standing feature request

Firebird 4.0 Changed travis distribution used to Ubuntu xenial.

Firebird 4.0 is using Ubuntu xenial on travis .
https://travis-ci.org/FirebirdSQL/firebird

.travis.yml looks a lot simpler after this change.

Build Status 
ps: Here is official Travis CI announcement: Ubuntu Xenial 16.04 is available

Tuesday, February 05, 2019

Max Transaction ID in Firebird



Firebird 3.0.x introduced 48-bit internal transaction IDs that are publicly (via API and MON$ tables) represented as 64-bit numbers. This makes the new limit roughly equal to 2.8*10^14 transactions, later it could be extended up to the 2^63 limit.


Related notice in Firebird 3.0.x release notes.
Related article about Posgtresql : How long will a 64 bit Transaction-ID last in PostgreSQL?

Friday, January 18, 2019

Understanding Debian: The Universal Operating System

"And my final test as to whether or not Debian succeeded was: could the founder step away from the project and could the project keep going because that is the only point at which you know that the project has basically taken a life of its own." ~ Ian Murdock


Wednesday, December 12, 2018

Compiz: Ubuntu Desktop's little known best friend

What i love in Ubuntu : woobly windows via compiz

compiz-scaleMac-3swipe



https://code.mradford.com/post/the-ubuntu-compiz-desktop/

Friday, October 05, 2018

Firebird 3.0.4 sub-release is available

Firebird Project is happy to announce general availability of Firebird 3.0.4 — the 4th point release in the Firebird 3.0 series.

This sub-release offers many bug fixes and also adds a few improvements, please refer to the Release Notes for the full list of changes. Binary kits for Windows, Linux and Android platforms are immediately available for download, Mac OS kits will follow shortly.

Wednesday, September 05, 2018

Firebird Visual Studio 2017 builds are added to AppVeyor

Firebird Visual Studio 2017 builds are added to AppVeyor for x64 and x86 Platforms

Build Status


Tuesday, July 24, 2018

Firebird has now automatic Windows builds with AppVeyor

Firebird has now AppVeyor CI builds, like we have them with travis, but

AppVeyor is for Windows related compilers (Visual Studio)


https://ci.appveyor.com/project/FirebirdSQL/firebird


Monday, July 23, 2018

Firebird 4.0: Time Zone feature documentation


Via Firebird-devel : Here is the first README version for the Time Zone feature in Firebird 4.0

https://github.com/FirebirdSQL/firebird/blob/master/doc/sql.extensions/README.time_zone.md

Monday, July 02, 2018

LibreOffice is now available for Haiku

LibreOffice is working and already can be installed via HaikuDepot.

Here is the full announcement

https://discuss.haiku-os.org/t/libreoffice-is-now-available-for-haiku/6917


Friday, June 15, 2018

C++ the Newest Old Language : presentation by Matt Godbolt (GOTO Chicago 2018)

This presentation was recorded at GOTO Chicago 2018 C++ is an old language only used by the unfortunate few that absolutely have to, right? Wrong! C++ is not the language it used to be: clunky, error-prone and lacking in tooling. A lot has changed in the last decade: three new language revisions, new compilers and all-new: [...] Download slides and read the full abstract here: https://gotochgo.com/2018/sessions/359


Friday, March 23, 2018

Vote for Firebird as Sourceforge Project of the month (May 2018)

Sourceforge is running a poll to elect its May’s Project of the Month, and Firebird is among the candidates.


To vote, you need to have an account (it is free to register) at sourceforge.net and go to this URL, and comment with the following line:

VOTE: firebird

Friday, February 16, 2018

Some of the few advantages of using Firebird 3.0.x is that performance was greatly improved vs 2.5.x

Here are a few related performance/tunning articles

In the first article Vlad does quite a few benchmarks between Firebird 2.5/3.0.0/3.0.2 releases . It's very nice that minor releases brings free speedups. He also shows Firebird 3.0.3 performance related changes and fixes and the future ones that are already in Firebird 4
 
 Firebird Performance, by Vlad Khorsun, Firebird Project
 Tuning Linux, Windows, and Firebird for heavy workload by Alex Kovyazin, IBSurgeon.
 Firebird 3: New in Database Statistics and New SQL execution plans, by Dmitry Kuzmenko, IBSurgeon
 Advanced Firebird Trace API, by Vlad Horsun, Firebird Project

Thursday, February 08, 2018

Firebird 3.0.3 Binary kits for macOS on both 32-bit and 64-bit platforms are immediately available for download

Firebird 3.0.3 Binary kits for macOS on both 32-bit and 64-bit platforms are immediately available for download

Monday, February 05, 2018

Firebird 3.0.3 sub-release is available

Firebird Project is happy to announce general availability of Firebird 3.0.3 — the third point release in the Firebird 3.0 series.

This sub-release offers many bug fixes (including fix for a recently reported security vulnerability) and also adds a few minor features and improvements, please refer to the Release Notes for the full list of changes. Binary kits for Windows and Linux on both 32-bit and 64-bit platforms are immediately available for download.

ps: Mac OS builds are coming soon

Thursday, February 01, 2018

In 2017, The Document Foundation (TDF) launched four tenders aimed at improving LibreOffice. Tender four is of interest to the Firebird community

In 2017, The Document Foundation (TDF) launched four tenders aimed at improving LibreOffice. Tender four is of interest to the Firebird community:

(4) Tender to implement HSQLDB binary format import in LibreOffice

(https://blog.documentfoundation.org/blog/2017/05/04/tender-implement-hsqldb-binary-format-import-libreoffice-201705-03/)


Collabora will develop a mechanism to import database files with high fidelity from the HSQLDB binary file format, which has been used inside many existing ODB files, by reading the Java serialization code, and writing a filter to import all data into LibreOffice Base. The objective is to remove the legacy Java/HSQLDB database and move to Firebird.


TDF will invest € 29,750.00

Wednesday, January 31, 2018

LibreOffice Firebird driver related changes

There were quite a few bugs fixed in the last two months related to Firebird driver in LibreOffice also interesting commits

Tamas Bunth commited : Add HSQLDB schema import.
He also fixed Bug 104734 - FIREBIRD: Add those field types that are not available with FB while they are available with Hsqldb.
Lionel Elie Mamane fixed Bug 104986 - Firebird: Function EXTRACT doesn't work with WEEKDAY, YEARDAY, MILLISECOND.
Tor Lillqvist fixed Bug 71007 - EDITING: Embedded Firebird - Impossible to set milliseconds in a timefield with GUI
Tamas Bunth fixed Bug 70425 - EDITING: Embedded Firebird - Copying integer values from Calc to Base impossible

Wednesday, October 25, 2017

Ubuntu 17.10 comes with Firebird 3.0.2

Ubuntu 17.10 is released and it comes with Firebird 3.0.2 (Latest stable version)

Thanks to Damyan  Ivanov and Debian project contributors to Firebird packages

Thursday, October 12, 2017

Visual Studio 2017 Version 15.4 Released


You can now use CMake for Linux C++ development in Visual Studio

That could be interesting in cross compiling Firebird from Windows side to Linux/WSL

https://blogs.msdn.microsoft.com/visualstudio/2017/10/10/visual-studio-2017-version-15-4-released/

Thursday, October 05, 2017

Firebird 3 on Apple IOS

One side effect of new Firebird 3.0.3 builds for Apple Macosx is that now there is a Mach-O dynamically linked shared library for arm_v7 that can be used on IOS.
You can ask for details on Firebird-devel 
ps: For Firebird 2.5.x there is a build on Paul's blog also Egor Pugin created Cmake files for IOS Builds (I didn't tested that route yet)

Wednesday, September 13, 2017

Firebird 4.0 Alpha 1 release is available for testing

Firebird Project announces the first Alpha release of Firebird 4.0, the next major version of the Firebird relational database, which is now available for testing.

ADO.NET provider 5.11.0.0 for Firebird is ready (with .NET Standard 2.0 support)

New version 5.11.0.0 of ADO.NET provider for Firebird is ready for download. This release is about .NET Standard 2.0. Now the .NET Standard 2.0, with all the new APIs supported, version is available. Another new feature is support for passing key over the wire for encrypted databases (you need to have server side plugin for this feature, i.e. this from IBPhoenix). New connection string property crypt key is available for that. The value is base64 encoded data representing the key.

Jaybird 3 with Firebird 3 embedded example

Mark Rotteveel published a guide and example program using Firebird 3 Embedded with Jaybird 3. The sample you can find it on https://github.com/mrotteveel/jaybird-embedded-example.

Tuesday, August 01, 2017

Firebird inside Firebird in DotNet External Engine (FbNetExternalEngine)

You can load any .NET code in FbNetExternalEngine also as Proof Of Concept you can also load Firebird Embedded inside that in server (Firebird inside Firebird in DotNet External Engine).

Friday, July 21, 2017

Firebird 3.0.3 for MacOSX (Beta)

A beta version of a 64bit Firebird 3.0.3 for MacOSX is now available as a download for those of you who might be interested in trying it. http://www.ibphoenix.com/download/firebird/30

Changing the HASH function (Firebird CORE-4436)

There is an interesting discussion on firebird-devel about changing and extending the hash function in Firebird (related to CORE-4436)

Thursday, July 13, 2017

Firebird support for Decfloat will be enabled in Firebird 4.0



Firebird support for Decfloat will be enabled in Firebird 4.0 (Can be tested with latest snapshots)

Decfloat is a new SQL:2016 standard type introduced by IBM in DB2

Firebird Documentation Funding 2017

Documentation Funding 2017 Reached 5000$ of the 5000$ Goal https://www.firebirdsql.org/en/doc-funding-2017/



The Firebird Project's 2017 project is to translate into English the Firebird Developer Guide, a Russian-language work sponsored by IBSurgeon and Moscow Exchange, edit and review it and publish it in the project's documentation library. For this project, as ever, we need funding. This is your opportunity to make it happen, by contributing whatever you can to our crowdfunding campaign.

Wednesday, April 26, 2017

HSQLDB binary format import



Tender approved in the budget by the TDF board


In order to remove the legacy Java / HSQLDB database completely, and move fully to Firebird in LibreOffice 5.4 it is necessary to be able to import old document data with high fidelity from the HSQLDB binary file format which we have used (for performance) inside so many of our existing ODB files. This task involves reading the existing (reasonably simple) Java serialization code, and writing an (import only) filter to import this data safely into base.


Thursday, April 20, 2017

LibreOffice bug #106866 is now fixed : When I change the field length of the result is multiplied by 4 each time (firebird, varchar)

Bunth Tamás committed a patch related to issue #106866: query character size instead of bytes

It has been pushed to "master":
It will be available in 5.4.0. The patch should be included in the daily builds available at 
More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds 
Affected users are encouraged to test the fix and report feedback.

Wednesday, January 18, 2017

Firebird bug CORE-5452 is fixed : Segfault when engine's dynamic library is unloaded right after closing worker threads


Firebird bug CORE-5452 is fixed http://tracker.firebirdsql.org/browse/CORE-5452

The issue was reported multiple times in Firebird devel list, I will mention here Damyan Ivanov (Debian) and Stephan Bergmann. (RedHat)

And related commit in Firebird 3.0 branch

https://github.com/FirebirdSQL/firebird/commit/40f782ae3e918c4f3842571ff8064be1c4f54961

Stephan Bergmann contributed the patch to LibreOffice in external/firebird

Saturday, December 17, 2016

LibreOffice bug #103074 : Implement Boolean Type for Firebird driver is now fixed


Bunth Tamás committed a patch related to issue #103074 : Implement Boolean Type for FB driver .
It has been pushed to "master":

It will be available in 5.4.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.

ps:
From the list a of Firebird integration blockers there are only a few left

Listed blockers:

   70425: EDITING: Embedded Firebird - Copying integer values from Calc to Base impossible  See dependency tree for bug 70425
   70506: EDITING: Embedded Firebird - Alias in queries are ignored  See dependency tree for bug 70506
   104316: FIREBIRD 3 : attempting to open a Firebird 3 embedded ODB database file fails to draw all UI elements, causes general LibreOffice UI malfunction

Saturday, December 03, 2016

Firebird 3 by default in LibreOffice 5.4

Lots of missing features & big bugs were fixed recently .
All of the blockers that were initially mentioned on tracking bug are now fixed.

Lionel mentioned that he added a few more blockers that needs to be fixed until Firebird will be switched by default :
I went over
https://bugs.documentfoundation.org/buglist.cgi?quicksearch=firebird
and added a few open bugs to the blocker bug
https://bugs.documentfoundation.org/51780
based on their description (and NEW instead of UNCONFIRMED status)
only, without reading the bug log in great detail.
Tamás Bunth (Wastack) agreed that 6 months time frame is more than enough to fix bugs that will appear
I agree, it would be reasonable to wait a half year. Until that we can
fix the already found and the upcoming bugs, solve the backward
incompatibility. Even if those can be solved quickly we can upgrade to
the c++ API. 
Another issue is importing old hsqldb databases without java installed

It requires making a read-only parser for the HSQLDB "cached" table
data format in another language than Java. Most definitely possible,
the format may even be better documented than "read the source code".


Service for migrating Firebird 2.5 format to Firebird 3.0

On Libreoffice Devel there is a thread about migration of the already created odb files with 2.5 databases inside (fdb) but also about the forward and backward compatibility of the Firebird backup archive (fbk).
https://lists.freedesktop.org/archives/libreoffice/2016-November/075953.html

Lionel added notes about upgrading in the wiki :

People trade privacy for convenience or the other way round all the time. People that in this case favor convenience can use the hypothetical web service. People that favor privacy can follow the instructions at
https://wiki.documentfoundation.org/Development/Base/FirebirdSQL#Older_Firebird_databases(which the web service should point towards for information).While I'm not exactly lobbying for this web service, we are a volunteer-driven organisation and if Tamás feels like doing it, all the merrier.



Wednesday, November 23, 2016

Lionel Elie Mamane committed a patch related to this issue tdf#101789 : Firebird 3 - fails to build on OSX 10.11.x with clang

Lionel Elie Mamane committed a patch related to this issue tdf#101789 Firebird 3 - fails to build on OSX 10.11.x with clang.

It has been pushed to "master": tdf#101789 work around DYLD_LIBRARY_PATH limitations on newer MacOS X.

An alternative fix has been in place ever since Stephan Bergmann commit " Allow external/firebird to be built with a custom SHELL under Mac OS X 10.11".

Tuesday, November 22, 2016

Bunth Tamás commited a few patches related to Firebird driver

Tamás committed a patch related to tdf#74172 issue.
Ensure prepared while setting numeric
It has been pushed to "master":
It will be available in 5.3.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours.
More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.

Another commit is just code refactoring : get table name from resultset simply. There is a much simpler way to access table name in ResultSetMetadata in Firebird sdbc.

Friday, November 11, 2016

Bunth Tamás commited a patch for LibreOffice bug #74172 : use DECIMAL and NUMERIC data types

 Bunth Tamás commited  a patch for bug #74172 use DECIMAL and NUMERIC data types

From the list a of Firebird integration blockers there are only a few left

Listed blockers:
  bug 69949 - table editor should support the autoincrement
  bug 71009 - relationship management not implemented in GUI
  bug 71251 - Creating table from default choices via wizard fails
  bug 74019 - Any table or select query having more than 10 fields fails
  bug 74172 - no data type DECIMAL/NUMERIC 
  bug 76072 - view creation not implemented

Thursday, May 26, 2016

Tensorflow and why i love it

I work for my paper for master degree (Artistic style Implementation with Tensor Flow) and i love Tensorflow



Here are a few reasons why : It's python also i can use it quite easily with my gpus (gtx) also it's distributed across servers using gRPC


Tensor Flow has a clean, modular architecture with multiple frontends and execution platforms. Details are in the white paper.






 python -m tensorflow.models.image.mnist.convolutional
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally
Extracting data/train-images-idx3-ubyte.gz
Extracting data/train-labels-idx1-ubyte.gz
Extracting data/t10k-images-idx3-ubyte.gz
Extracting data/t10k-labels-idx1-ubyte.gz
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:900] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 0 with properties:
name: GeForce GTX 750
major: 5 minor: 0 memoryClockRate (GHz) 1.0845
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.60GiB
I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0:   Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:755] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 750, pci bus id: 0000:01:00.0)
Initialized!
Step 0 (epoch 0.00), 23.4 ms
Minibatch loss: 12.054, learning rate: 0.010000
Minibatch error: 90.6%
Validation error: 84.6%
Step 100 (epoch 0.12), 19.2 ms
....
Minibatch loss: 1.595, learning rate: 0.006302
Minibatch error: 0.0%
Validation error: 0.8%
Step 8500 (epoch 9.89), 20.0 ms
Minibatch loss: 1.608, learning rate: 0.006302
Minibatch error: 1.6%
Validation error: 0.8%
Test error: 0.8%

After learning Theano now i can easily convert to TensorFlow
Here are few tutorials
https://github.com/nlintz/TensorFlow-Tutorials


Tuesday, April 19, 2016

Firebird 3.0 is released

Firebird Project is happy to announce general availability of Firebird 3.0 — the latest major release of the Firebird relational database.

The primary goals for Firebird 3.0 were to unify the server architecture and to improve support for SMP and multiple-core hardware platforms. Parallel objectives were to improve threading of engine processes and the options for sharing page cache across thread and connection boundaries.

Alongside these aims came new strategies to improve performance, query optimization, monitoring and scalability and to address the demand for more security options. A number of popular features were introduced into the SQL language, including the long-awaited support for the Boolean data type and the associated logical predications.

Read the Press Release for more information. Please refer to the Release Notes for the full list of changes. Binary kits for Windows and Linux on both 32-bit and 64-bit platforms are immediately available for download. MacOS X and other platforms will follow.

Friday, April 15, 2016

Firebird 3 final is about to be released


The source code was just tagged in the repository, so we can expect the final release being out in the next days.

One change in the new Firebird 3 OO examples api is addition of the Services example .


Friday, April 01, 2016

Good news : Firebird 3.0 builds and works now with libreoffice

It was the comments that I forgot in download.lst (I forgot to comment 2.5.5 and enable 3.0).
I have updated the patch and now it compiles fine on ubuntu 15.10 x64
https://gist.github.com/mariuz/bcde7f783b657b2465e5

Submited new gerrit
https://gerrit.libreoffice.org/23737



Here is manual test :)
./instdir/program/soffice

Icu error with Firebird 3.0 patch , testing lode script

I started refactoring firebird 3.0 patch and there are few issues with icu linking.
There are is no more --with-system-icu from the firebird configure options (Firebird on posix is using system icu : there is no icu no more in firebird tree).

So firebird is using the icu from libreoffice folder (downloaded to build libreoffice)
I will try to compile libo with --with-system-icu

On Windows 10 i started testing the lode script for setting up libo development 

Wednesday, March 30, 2016

Firebird 2.5 Patch to compile with Visual Studio 2015

Final Firebird 2.5 Patch to compile with Visual Studio 2015 is now merged
https://github.com/FirebirdSQL/firebird/pull/12

I will add a gerrit for libreoffice also https://patch-diff.githubusercontent.com/raw/FirebirdSQL/firebird/pull/12.patch

Gerrit for this patch is now created and added Lionel to the reviewers

https://gerrit.libreoffice.org/#/c/23738/


update: added patch with mod_loader changes for VC14 ,
removed external/firebird/firebird-vs2013.patch.1 is not needed anymore in 2.5.5 (applied upstream) ,
modified UnpackedTarball_firebird.mk apply firebird-msvc14.patch.1 only on Windows

ps: in Firebird tree i will send a pull request with icu small changes needed also new solutions for VS 2015 were merged earlier

Wednesday, March 23, 2016

Firebird 3.0 and MSVC14 build (good news)



I have tested the Firebird 3.0 and MSVC14 compiler and builds ok

https://github.com/FirebirdSQL/firebird/tree/B3_0_Release/builds/win32/msvc14


Tomorrow I will test also with firebird 2.5.x branch and i will check what patches are needed

Instructions for building it are located here

https://github.com/FirebirdSQL/firebird/blob/master/doc/README.build.msvc.html

and on the website

Thursday, August 06, 2015

Let's go back to the c , Firebird embedded backup service works

I have used an c based example for services api and seems that it works without a need for auth user



gcc backup_service.c -lfbembed

./a.out employee.fdb employee.fbk

Attach succeed

Start succeed

gbak:readied database employee.fdb for backup gbak:creating file employee.fbk

...

gbak:writing SQL roles gbak:writing names mapping gbak:closing file, committing, and finishing. 74752 bytes written

I will split the backup service function in two one for backup and one for restore then i will compare with my service example , maybe is a buffer truncation issue


Wednesday, July 15, 2015

Update firebird to version 2.5.4 is applied into LibreOffice master

There was a small issue with tinderbox and was reverted and then re-applied to master.

Rebuilding of indexes function is now removed from master (Using firebird backup format for .odb there is no need for rebuild indexes).

Thursday, July 02, 2015

JDK issues on OSX , ran the tests without Java

To run all the dbaccess tests On OSX I had to install jre 6 then jdk/jre 8 but still
dbaccess tests wouldn't run java popup still appeared even if the java -version showed
the proper 8 version , so for the moment i have disabled the java tests

./autogen.sh --without-java

Update:

Tests are finished and Firebird 2.5.4 update patch on gerrit is up for review
https://gerrit.libreoffice.org/16703

Tested on OSX 10.10.4 , Win 10 , Ubuntu 14.04

Wednesday, July 01, 2015

Debugging with ddd : crashes in rtl_ImplGetFastUTF8UnicodeLen

Found it where it crashes at line 645 in Connection.cxx
OUString aData(pResults + 3,
                           isc_vax_integer(pResults, 2),
                           RTL_TEXTENCODING_UTF8);
            
and here is the backtrace at line 634 in ustring.cxx
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7b7aebd in rtl_ImplGetFastUTF8UnicodeLen (pStr=0x7ffffffff000 , nLen=11582, ascii=0x7fffffffc4b8) at /home/mariuz/work/libo/sal/rtl/ustring.cxx:634
(gdb) frame 4
#4  0x00007fff96c9bce2 in connectivity::firebird::Connection::runBackupService (this=0x7fffac0a1400, nAction=1) at /home/mariuz/work/libo/connectivity/source/drivers/firebird/Connection.cxx:645
(gdb) frame 24
#24 0x00007ffff195e906 in SalFrame::CallCallback (this=0x10a7680, nEvent=22, pEvent=0x15fd5d0) at /home/mariuz/work/libo/vcl/inc/salframe.hxx:246
(gdb) frame 23
#23 0x00007ffff1586e00 in ImplWindowFrameProc (_pWindow=0x10a6ce0, nEvent=22, pEvent=0x15fd5d0) at /home/mariuz/work/libo/vcl/source/window/winproc.cxx:2578
(gdb) frame 5
#5  0x00007fff96c9c99c in connectivity::firebird::Connection::documentEventOccured (this=0x7fffac0a1400, _Event=...) at /home/mariuz/work/libo/connectivity/source/drivers/firebird/Connection.cxx:814
(gdb) frame 4
#4  0x00007fff96c9bce2 in connectivity::firebird::Connection::runBackupService (this=0x7fffac0a1400, nAction=1) at /home/mariuz/work/libo/connectivity/source/drivers/firebird/Connection.cxx:645