← Back to team overview

ubuntu-phone team mailing list archive

Re: [Ubuntu-touch-coreapps] [RSS - Reader] Performance issue in QtQuick.LocalStorage 2.0

 

Michael, it seems like you kidding me. Or us. I am like C++ and from the first day of my work in RSS team I always speak about xml parsing in C++, models and so on. But answer always was "you must use qml where it's possible". And what now?! A lot of code already written with xmllistmodel and executeSql, even if that way was more complex then c++ realization.


13.06.13 15:39 Michael Zanetti написал(а):

Hi,


At the risk that some people don't like to hear this, I would highly recommend
to write the actual feed fetching and database storing part in C++/Qt and only
expose a well defined model containing the RSS feeds to QML. Maybe one model
per feed source or something like that.


Writing all that SQL query stuff in javascript will end up being more complex
and fail prone than writing a simple QML plugin in Qt.


Br,
Michael


On Thursday 13 June 2013 11:34:59 Joey Chan wrote:
> Hi Geeks,
>
> I'm a developer of RSS reader, I found a performance issue in qml database,
> which blocks the main thread for seconds.
>
> *issue description:*
> <code>
> dbResult = tx.executeSql('INSERT INTO article (title, link, description,
> pubdate, guid, feed_id) VALUES(?, ?, ?, ?, ?, ?)',
> [title , link, description, pubdate, guid,
> feed_id])
> </code>
> I use this code to insert a row of data into database, if just one row
> needed, ok with that; but if I need many rows of data to be insert, the
> database engine will execute this code many times and blocks the main
> thread for seconds.
>
> *solution: *
> 1. WorkScript. not support .import includes QtQuick.LocalStorage 2.0 >_<
> 2. binding or batch execute. In Qt C++, a list can be binded to a
> QSqlQuery, then only execute once to insert them into database, can anyone
> teach how to do that in qml?
> 3. U1DB. I haven't tried it, is it stable now?
>
>
> Thanks,
> Joey

--

Mailing list: https://launchpad.net/~ubuntu-phone
Post to : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~ubuntu-phone
More help : https://launchpad.net/~ubuntu-phone




Follow ups

References