Tuesday, June 30, 2015

Backup file firebird.fbk file inside odb is 0 length

That could be the reason gerrit wasn't merged Connection::runBackupService didn't quite worked:
(Currently doesn't actually work, the backup service fails with gbak:Exiting before completion due to errors and no further error messages).
I need to debug the isc_action_svc_backup error

On odb save event now saves fbk instead of fdb

XDocumentEventListener documentEventOccured was registered for when save button is pressed

It was done on this line in Connection.cxx :
xBroadcaster->addDocumentEventListener(this);

The issue was on this part of the code 
xInputStream = OStorageHelper::GetInputStreamFromURL(m_sFirebirdURL, xContext);
Now replaced with
xInputStream = OStorageHelper::GetInputStreamFromURL(m_sFBKPath, xContext);

m_sFirebirdURL is the original fdb path 

m_sFirebirdURL = m_pDatabaseFileDir->GetFileName() + "/firebird.fdb";
m_sFBKPath = m_pDatabaseFileDir->GetFileName() + "/firebird.fbk";



Friday, June 26, 2015

Semi good news : New Database.odb contains firebird.fbk

The semi good news is that New Database.odb contains fbk file saved when a table is created and saved from Base
Here is the unziped New Database.odb



The bad news is the firebird.fbk is in fact firebird.fdb file , so the saved file is the database file instead of backup file (i renamed the fbk to fdb and can be open in flamerobin)

When i loaded the New Database.odb i got this backtrace

rogram received signal SIGSEGV, Segmentation fault.
0x00007ffff7b7b99d in rtl_ImplGetFastUTF8UnicodeLen (pStr=0x7ffffffff000 , nLen=18238, ascii=0x7fffffffb658) at /home/mariuz/work/libo/sal/rtl/ustring.cxx:610
610             unsigned char c = (unsigned char)*pStr;
(gdb) 

So i need to work on the save fbk to odb part

Thursday, June 25, 2015

The good news

The good news is firebird_empty.odb simple test is is ok (fdb file is created in tmp area and queries work) as seen in the trace https://gist.github.com/mariuz/ecfbab056136b8736bda
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Driver.cxx:54: FirebirdDriver_CreateInstance()
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Driver.cxx:166: connect(), URL: sdbc:embedded:firebird
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Connection.cxx:173: Temporary .fdb location:  /tmp/lu3385bwxulf.tmp/firebird.fdb
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/DatabaseMetaData.cxx:851: getTypeInfo()
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Connection.cxx:883: buildTypeInfo(). Type info built.
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Connection.cxx:891: buildTypeInfo(). Closed.
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/Statement.cxx:111: executeQuery(SELECT DISTINCT indices.RDB$INDEX_NAME FROM RDB$INDICES indices JOIN RDB$INDEX_SEGMENTS index_segments ON (indices.RDB$INDEX_NAME = index_segments.RDB$INDEX_NAME) JOIN RDB$RELATION_FIELDS relation_fields ON (index_segments.RDB$FIELD_NAME = relation_fields.RDB$FIELD_NAME) JOIN RDB$FIELDS fields ON (relation_fields.RDB$FIELD_SOURCE = fields.RDB$FIELD_NAME) WHERE (indices.RDB$SYSTEM_FLAG = 0) AND ((fields.RDB$FIELD_TYPE = 14)      OR (fields.RDB$FIELD_TYPE = 37)) AND (indices.RDB$INDEX_INACTIVE IS NULL OR indices.RDB$INDEX_INACTIVE = 0) )
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/ResultSet.cxx:79: OResultSet().
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/StatementCommonBase.cxx:111: close
info:connectivity.firebird:3385:1:connectivity/source/drivers/firebird/StatementCommonBase.cxx:111: close
We need to modify the file firebird_integer_x64le.odb used in the qa tests (dbaccess/qa/unit/firebird.cxx) to include a fbk instead of fdb http://lists.freedesktop.org/archives/libreoffice-commits/2013-September/057217.html

Tuesday, June 23, 2015

Debugging #72987 libreoffice patch

I started debugging the gerrit at the end of #72987
export DEBUGCPPUNIT=TRUE
export CPPUNITTRACE="gdb --args"
export VALGRIND=memcheck
make CppunitTest_dbaccess_firebird_test
make -j 4 -rs -f /home/mariuz/work/libo/Makefile.gbuild CppunitTest_dbaccess_firebird_test
Seems that gdb debugging is locked
Update: I needed to export only one of the bash env variables not all of them
export CPPUNITTRACE="gdb --args"
Here is a more readable backtrace

Monday, June 15, 2015

New small patch from libo for El Capitan

We need to apply the same patch upstream in 2.5 tree so I have asked Paul why the flag was needed and if it can be removed. So it can be safely removed also upstream.

Update : patch applied both in trunk and firebird 2.5.x release branch. gds_relay target was removed from darwin makefile comments (target was removed many years ago by Alex)

It should be removed from all makefiles in 2.5.x branch (seems to be removed in trunk)

Tuesday, June 09, 2015

osx fixed , redoing the gerrit patch

Yesterday i had an exam so i slowed down my pace for the moment

Saturday i have the last exam on this year (Advanced Methods in Data Analysis)

the osx issue is that bash firebird configure script detects host/target as i386-darwin on x86-64 osx

https://discussions.apple.com/thread/2245432
so we have to use the 2.5.2 trick and force the build for darwin_x86_64

i*86-*-darwin*)
    MAKEFILE_PREFIX=darwin_x86_64

I will redo the gerrit and send it again after i make shure that it builds on all machines

and remove the old one

Sunday, June 07, 2015

testing make qtcreator-ide-integration more patches are now upstream . osx architecture linked issue

in libo git folder you can now create qtcreator files

make qtcreator-ide-integration
cd sw
qtcreator sw.pro


parsing/indexing the project took a few seconds . I'm more used to qtcreator than to kdevelop



On the firebird side , one more fix is now upstream .




I saw that we have an issue with osx patch



ld: warning: ignoring file ../temp/boot/jrd/dsc.o, file was built for unsupported file format ( 0xCF 0xFA 0xED 0xFE 0x07 0x00 0x00 0x01 0x03 0x00 0x00 0x00 0x01 0x00 0x00 0x00 ) which is not the architecture being linked (i386): ../temp/boot/jrd/dsc.o
http://ci.libreoffice.org/job/lo_gerrit_master/2971/Gerrit=Gerrit,Platform=MacOSX/consoleText

I will review what changed in the configure/makefile that triggered the issue

Saturday, June 06, 2015

Timo-T game modifications : environment effects, real time illumination, we've changed the lasers



A few modifications made these past few weeks, hope You like'em So we've played a little with the environment effects, real time illumination, we've changed the lasers, as You can see they look a lot different than they did before and we've optimized the shader to get some better reflections. Still need to implement a few minor things and solve a few bugs, but we are very excited with what we have so far. Hope You like it Leave us a comment with what Your thoughts are on this matter. Any feedback would be appreciated.


http://www.indiedb.com/games/timo-t/news/timo-t


Better view in the HD images area


http://www.indiedb.com/games/timo-t/images

Friday, June 05, 2015

#gsoc2015 for libreoffice update no #3 : patch has it's own brain (osx vs linux)

I worked on the finishing firebird 2.5.4 cygwin.msvc patch and i did also the up streaming (as much as i could from it)
I had an issue with patch created on linux didn't apply very well on osx (hunk issue)

I have prepared the gerrit for firebird 2.5.4 upgrade here https://gerrit.libreoffice.org/#/c/16103/

I solved the following rejects yesterday , i did my builds on all windows/osx/linux machines


2 out of 10 hunks FAILED -- saving rejects to file configure.in.rej
1 out of 2 hunks FAILED -- saving rejects to file src/jrd/gds.cpp.rej
1 out of 1 hunk FAILED -- saving rejects to file src/jrd/os/win32/mod_loader.cpp.rej



It was easier if patches where done for each file separated or as pull requests on github for easy cherry picking :)
Firebirdsql accepts now pull requests on github

Also i up-streamed some of the patches 
ps: i started importing the libo in kdevelop for easy debugging and it will take a while to import 

also started reviewing firebird endian issue and previous gerrit