Wednesday, August 26, 2015

4.3 Features (1) – Partial sync

I was surprised that some of you have so many bookmarks, notes, highlights or labels! I saw some with more than 20000 items. Seeing that the data are so many, it made us happy because it means that the app is used so frequently.

When we tried to create the syncing feature, we didn't expect that users create so much data on the Quick Bible app. Every time a sync is performed, all unsynced data is sent from the device to the server. The data transferred becomes so large, reaching 1 to 3 MB. But the worst thing is, after the server receives the data, since there are so many items, the server times out before all data is stored, or the database on the server reports error because there are too many things written in a single transaction.

So we tried to overcome this by using another approach from the client side. Instead of sending all unsynced data, it sends them in chunks. Each time a sync is performed, the device only sends maximum of 100 new markers or labels.

So, if you already have so many data on your device, and you just signed up for Sync, you will see on the Sync settings that the revision number goes up by 100 at a time. Hopefully this makes sync better. Please let us know if it still fails.


Ternyata ada beberapa orang yang pembatas buku, catatan, sorotan atau labelnya banyak sekali! Saya pernah melihat ada yang memiliki hingga 20000 lebih. Kami senang melihat banyaknya data itu, karena berarti aplikasi Alkitab digunakan begitu sering.

Ketika kami membuat fitur sync, kami tidak menyangka ada pengguna yang membuat sebegitu banyak data di dalam aplikasi Alkitab. Setiap kali sync berjalan, semua data yang belum disync dikirim dari perangkat ke server. Jumlah data yang ditransfer menjadi sangat besar, mencapai 1–3 MB. Hal yang terburuk adalah ketika server menerima data yang banyak itu, server tidak dapat memprosesnya dalam waktu yang ditetapkan (1 menit) atau database di server menolak menyimpan data karena ada terlalu banyak operasi tulis dalam satu transaksi.

Maka kami berusaha mengatasi ini dengan cara lain dari sisi klien. Daripada mengirim semua data yang belum disync sekaligus, klien mengirim sebagian-sebagian saja, maksimum 100 marka atau label baru.

Jadi, kalau data dalam perangkat Anda sudah banyak sekali, dan Anda baru saja memakai fitur Sync, anda akan melihat nomor revisi pada layar Pengaturan Sync menaik 100 demi 100. Semoga hal ini membuat sync berjalan lebih baik. Kabarkan pada kami jika belum berhasil baik.

2 comments:

  1. please just let us save to the SD card.
    I have thousands of markers and need to move to another phone.
    At least I know I can hit the button a hundred times and transfer it.
    But saving offline would be better at least for me.
    Thanks I know it is not easy. (C#, JAva)

    ReplyDelete
  2. its not transferring the marker names from the old android phone to the new android phone.

    But it did go from new to old since I tried that too.

    ReplyDelete