If we have a custom sync rule joining the task table, all the task columns are set NULL (in mobile DB) if not specified in the attributes to extract.
Below if the Initial query for the table.
<hierarchy_select>
<primary_table>c_task_journal</primary_table>
<attrs>
<attr>c_task_journal.*</attr>
</attrs>
<from>
<table>c_task_journal</table>
<table>task</table>
</from>
<where>
<data_constraint>
<constraint>
<left_operand>task.person_id</left_operand>
<operator>eq</operator>
<right_operand>{PERSON_ID}</right_operand>
</constraint>
</data_constraint>
<join_constraint>
<constraint>
<left_operand>c_task_journal.task_id</left_operand>
<operator>equi</operator>
<right_operand>task.task_id</right_operand>
</constraint>
</join_constraint>
</where>
</hierarchy_select>
And if we don't add <attr>task.*</attr> , the task table values are overridden to NULL..
Is this an expected behaviour?