Create a more effective implementation of XClob::length() and
XClob::getSubString() methods, where string is read segment-by-segment
instead of reading the whole underlying blob. That way it is possible to
handle big texts which would not fit into memory.
Also allow reading Clob data from a resultset with getString() and
writing it in a prepared statement with setString().
Implement XPreparedStatement::setClob(). Also implement a private
version of setClob() for creating a clob from OUString:
Allow the creation of a clob column with GUI by adding a new type in
ODataBaseMetaData::getTypeInfo().
Change-Id: Ibcbbdd80e8eed5e2a3fe55b0fa196401f1bcbcdf
Reviewed-on: https://gerrit.libreoffice.org/47093
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
Tested-by: Tamás Bunth <btomi96@gmail.com>
A cursor need only be closed in this manner if it was previously
opened and associated with stmt_handle by isc_dsql_set_cursor_name()
See Interbase API Guide: isc_dsql_free_statement
Change-Id: Iadb0dcf83ee58b6196112c44d922528a3f56f7ea
Reviewed-on: https://gerrit.libreoffice.org/46132
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
...(for now, from LIBO_INTERNAL_CODE only). See the mail thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2017-January/076665.html>
"Dynamic Exception Specifications" for details.
Most changes have been done automatically by the rewriting loplugin:dynexcspec
(after enabling the rewriting mode, to be committed shortly). The way it only
removes exception specs from declarations if it also sees a definition, it
identified some dead declarations-w/o-definitions (that have been removed
manually) and some cases where a definition appeared in multiple include files
(which have also been cleaned up manually). There's also been cases of macro
paramters (that were used to abstract over exception specs) that have become
unused now (and been removed).
Furthermore, some code needed to be cleaned up manually
(avmedia/source/quicktime/ and connectivity/source/drivers/kab/), as I had no
configurations available that would actually build that code. Missing @throws
documentation has not been applied in such manual clean-up.
Change-Id: I3408691256c9b0c12bc5332de976743626e13960
Reviewed-on: https://gerrit.libreoffice.org/33574
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
There is a much simpler way to access table name in ResultSetMetadata
in Firebird sdbc which I didn't notice before.
Change-Id: Ib306c04acf38ec86475d8d1a22a67012fe48539e
Reviewed-on: https://gerrit.libreoffice.org/30931
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
Tested-by: Lionel Elie Mamane <lionel@mamane.lu>
Store date inside the embedded firebird database as:
Years as the years since 1900.
Months from 0 to 11.
Change-Id: Ic6269a183261c4c482f91f0d3871b42c54d4b99f
Reviewed-on: https://gerrit.libreoffice.org/28173
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
Tested-by: Lionel Elie Mamane <lionel@mamane.lu>
A ridiculously fast way of doing this is:
for i in $(pcregrep -l -M -r --include='.*[hc]xx$' \
--exclude-dir=workdir --exclude-dir=instdir '^
{3,}' .)
do
perl -0777 -i -pe 's/^
{3,}/
/gm' $i
done
Change-Id: Iebb93eccbee9e4fc5c4380474ba595858a27ac2c
Reviewed-on: https://gerrit.libreoffice.org/22224
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com>
This only applies to embedded databases where any changes to the database
only affect the temporary extracted db which still has to be stored into
the .odb.
This only fixes the status for modification/insertion/deletion of data
in existing tables. Insertion of new tables still does not result
in the modified state being set.
Change-Id: I553f67127672f2cf49b98ddcdf7d25f22bef5074
Reviewed-on: https://gerrit.libreoffice.org/6621
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
Tested-by: Lionel Elie Mamane <lionel@mamane.lu>
Currently if the first set* method to be called is setNull, then
we segfault since we try to access m_pInSqlda which doesn't exist
yet.
Change-Id: I4ad9c0a7d68da11b2260a596dd95c4c2cb5bcd4c
This replaces the erronous Connection wide mutex. Libfbembed
is multithreaded hence we don't need a connection wide mutex.
Change-Id: Ifae79cdefecfe6597a535e36bda318563092bf6c