Fixed
Status Update
Comments
ab...@gmail.com <ab...@gmail.com> #2
We gave up upgrading to Room because we need to use FTS3/FTS4 virtual tables. Any plants to support it?
yb...@google.com <yb...@google.com>
ya...@google.com <ya...@google.com> #3
Florina Muntenescu (Android developer advocate at Google) told me that FTS support will definitely NOT be in Room 1.0 final. It is postponed to an indeterminate later version.
yb...@google.com <yb...@google.com> #4
It is possible to work with virtual tables and fts4 while using Room v1. You just need to create and access it by yourself using sql queries. Not perfect but it works for me (just did it a few days ago).
Can't wait for this feature to be in Room
Can't wait for this feature to be in Room
ab...@gmail.com <ab...@gmail.com> #5
If your FTS tables are separate from the rest of your model it's a viable solution. Mine are fully integrated with my model (almost all queries have JOINs with virtual tables) so it's a no-go.
ab...@gmail.com <ab...@gmail.com> #6
any news?
ya...@google.com <ya...@google.com> #7
I'm really looking forward to use FTS natively with Room. Can you give some kind of roadmap? E.g. is it considered for Room 1.2 or Room 2.0?
da...@google.com <da...@google.com>
ai...@gmail.com <ai...@gmail.com> #8
Using FTS should not block you from using room, you just cannot use compile time checked queries (you can still use them in RawQuery though).
[Deleted User] <[Deleted User]> #9
Thanks for the fast answer, Yigit. I'm more then happy to not have to work with RawQuery's anymore, and I don't want to jump back to it for using FTS.
Based on your answer I would guess that it's delayed / postponed any longer, cause it's already working with this kind of workaround?
Based on your answer I would guess that it's delayed / postponed any longer, cause it's already working with this kind of workaround?
Description
Version used: 1.1.0
Devices/Android versions reproduced on: all
I have two classes:
parent class - parent.kt
child class - child.kt
and standart dao.
But allways return data with null value - contactDetails. In generated code i will see next:
```
//...
final ContactDetails _tmpContactDetails;
if (! (_cursor.isNull(_cursorIndexOfCountryCode) && _cursor.isNull(_cursorIndexOfPhoneNumber))) {
final String _tmpCountryCode;
_tmpCountryCode = _cursor.getString(_cursorIndexOfCountryCode);
final String _tmpPhoneNumber;
_tmpPhoneNumber = _cursor.getString(_cursorIndexOfPhoneNumber);
_tmpContactDetails = new ContactDetails(_tmpCountryCode,_tmpPhoneNumber);
} else {
_tmpContactDetails = null;
}
_item = new ShareAccount(_tmpShareId,_tmpEntityId,_tmpUserId,_tmpOwnerId,null,_tmpCreatedAt,_tmpModifiedAt,_tmpAction);
/....
```
that is, regardless of the value of _tmpContactDetails, it will eventually be set to null.